如何在C#中实现log4net,log4net需要什么?

aca*_*fgh 2 log4net

我只想知道,log4net在应用程序中的用途是什么,我将如何在c#中实现。

我已经完成了一些研究。

public static class Logger
{
    private static log4net.ILog Log { get; set; }

    static Logger()
    {
        Log = log4net.LogManager.GetLogger(typeof(Logger));
    }

    public static void Error(object msg)
    {
        Log.Error(msg);
    }

    public static void Error(object msg, Exception ex)
    {
        Log.Error(msg, ex);
    }

    public static void Error(Exception ex)
    {
        Log.Error(ex.Message, ex);
    }

    public static void Info(object msg)
    {
        Log.Info(msg);
    }
}
Run Code Online (Sandbox Code Playgroud)

}

上面只是一种在我想事先知道的单独文件中维护日志的方法。

Íls*_*zan 5

1.首先,如果尚未完成,则必须为log4net.dll添加参考。

2.然后您必须在声明类声明上方添加该语句。您可以在using语句下以及类声明之外将其正确放置:

[assembly: log4net.Config.XmlConfigurator(Watch = true)]
Run Code Online (Sandbox Code Playgroud)

3.您已经创建的类。

4.将该配置添加到web.config / app.config上的configSections标记中:

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
Run Code Online (Sandbox Code Playgroud)

这样您就可以添加标签来配置日志。

5.将其添加到web.config / app.config上的配置标签中:

<log4net>
    <root>
      <level value="ALL" />
      <appender-ref ref="RollingFileAppender"/>
    </root>
    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="./Log/log.log" />
      <appendToFile value="true" />
      <rollingStyle value="Composite" />
      <datePattern value="'.'yyyy_MM_dd" />
      <maxSizeRollBackups value="30" />
      <maximumFileSize value="100MB" />
      <staticLogFileName value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%date{yyyy/mm/dd HH:mm:ss,fff} %-5level %logger [%thread] %message %exception%newline"/>
      </layout>
    </appender>
</log4net>
Run Code Online (Sandbox Code Playgroud)

6.然后,您只需要在Logger类上调用方法。

如果您想了解更多信息,我建议您阅读该人的博客Log4Net教程和资源