简体   繁体   English

log4net-跟踪日志记录配置问题

[英]log4net - Tracing problems with logging configuration

I have a .NET object that is COM visible and installed in a component services application to make it visible for some legacy code. 我有一个COM可见的.NET对象,并将其安装在组件服务应用程序中,以使其对某些旧代码可见。

The component services application is configured with an application root directory. 组件服务应用程序配置有应用程序根目录。

In the application root directory I have an application.config file. 在应用程序根目录中,我有一个application.config文件。

IN the application.config file I have 在application.config文件中

<log4net>
    <appender name="file" type="log4net.Appender.RollingFileAppender">
      <file value="C:\application\Logs\legacycomponents.log" />
      <appendToFile value="true" />
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%property{log4net:HostName} %date [%thread] %-5level %logger - %message%newline" />
      </layout>
      <rollingStyle value="Date" />
      <maxSizeRollBackups value="7" />
      <datePattern value="yyyyMMdd" />
    </appender>
    <root>
      <level value="DEBUG" />
      <appender-ref ref="file" />
    </root>
  </log4net>

My code includes: 我的代码包括:

    /// <summary>
    /// Gets the Log4Net Logging component
    /// </summary>
    protected ILog Logger
    {
        get
        {
            return LogManager.GetLogger(this.GetType());
        }
    }

I'm then logging very verbosely at various levels throughout my code. 然后,我在整个代码的各个级别上都非常详细地记录日志。

And it's not logging anything. 而且它没有记录任何内容。

I've enabled log4net internal debug: 我启用了log4net内部调试:

<configuration>
  <appSettings>
    <add key="log4net.Internal.Debug" value="true"/>
  </appSettings>
</configuration>

And monitored with debugview, which shows that log4net has done something: 并用debugview进行监视,它显示log4net已经完成了一些工作:

[3064] log4net: DefaultRepositorySelector: Creating repository for assembly [Legacy.Component, Version=6.1.0.0, Culture=neutral, PublicKeyToken=1916d4122ec2e2e8] 
[3064] log4net: DefaultRepositorySelector: Assembly [Legacy.Component=6.1.0.0, Culture=neutral, PublicKeyToken=1916d4122ec2e2e8] Loaded From [C:\product\ASP\bin\legacy.component.dll] 
[3064] log4net: DefaultRepositorySelector: Assembly [Legacy.Component, Version=6.1.0.0, Culture=neutral, PublicKeyToken=1916d4122ec2e2e8] does not have a RepositoryAttribute specified. 
[3064] log4net: DefaultRepositorySelector: Assembly [Legacy.Component=6.1.0.0, Culture=neutral, PublicKeyToken=1916d4122ec2e2e8] using repository [log4net-default-repository] and repository type [log4net.Repository.Hierarchy.Hierarchy] 
[3064] log4net: DefaultRepositorySelector: repository [log4net-default-repository] already exists, using repository type [log4net.Repository.Hierarchy.Hierarchy] 

Which is as clear as mud :) 就像泥一样清楚:)

So I can't see anything else to check to see why I'm not getting any logging out of my object. 因此,我看不到其他任何东西可以检查为什么我没有从对象中注销。

I can't find any better troubleshooting information anywhere currently. 我在任何地方都找不到更好的故障排除信息。

Any ideas? 有任何想法吗?

Thanks 谢谢

I suppose you did, but just to make sure. 我想你做了,只是为了确保。 Did you run this command too ? 您是否也运行了此命令?

 log4net.Config.XmlConfigurator.Configure();

This command load your log4net configuration, whithout it, it can't be done. 如果没有配置,此命令将加载您的log4net配置,无法完成。

Also, I enable the debug option like that : 另外,我启用像这样的debug选项:

<log4net debug="true">
    <appender name="rollingFile" type="log4net.Appender.RollingFileAppender">
        <param name="File" value="Logs\log.txt"/>
        <param name="AppendToFile" value="true"/>
        <param name="RollingStyle" value="Date"/>
        <param name="DatePattern" value="yyyy.MM.dd"/>
        <param name="StaticLogFileName" value="true"/>
        <layout type="log4net.Layout.PatternLayout">
            <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n"/>
        </layout>
    </appender>
    <root>
        <level value="INFO"/>
        <appender-ref ref="rollingFile"/>
    </root>
</log4net>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM