前几天我写了几篇关于ELK日志收集,存储和分析的文章:
ELK系列~NLog.Targets.Fluentd到达如何通过tcp发到fluentd
ELK系列~Nxlog日志收集加转发(解决log4日志换行导致json转换失败问题)
ELK系列~log4-nxlog-Fluentd-elasticsearch写json数据需要注意的几点
今天主要说一个日志收集里的多输入端(收集多个网站的日志)的实现方法。
对于日志的收集与转发来说,nxlog可以说很不错,异步将本地日志上传到对象的服务端,而且支持的服务端也很多,在nxlog里这些服务端都叫“输出端”,在nxlog.conf里使用output表示,而我们的日志是输入端,用input表示,下面来讲一下如何实现多输入端的方法。
其实很简单,只要在nxlog.conf里配置一下就可以了,具体代码如下
<Input in1> Module im_file File "c:\dotnet\20*.log"
</Input>
<Input in2>
Module im_file
File "c:\dotnet\20*.log" </Input>
<Output out>
Module om_tcp
Host 192.168.200.214
Port 24224
Exec $raw_event =$raw_event + "\n";
</Output>
<Route 1>
Path in1,in2 => out
</Route>
上面的route节点,将in1和in2两个输入端指向了一个out输出端,咱们的输出端实现fluentd来实现的!
感谢各位阅读!
晚安!