Logging 尾随多个日志fluentd
我正在尝试使用以下配置跟踪fluentd中的多个日志:Logging 尾随多个日志fluentd,logging,fluentd,Logging,Fluentd,我正在尝试使用以下配置跟踪fluentd中的多个日志: <source> type tail tag es.workers.worker1 format /^\[(?<timestamp>.*? .*?) (?<log_level>[INFO|ERROR][^\]]*)\] (?<message>.*)$/ path /var/log/upstart/worker1.log pos_file /var/lib/fluentd
<source>
type tail
tag es.workers.worker1
format /^\[(?<timestamp>.*? .*?) (?<log_level>[INFO|ERROR][^\]]*)\] (?<message>.*)$/
path /var/log/upstart/worker1.log
pos_file /var/lib/fluentd/pos/-var-log-upstart-worker1.log.pos
</source>
<source>
type tail
tag es.workers.worker2
format /^\[(?<timestamp>.*? .*?) (?<log_level>[INFO|ERROR][^\]]*)\] (?<message>.*)$/
path /var/log/upstart/worker2.log
pos_file /var/lib/fluentd/pos/-var-log-upstart-worker2.log.pos
</source>
<source>
type tail
tag es.workers.worker3
format /^\[(?<timestamp>.*? .*?) (?<log_level>[INFO|ERROR][^\]]*)\] (?<message>.*)$/
path /var/log/upstart/worker3.log
pos_file /var/lib/fluentd/pos/-var-log-upstart-worker3.log.pos
</source>
<source>
type tail
tag es.workers.worker4
format /^\[(?<timestamp>.*? .*?) (?<log_level>[INFO|ERROR][^\]]*)\] (?<message>.*)$/
path /var/log/upstart/worker4.log
pos_file /var/lib/fluentd/pos/-var-log-upstart-worker4.log.pos
</source>
型尾
标签es.workers.worker1
格式/^\[(?*?)(?[信息错误][^\]*)\](?*)$/
路径/var/log/upstart/worker1.log
pos_文件/var/lib/fluentd/pos/-var-log-upstart-worker1.log.pos
型尾
标签es.workers.worker2
格式/^\[(?*?)(?[信息错误][^\]*)\](?*)$/
路径/var/log/upstart/worker2.log
pos_文件/var/lib/fluentd/pos/-var-log-upstart-worker2.log.pos
型尾
标签es.workers.worker3
格式/^\[(?*?)(?[信息错误][^\]*)\](?*)$/
路径/var/log/upstart/worker3.log
pos_文件/var/lib/fluentd/pos/-var-log-upstart-worker3.log.pos
型尾
标签es.workers.worker4
格式/^\[(?*?)(?[信息错误][^\]*)\](?*)$/
路径/var/log/upstart/worker4.log
pos_文件/var/lib/fluentd/pos/-var-log-upstart-worker4.log.pos
这不管用。通常(但不总是),我只获取第一个文件的日志。有时它是一个不同的文件,但它总是只有一个。你知道发生了什么事吗?我在fluentd错误日志中没有发现任何有意义的错误 可以像这样跟踪多个文件(标记将基于文件名)
@型尾
@尾部容器日志中的id
path/var/lib/docker/containers/*/*-json.log
pos_文件/fluentd/log/containers.log.pos
时间格式“%Y-%m-%dT%H:%m:%S.%L%Z”
保持时间键为true
从你的头上读出来是真的
标记“docker.*”
格式json
还是像这样
<source>
@type tail
@id in_tail_fos_logs
@label @LOGS
path /www/web/log/*.log,/www/web2/log/*.log,/www/web3/log/*.log
exclude_path ["/www/web/log/logstash_*.log"]
pos_file /var/log/td-agent/logs.log.pos
time_format "%Y-%m-%dT%H:%M:%S.%L%Z"
read_from_head true
tag "rowlogs.*"
format none
</source>
@型尾
@在日志中的id
@标签@日志
path/www/web/log/*.log、/www/web2/log/*.log、/www/web3/log/*.log
排除路径[“/www/web/log/logstash.*.log”]
pos_文件/var/log/td-agent/logs.log.pos
时间格式“%Y-%m-%dT%H:%m:%S.%L%Z”
从你的头上读出来是真的
标记“行日志。*”
无格式
您是否尝试过将所有4个文件放在一个单尾配置中,以查看在这种情况下是否可行?我知道这意味着所有的消息都有相同的标签,但至少有一些东西可以工作。你能添加conf文件的其余部分吗?如果我们能看到比赛/筛选结果会有所帮助。我想知道你是如何解决问题的。?
<source>
@type tail
@id in_tail_fos_logs
@label @LOGS
path /www/web/log/*.log,/www/web2/log/*.log,/www/web3/log/*.log
exclude_path ["/www/web/log/logstash_*.log"]
pos_file /var/log/td-agent/logs.log.pos
time_format "%Y-%m-%dT%H:%M:%S.%L%Z"
read_from_head true
tag "rowlogs.*"
format none
</source>