log4net中RemotingAppender模式下http日志传输方式

Man_Flying 2014-07-28 09:43:20
关于log4net的介绍很多,但是具体的RemotingAppender资料相对较少,求解RemotingAppender下http(不是tcp)实现远程日志传输的实例代码,客户端和服务端该如何处理或配置?谢谢!
...全文
524 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
z_lanjin 2014-09-04
  • 打赏
  • 举报
回复
引用 1 楼 CGabriel 的回复:
客户端很简单,用这一段就可以了。

<appender name="RemotingAppender" type="log4net.Appender.RemotingAppender" >
    <sink value="tcp://localhost:8085/LoggingSink" />
    <lossy value="true" />
    <bufferSize value="200" />
    <onlyFixPartialEventData value="true" />
    <evaluator type="log4net.Core.LevelEvaluator">
        <threshold value="ERROR"/>
    </evaluator>
</appender>
问题是服务端 “tcp://localhost:8085/LoggingSink” 貌似要自己实现。
请问你知道通过UDP将日志传输到指定服务器的指定数据库该怎么实现呀。呜呜!
Man_Flying 2014-07-29
  • 打赏
  • 举报
回复
引用 3 楼 CGabriel 的回复:
[quote=引用 2 楼 Man_Flying 的回复:] 客户端的非常实例非常多,关键是服务器端如何实现?而且你这是基于tcp的
根据我对 Log4Net 帮助文档的理解,就是它不关心你的 Sink 是怎么实现的。 它只会把数据按照指定的格式,通过 TCP 抛向 Sink。 至于 Sink 怎么接收,就不是Log4Net 的职责了。 所以 Sink 要自己写。 不过应该也不难,侦听一下 8085 端口就知道发过来的是什么了。 以上为均为个人理解 ,不知道是否正确。 实际上,要写到另外一台机上,共享个目录,赋予写权限就可以了,不用搞的这么麻烦。 [/quote] 如果不是在局域网中,文件共享这种方案无法成立吧,TCP已经实现,就是HTTP无法实现,这方面的实例没找到,官网上也没说明
Man_Flying 2014-07-28
  • 打赏
  • 举报
回复
引用 1 楼 CGabriel 的回复:
客户端很简单,用这一段就可以了。

<appender name="RemotingAppender" type="log4net.Appender.RemotingAppender" >
    <sink value="tcp://localhost:8085/LoggingSink" />
    <lossy value="true" />
    <bufferSize value="200" />
    <onlyFixPartialEventData value="true" />
    <evaluator type="log4net.Core.LevelEvaluator">
        <threshold value="ERROR"/>
    </evaluator>
</appender>
问题是服务端 “tcp://localhost:8085/LoggingSink” 貌似要自己实现。
客户端的非常实例非常多,关键是服务器端如何实现?而且你这是基于tcp的
CGabriel 2014-07-28
  • 打赏
  • 举报
回复
引用 2 楼 Man_Flying 的回复:
客户端的非常实例非常多,关键是服务器端如何实现?而且你这是基于tcp的
根据我对 Log4Net 帮助文档的理解,就是它不关心你的 Sink 是怎么实现的。 它只会把数据按照指定的格式,通过 TCP 抛向 Sink。 至于 Sink 怎么接收,就不是Log4Net 的职责了。 所以 Sink 要自己写。 不过应该也不难,侦听一下 8085 端口就知道发过来的是什么了。 以上为均为个人理解 ,不知道是否正确。 实际上,要写到另外一台机上,共享个目录,赋予写权限就可以了,不用搞的这么麻烦。
CGabriel 2014-07-28
  • 打赏
  • 举报
回复
客户端很简单,用这一段就可以了。

<appender name="RemotingAppender" type="log4net.Appender.RemotingAppender" >
    <sink value="tcp://localhost:8085/LoggingSink" />
    <lossy value="true" />
    <bufferSize value="200" />
    <onlyFixPartialEventData value="true" />
    <evaluator type="log4net.Core.LevelEvaluator">
        <threshold value="ERROR"/>
    </evaluator>
</appender>
问题是服务端 “tcp://localhost:8085/LoggingSink” 貌似要自己实现。

17,747

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧