代码之家  ›  专栏  ›  技术社区  ›  Saif Khan

log4net缺少什么-没有创建日志文件

  •  3
  • Saif Khan  · 技术社区  · 14 年前

    我试图在vb.net应用程序中使用log4net,原因不明,它没有创建日志文件。

    这是我的app.config

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
           <configSections>
        <section name="log4net"
        type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
      </configSections>
      <log4net>
        <appender name="FileAppender" type="log4net.Appender.FileAppender">
          <file value="c:\log-file.txt" />
          <appendToFile value="true" />
          <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
          </layout>
        </appender>
        <root>
          <level value="ALL" />
          <appender-ref ref="FileAppender" />
        </root>
    
      </log4net>
    </configuration>
    

    这是应用程序代码

    Imports log4net
    Public Class Form1
        Dim log As ILog
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            log.Error("test")
        End Sub
    
        Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            log4net.Config.XmlConfigurator.Configure()
            log = log4net.LogManager.GetLogger("TestThings")
        End Sub
    End Class
    

    “testthings”是vs项目的名称。我错过了什么?

    编辑~我以管理员身份登录,并使用最新的log4net.dll

    2 回复  |  直到 10 年前
        1
  •  3
  •   zs2020    14 年前

    试试这个:

    改变

    < appender name="FileAppender" type="log4net.Appender.FileAppender" >
    

    < appender name="FileAppender" type="log4net.Appender.FileAppender, log4net" >
    

    也将log4net添加到

    < layout type="log4net.Layout.PatternLayout" >
    
        2
  •  0
  •   jaxxbo    10 年前

    在滚动文件追加器的配置中尝试此更改

    <log4net>
        <appender name="FileAppender" type="log4net.Appender.RollingFileAppender">
          <file value="log\web.app.log" />
          <filter type="log4net.Filter.LevelRangeFilter">
            <levelMin value="DEBUG" />
            <acceptOnMatch value="true" />
          </filter>
          <threshold value="DEBUG" />
          <appendToFile value="true" />
          <rollingStyle value="Date" />
          <datePattern value=".yyyyMMdd.lo\g" />
          <maximumFileSize value="5MB" />
          <maxSizeRollBackups value="-1" />
          <countDirection value="1" />
          <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
          </layout>
        </appender>
        <root>
          <level value="ALL" />
          <appender-ref ref="FileAppender" />
        </root>
        <logger name="webapplogger">
          <level value="debug" />
          <appender-ref ref="FileAppender" />
        </logger>
      </log4net>
    

    在代码(表单加载、网页加载或ioc)初始化中,调用

    log4net.Config.XmlConfigurator.Configure()
            log = log4net.LogManager.GetLogger("webapplogger")