community.general.logstash 回调 – 发送事件到 Logstash

注意

此回调插件是 community.general 集合(版本 10.1.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了这个集合。 它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install community.general。 您需要进一步的要求才能使用此回调插件,请参阅 要求 了解详细信息。

要在 playbook 中使用它,请指定:community.general.logstash

回调插件

此插件是一个 通知回调。 它将 playbook 运行的信息发送到其他应用程序、服务或系统。有关回调插件的更多信息,请参阅 回调插件

概要

要求

在执行此回调的本地控制器节点上需要以下要求。

  • 在配置中进行白名单

  • logstash (Python 库)

参数

参数

评论

format_version

字符串

在 community.general 2.0.0 中添加

日志格式。

选项

  • "v1" ← (默认)

  • "v2"

配置

端口

整数

Logstash 正在监听的端口。

默认: 5000

配置

  • INI 条目

    [callback_logstash]
    port = 5000
    

    在 community.general 1.0.0 中添加

  • 环境变量:LOGSTASH_PORT

pre_command

字符串

在 community.general 2.0.0 中添加

在运行之前执行命令,其结果将添加到 ansible_pre_command_output logstash 字段。

配置

服务器

字符串

Logstash 服务器的地址。

默认: "localhost"

配置

  • INI 条目

    [callback_logstash]
    server = localhost
    

    在 community.general 1.0.0 中添加

  • 环境变量:LOGSTASH_SERVER

类型

字符串

消息类型。

默认: "ansible"

配置

  • INI 条目

    [callback_logstash]
    type = ansible
    

    在 community.general 1.0.0 中添加

  • 环境变量:LOGSTASH_TYPE

示例

ansible.cfg: |
    # Enable Callback plugin
    [defaults]
        callback_whitelist = community.general.logstash

    [callback_logstash]
        server = logstash.example.com
        port = 5000
        pre_command = git rev-parse HEAD
        type = ansible

11-input-tcp.conf: |
    # Enable Logstash TCP Input
    input {
            tcp {
                port => 5000
                codec => json
                add_field => { "[@metadata][beat]" => "notify" }
                add_field => { "[@metadata][type]" => "ansible" }
            }
        }

作者

  • Yevhen Khmelenko (@ujenmr)

提示

每个条目类型的配置条目都具有从低到高的优先级顺序。例如,列表中较低的变量将覆盖较高的变量。