0

我发现以下项目 ( https://github.com/antonsamarsky/log4net.Raven ) 为 RavenDb 启用了 log4net 附加程序。

我已经导入了 nuget 包并像这样配置了我的 App.config 文件:

<configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>

<connectionStrings>
    <add name="RavenLogs" connectionString="Url = http://localhost:8080; DefaultDatabase=MyLog"/>
</connectionStrings>

<log4net>
    <appender name="RavenAppender" type="log4net.Raven.RavenAppender, log4net.Raven">
          <filter type="log4net.Filter.LevelRangeFilter">
            <levelMin value="INFO" />
            <levelMax value="FATAL" />
          </filter>
          <connectionString value="RavenLogs"/>
          <maxNumberOfRequestsPerSession value="100"/>
          <bufferSize value="50" />
          <evaluator type="log4net.Core.LevelEvaluator">
            <threshold value="ERROR" />
          </evaluator>
        </appender>
</log4net>

<root>
  <level value="INFO" />
  <appender-ref ref="RavenAppender" />
</root>

除了在 GitGub 上导入 nuget 和配置之外,没有任何文档。当我运行我的程序时,我没有收到任何错误,但我在 RavenDb 服务器上也看不到任何内容。

我什至尝试在 RavenDb 上自己创建 MyLog 数据库,以防附加程序不会自动创建它 - 仍然没有。

任何人都知道如何使用这个附加程序?

4

1 回答 1

1

您的配置中有一个LevelEvaluator,仅当日志事件的级别等于或高于配置的级别时才会触发。程序中甚至会出现错误吗?

在设置 log4net 时,FileAppender在您的工作配置旁边设置一个简单的,这样您就可以轻松地查看您应该/希望在真实日志中看到哪些数据。就您所知,您忘记了配置 log4net 框架,这FileAppender将作为一种简单的方法来查看是否存在问题。从 RavenDB 附加程序中删除过滤器和评估器,并在检查一切是否正常后将它们添加回来

Jeroen 关于设置内部调试器的评论是另一种方法,但对于配置问题可能不是必需的。

于 2014-10-21T12:19:53.273 回答