linux下logstash8.7.1的config文件的详细配置
时间: 2024-02-09 21:13:26 浏览: 163
logstash的配置文件
5星 · 资源好评率100%
Logstash 8.7.1的配置文件主要包含三个部分:input、filter和output。下面详细介绍每个部分的配置。
### Input
Input部分指定Logstash要从哪里获取数据。Logstash支持多种输入插件,如file、stdin、beats、tcp、udp等。以下是一个file插件的示例:
```
input {
file {
path => "/var/log/messages"
start_position => "beginning"
sincedb_path => "/dev/null"
}
}
```
- path:指定要读取的文件路径。
- start_position:指定读取文件时的起始位置,包括beginning(从文件开头开始读取)、end(从文件结尾开始读取)和current(从上次读取位置继续读取)。
- sincedb_path:指定sincedb文件的路径,用于记录上次读取的位置。在这个示例中,我们将sincedb文件的路径指定为/dev/null,表示不记录上次读取的位置,每次都从文件开头开始读取。
### Filter
Filter部分是Logstash最重要的部分,用于对输入的数据进行处理、解析、转换和过滤。Logstash支持多种过滤插件,如grok、mutate、date、json、xml、csv等。以下是一个使用grok插件的示例:
```
filter {
grok {
match => { "message" => "%{COMBINEDAPACHELOG}" }
}
}
```
这个示例使用grok插件对Apache日志进行解析,其中COMBINEDAPACHELOG是一个预定义的grok模式,包含了Apache日志的格式。如果想自定义grok模式,可以在配置文件中使用patterns_dir指定自定义模式文件的路径。
### Output
Output部分指定Logstash要将处理后的数据输出到哪里。Logstash支持多种输出插件,如elasticsearch、stdout、file、s3等。以下是一个输出到Elasticsearch的示例:
```
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "logs-%{+YYYY.MM.dd}"
}
}
```
这个示例将处理后的数据输出到本地的Elasticsearch节点,每天生成一个新的索引。可以根据实际需求修改hosts和index参数。
以上是Logstash配置文件的三个部分的详细配置,根据实际需求可以添加、删除或修改插件和参数。
阅读全文