代码之家  ›  专栏  ›  技术社区  ›  WebMonster

如何让log4net在本地机上使用链锯

  •  4
  • WebMonster  · 技术社区  · 15 年前

    我想使用log4net的UdpAppender和Apache链锯来记录来自我的ASP.NETweb应用程序。

    我的配置文件是:

    <log4net debug="true">
      <renderer renderingClass="Logging.HttpContextRenderer" renderedClass="System.Web.HttpContext" />
      <appender name="UdpAppender" type="log4net.Appender.UdpAppender">
        <localPort value="8080" />
        <remoteAddress value="127.0.0.1" />
        <remotePort value="8080" />
        <layout type="log4net.Layout.XmlLayoutSchemaLog4j">
          <locationInfo value="true" />
        </layout>
      </appender>
     <root>
        <priority value="ALL"/>
        <appender-ref ref="UdpAppender"/>
      </root>
    </log4net>
    
    2 回复  |  直到 11 年前
        1
  •  1
  •   Scott    15 年前
        2
  •  1
  •   Community Mohan Dere    9 年前

    我也有同样的问题,发现删除

    <localPort value="8080" />
    

    我使用log4net UdpAppender页面上的示例测试了appender: http://logging.apache.org/log4net/release/sdk/log4net.Appender.UdpAppender.html

    但我不得不改变路线

    IPEndPoint remoteEndPoint = new IPEndPoint(IPAddress.Any, 0);
    

    IPEndPoint remoteEndPoint = new IPEndPoint(IPAddress.Any, 8080);
    

    如果您使用这个,您可以使用log4net简单地将接收到的消息重写为一个滚动日志文件,我相信链锯可以读取它。

    这也可能奏效: http://devintelligence.com/log4netviewer/

    如果这不起作用,您可以调试log4net,或者使用本文中提到的内部记录器机制: Log4Net works on Dev machine, fails when deployed to shared host (using same db/connstring) 排除任何进一步的问题。

    推荐文章