16.1 配置语法
1.处理输入的input
2.处理过滤的filter
3.处理输出的output
区域:
1.logstash 中,是用{}来定义曲剧的
2.区域内,我们可以定义插件
3.一个区域内可以定义多个插件
字段引用:
Logstash 还支持变量内插,在字符串里使用字段引用的方法是这样:
16.2 Logstash 插件
1.inputs 输入插件
2. codecs 解码
3.filtrs 过滤
4.outputs 输出
logstash input 插件
1.stsin 标准输入
2.File文件输入
3.TCP/UDP输入
4.Rsyslog 输入
Stdin 标准输入
input
file{
codec=> 默认是plain,可以通过这个参数设置编码方式
path=>比选项,array,需要处理的文件路径,绝对路径
start_position=> 默认是结束位置
[elk@db01 aa]$ cat stdin.conf
input {
stdin{
}
}
output {
stdout{
}
}
[elk@db01 aa]$ cat elasticsearch.conf
input {
file {
path=>["/elk/elasticsearch/logs/es_cluster.log"]
type=>"system"
start_position=>"beginning"
}
}
output {
stdout{}
}
例子,可读取多个日志,可使用*通配符:
[elk@db01 aa]$ cat log.conf
input {
file {
path=>["/var/log/messages","/var/log/syslog","/var/log/*.log"]
type=>"system"
start_position=>"beginning"
}
}
output {
stdout{}
}
tcp 传输:
-rw-rw-r-- 1 elk elk 92 Jan 18 01:55 tcp.conf
[elk@db01 aa]$ cat log.conf
input {
file {
path=>["/var/log/messages","/var/log/syslog","/var/log/*.log"]
type=>"system"
start_position=>"beginning"
}
}
output {
stdout{}
}
[elk@db01 aa]$ cat tcp.conf
input {
tcp {
port=>9999
mode=>"server"
ssl_enable=>false
}
}
output {
stdout{}
}
logger 往rsyslog 写日志工具