diff --git a/src/NLog.Extensions.Logging/Extensions/ConfigureExtensions.cs b/src/NLog.Extensions.Logging/Extensions/ConfigureExtensions.cs index 884a7d7c..61fdbebf 100644 --- a/src/NLog.Extensions.Logging/Extensions/ConfigureExtensions.cs +++ b/src/NLog.Extensions.Logging/Extensions/ConfigureExtensions.cs @@ -1,5 +1,4 @@ using System; -using System.IO; using System.Reflection; using Microsoft.Extensions.Logging; using NLog.Common; @@ -12,7 +11,6 @@ namespace NLog.Extensions.Logging /// public static class ConfigureExtensions { - /// /// Enable NLog as logging provider in .NET Core. /// @@ -32,7 +30,6 @@ public static ILoggerFactory AddNLog(this ILoggerFactory factory) public static ILoggerFactory AddNLog(this ILoggerFactory factory, NLogProviderOptions options) { ConfigureHiddenAssemblies(); - using (var provider = new NLogLoggerProvider(options)) { factory.AddProvider(provider); @@ -59,8 +56,6 @@ public static ILoggingBuilder AddNLog(this ILoggingBuilder factory) /// ILoggerFactory for chaining public static ILoggingBuilder AddNLog(this ILoggingBuilder factory, NLogProviderOptions options) { - ConfigureHiddenAssemblies(); - using (var provider = new NLogLoggerProvider(options)) { factory.AddProvider(provider); @@ -74,12 +69,8 @@ public static ILoggingBuilder AddNLog(this ILoggingBuilder factory, NLogProvider /// private static void ConfigureHiddenAssemblies() { - - InternalLogger.Trace("Hide assemblies for callsite"); - #if NETCORE1_0 - SafeAddHiddenAssembly("Microsoft.Logging"); -#endif + InternalLogger.Trace("Hide assemblies for callsite"); SafeAddHiddenAssembly("Microsoft.Extensions.Logging"); SafeAddHiddenAssembly("Microsoft.Extensions.Logging.Abstractions"); @@ -87,9 +78,10 @@ private static void ConfigureHiddenAssemblies() //try the Filter ext, this one is not mandatory so could fail SafeAddHiddenAssembly("Microsoft.Extensions.Logging.Filter", false); - +#endif } +#if NETCORE1_0 private static void SafeAddHiddenAssembly(string assemblyName, bool logOnException = true) { try @@ -106,6 +98,7 @@ private static void SafeAddHiddenAssembly(string assemblyName, bool logOnExcepti } } } +#endif /// /// Apply NLog configuration from XML config. @@ -115,14 +108,8 @@ private static void SafeAddHiddenAssembly(string assemblyName, bool logOnExcepti /// Current configuration for chaining. public static LoggingConfiguration ConfigureNLog(this ILoggerFactory loggerFactory, string configFileRelativePath) { -#if NETCORE1_0 && !NET451 - var rootPath = System.AppContext.BaseDirectory; -#else - var rootPath = AppDomain.CurrentDomain.BaseDirectory; -#endif - - var fileName = Path.Combine(rootPath, configFileRelativePath); - return ConfigureNLog(fileName); + ConfigureHiddenAssemblies(); + return LogManager.LoadConfiguration(configFileRelativePath).Configuration; } /// @@ -133,19 +120,7 @@ public static LoggingConfiguration ConfigureNLog(this ILoggerFactory loggerFacto /// Current configuration for chaining. public static LoggingConfiguration ConfigureNLog(this ILoggerFactory loggerFactory, LoggingConfiguration config) { - LogManager.Configuration = config; - - return config; - } - - /// - /// Apply NLog configuration from XML config. - /// - /// absolute path NLog configuration file. - /// Current configuration for chaining. - private static LoggingConfiguration ConfigureNLog(string fileName) - { - var config = new XmlLoggingConfiguration(fileName, true); + ConfigureHiddenAssemblies(); LogManager.Configuration = config; return config; }