如果配置收集多个目录的logstash
各位大虾好!
小虾此前配置了一个elk,在logstash的服务器上是这么写conf的:
$ cat /usr/local/logstash/config/conf.d/logstash.conf
#在输入部分,配置Logstash通信端口以及添加SSL证书,从而进行安全通信。
input {
beats {
port => 5044
ssl => true
ssl_certificate => "/etc/pki/tls/certs/logstash-forwarder.crt"
ssl_key => "/etc/pki/tls/private/logstash-forwarder.key"
}
}
#在过滤器部分,我们将使用Grok来解析这些日志,然后将其发送到Elasticsearch。以下grok过滤器将查找“syslog”标记的日志,并尝试解析它们,以生成结构化索引。
filter {
if [type] == "syslog" {
grok {
match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}" }
add_field => [ "received_at", "%{@timestamp}" ]
add_field => [ "received_from", "%{host}" ]
}
syslog_pri { }
date {
match => [ "syslog_timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ]
}
}
}
#输出部分,我们将定义要存储的日志位置
output {
elasticsearch {
hosts => [ "10.162.80.192:9200" ] #这个地址是elasticsearch的内网地址
index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
user => elastic
password => changeme
}
stdout {
codec => rubydebug
}
}
现在我要再添加一个nginx日志(这次不用filebeat而是redis),是要重新写一个logstash么?然后启动两个logstash?
还是在这个logstash.conf里写两个input?
还是一个input下面再加一个redis{}?
我原有的日志跟nginx的过滤器语法是不一样的,那么过滤器那部分又如何更改?是多写一个过滤器么?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论