1234567891011121314151617181920212223242526272829303132333435363738 |
- using MediaBrowser.Common.Kernel;
- using System;
- using System.ComponentModel.Composition;
- using System.Diagnostics;
- using System.IO;
- namespace MediaBrowser.Common.Logging
- {
- [Export(typeof(BaseLogger))]
- public class TraceFileLogger : BaseLogger
- {
- private TraceListener Listener { get; set; }
- public override void Initialize(IKernel kernel)
- {
- DateTime now = DateTime.Now;
- string logFilePath = Path.Combine(kernel.ApplicationPaths.LogDirectoryPath, "log-" + now.ToString("dMyyyy") + "-" + now.Ticks + ".log");
- Listener = new TextWriterTraceListener(logFilePath);
- Trace.Listeners.Add(Listener);
- Trace.AutoFlush = true;
- }
- public override void Dispose()
- {
- base.Dispose();
- Trace.Listeners.Remove(Listener);
- Listener.Dispose();
- }
- public override void LogEntry(LogRow row)
- {
- Trace.WriteLine(row.ToString());
- }
- }
- }
|