我正在尝试使用第三方创建日志记录到我的SOAP Web服务:log4net。我的网络方法将被千位用户访问,因此我需要创建一种方法来同时记录从他们收到的所有消息。换句话说,我应该启用多进程来记录同一个文件。根据这个链接http://logging.apache.org/log4net/release/config-examples.html,log4net.Appender.FileAppender MinimalLock实现有问题,而log4net.Appender.RemotingAppender可以接收所有事件并将它们记录到一个单个日志文件,将其添加到我的web.config:
<appender name="RemotingAppender" type="log4net.Appender.RemotingAppender" >
<sink value="tcp://localhost:8085/LoggingSink" />
<lossy value="false" />
<bufferSize value="95" />
<onlyFixPartialEventData value="true" />
</appender>
但我有点困惑,因为这是我第一次使用log4net,所以我的问题是:什么是接收器?我在哪里可以查看结果?有关此功能如何工作的任何解释将不胜感激。
答案 0 :(得分:3)
找到这些:
接收器是实际将日志写入其目标的对象。 每个接收器应该只负责单个目标(例如文件, console,db)
以下示例显示如何配置RemotingAppender 将记录事件传递到指定的接收器(在此示例中为接收器) 是tcp:// localhost:8085 / LoggingSink)。在这个例子中,事件是 由于BufferSize,以95个事件的块传递。没有事件 被丢弃了。 OnlyFixPartialEventData选项允许appender 忽略某些可能非常慢的日志记录事件属性 生成(例如,呼叫位置信息)。
https://logging.apache.org/log4net/release/config-examples.html