Exec 输出插件
编辑Exec 输出插件
编辑- 插件版本:v3.1.4
- 发布日期:2018-04-06
- 变更日志
对于其他版本,请参阅 版本化插件文档。
获取帮助
编辑有关插件的问题,请在 Discuss 论坛中发起主题。对于错误或功能请求,请在 Github 中打开一个问题。有关 Elastic 支持的插件列表,请参阅 Elastic 支持矩阵。
描述
编辑exec 输出将为接收到的每个事件运行一个命令。将使用 Ruby 的 system()
函数,即命令字符串将传递给 shell。您可以使用 %{name}
和其他动态字符串在命令中传递事件中的选定字段到子进程。示例
output { if [type] == "abuse" { exec { command => "iptables -A INPUT -s %{clientip} -j DROP" } } }
如果您希望它是非阻塞的,则应使用 &
或 dtach
或其他此类技术。正在运行的命令没有超时,因此行为异常的命令可能会无限期地阻塞 Logstash 管道。
对 %{name}
字段占位符要格外小心。字段的内容将逐字包含在内,没有任何清理,即字段值中的任何 shell 元字符将直接传递给 shell。
Exec 输出配置选项
编辑此插件支持以下配置选项以及稍后描述的 通用选项。
另请参阅 通用选项,以获取所有输出插件支持的选项列表。
通用选项
编辑这些配置选项受所有输出插件支持