【问题标题】:Logstash variables definition in config file配置文件中的 Logstash 变量定义
【发布时间】:2019-02-23 12:29:46
【问题描述】:

在我的 Logstash 配置文件中,我有许多 jdbc 输入,它们都使用相同的数据库和相同的凭据。每次我想更改例如连接字符串时,我都必须手动遍历所有 jdbc 输入。我可以以某种方式定义变量一次,然后在配置文件中使用它们吗?

CONNECTION_STRING_VARIABLE => "MY_CONNECTION_STRING"
jdbc {
      ...
      jdbc_connection_string => CONNECTION_STRING_VARIABLE
      ...
}

由于用户和密码字段,我不想使用环境变量,我想将变量存储在一个地方。

【问题讨论】:

    标签: elasticsearch logstash kibana elastic-stack


    【解决方案1】:

    对于密码,您可以使用属性 jdbc_password_filepath。

    我读到您不想设置环境变量。我在这里给出一个方法,这样,它不会在每个 shell 的环境中都可用,但只会为 logstash 加载。

    您可以创建一个脚本来导出logstash 的所有变量,并在logstash 服务或logstash 命令行中调用它。

    例如,创建一个文件——exportVariablesForLogstash.sh

    export jdbc_url="jdbc:mysql://example.local:3306/sampledb"
    export jdbc_username=mysqluser 
    

    在启动 logstash 服务或 logstash 命令行脚本时添加以下内容。开始时注意点。

    . exportVariablesForLogstash.sh 
    

    然后您可以使用此处记录的这些变量。 https://www.elastic.co/guide/en/logstash/current/environment-variables.html。我相信你已经知道这个了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-27
      • 1970-01-01
      • 2022-10-15
      • 2020-05-13
      • 2014-10-16
      • 1970-01-01
      • 2016-02-18
      相关资源
      最近更新 更多