Exec input插件可以定时的执行一个命令,然后采集命令输出的结果,通过exec插件,我们可以轻松的采集linux系统状态,例如:定时的采集linux服务的内存使用情况。
例子:
input {
# 通过exec插件,定时的通过命令
exec {
# 需要执行的命令
command => "free -m"
# 30秒执行一次
interval => 30
}
}
output {
elasticsearch {
hosts => ["http://localhost:9200"]
index => "tizi365"
}
}
说明:
30秒执行一次free -m命令,命令输出的结果,会被Logstash同步到ES中。
exec Input插件参数
参数名 | 类型 | 默认值 | 说明 |
command | string | 无 | 设置需要执行的命令 |
interval | number | 无 | 单位是秒,多长时间执行一次命令 |
schedule | string | 无 | 使用类型linux crontab的语法,设置定时任务,例如:*/10 * * * * 代表每10分钟跑一次,interval和schedule参数二选一即可 |