2010-10-24 09:46:58 +02:00
|
|
|
|
using System.Diagnostics;
|
|
|
|
|
using System.IO;
|
2011-04-10 04:44:01 +02:00
|
|
|
|
using Ninject;
|
2010-10-24 09:46:58 +02:00
|
|
|
|
using NLog;
|
|
|
|
|
using NLog.Config;
|
|
|
|
|
|
|
|
|
|
namespace NzbDrone.Core.Instrumentation
|
|
|
|
|
{
|
|
|
|
|
public static class LogConfiguration
|
|
|
|
|
{
|
|
|
|
|
public static void Setup()
|
|
|
|
|
{
|
|
|
|
|
if (Debugger.IsAttached)
|
|
|
|
|
{
|
|
|
|
|
LogManager.ThrowExceptions = true;
|
|
|
|
|
}
|
|
|
|
|
|
2011-04-10 04:44:01 +02:00
|
|
|
|
LogManager.Configuration = new XmlLoggingConfiguration(Path.Combine(CentralDispatch.AppPath, "log.config"),
|
|
|
|
|
false);
|
2011-06-13 05:45:22 +02:00
|
|
|
|
|
|
|
|
|
LogManager.ConfigurationReloaded += ((s, e) => StartDbLogging());
|
2010-10-24 09:46:58 +02:00
|
|
|
|
}
|
|
|
|
|
|
2011-06-13 05:45:22 +02:00
|
|
|
|
public static void StartDbLogging()
|
2010-10-24 09:46:58 +02:00
|
|
|
|
{
|
2011-06-13 05:45:22 +02:00
|
|
|
|
|
2011-07-04 07:03:05 +02:00
|
|
|
|
#if RELEASE
|
2010-10-24 09:46:58 +02:00
|
|
|
|
var exTarget = new ExceptioneerTarget();
|
|
|
|
|
LogManager.Configuration.AddTarget("Exceptioneer", exTarget);
|
|
|
|
|
LogManager.Configuration.LoggingRules.Add(new LoggingRule("*", NLog.LogLevel.Error, exTarget));
|
2010-10-30 04:46:32 +02:00
|
|
|
|
#endif
|
2011-06-24 06:05:31 +02:00
|
|
|
|
var sonicTarget = CentralDispatch.NinjectKernel.Get<DatabaseTarget>();
|
2010-10-24 09:46:58 +02:00
|
|
|
|
LogManager.Configuration.AddTarget("DbLogger", sonicTarget);
|
2011-06-22 07:43:45 +02:00
|
|
|
|
LogManager.Configuration.LoggingRules.Add(new LoggingRule("*", LogLevel.Debug, sonicTarget));
|
2010-10-24 09:46:58 +02:00
|
|
|
|
|
|
|
|
|
LogManager.Configuration.Reload();
|
|
|
|
|
}
|
|
|
|
|
}
|
2011-04-10 04:44:01 +02:00
|
|
|
|
}
|