如何找到流利的源主机名?

时间:2015-04-09 15:38:43

标签: fluentd

我正在寻找一种方法将source_hostname发送到流畅的目标服务器。

我在logstash上,但我们有代理/服务器端,我们有变量来获取logstash服务器配置文件中的源主机名。

我用类似的方式搜索FluentD,但我发现唯一的东西是在源代码“#{Socket.gethostname}”中设置主机名。但是这样我就无法在destinatation日志文件的路径中使用主机名。 基于来源:http://docs.fluentd.org/articles/config-file#embedded-ruby-code

在服务器端,这就是我想做的原因:

<source>
    type forward
    port 24224
    bind 192.168.245.100
</source>
<match apache.access.*>
    type file
    path /var/log/td-agent/apache2/#{hostname}/access
</match>
<match apache.error.*>
    type file
    path /var/log/td-agent/apache2/#{hostname}/error
</match>

有人可以帮助我这样的事吗?

提前感谢您的时间。

2 个答案:

答案 0 :(得分:0)

您可以使用“引用字符串”中的#{}来评估Ruby代码。

所以你可以改成它,

path /var/log/td-agent/apache2/"#{hostname}"/access

参阅文档 - http://docs.fluentd.org/articles/config-file#embedded-ruby-code

答案 1 :(得分:0)

您可以尝试使用记录重组器插件here或林插件here