有很多使用Microsoft.Extensions.Logging登录ASP.NET dotnet核心应用程序的示例代码。
但是如何在不是ASP.NET应用程序- dotnet核心库或控制台应用程序中使用Microsoft.Extensions.Logging将日志写入文件?
发布于 2017-09-08 14:26:09
我使用log4net。它易于配置和使用,并允许您区分日志记录:调试、错误等。
您可以使用Nuget安装它。
web.config/app.config中的配置如下所示:
<log4net>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" />
</layout>
</appender>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="C:\MyApp\log.txt" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] %method %stacktrace - %message%newline" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="ConsoleAppender" />
<appender-ref ref="FileAppender" />
</root>在这里,日志保存到: C:\MyApp\log.txt
然后将其放入您的Application_Start方法中:
log4net.Config.XmlConfigurator.Configure();然后在你的代码中这样做:
using log4net;
using log4net.Config;
public class MyClass
{
private static readonly ILog log = LogManager.GetLogger(typeof(MyClass));
public void MyMethod()
{
try
{
//Do something e.g. connect to database
}
catch (Exception e)
{
log.Info(e.ToString());
}
}
}请在此处查看更多信息:https://logging.apache.org/log4net/release/manual/configuration.html
https://stackoverflow.com/questions/46109891
复制相似问题