gpt4 book ai didi

environment-variables - 您可以在 fluentd 的配置文件中使用环境变量吗

转载 作者:行者123 更新时间:2023-12-04 05:49:20 27 4
gpt4 key购买 nike

我想知道如何在 Fluentd 配置中使用 env vars,我试过:

<match **>
type elasticsearch
logstash_format true
logstash_prefix $ENV_VAR
host ***
port ***
include_tag_key true
tag_key _key
</match>

但它不起作用,知道吗?

最佳答案

编辑:

这是一个更好的解决方案:

如果您将“--use-v1-config”选项传递给 Fluentd,则可以使用“#{ENV['env_var_name']”,如下所示:

<match foobar.**> # ENV["FOO"] is foobar
type elasticsearch
logstash_prefix "#{ENV['FOO']}"
logstash_format true
include_tag_key true
tag_key _key
host ****
port ****
</match>


旧的,笨拙的答案在这里。
  • 安装 fluent-plugin-record-reformerfluent-plugin-forest
  • 更新您的配置如下。


  • <match hello.world>
    type record_reformer
    tag ${ENV["FOO"]}.${tag_prefix[-1]} # adding the env variable as a tag prefix
    </match>

    <match foobar.**> # ENV["FOO"] is foobar
    type forest
    subtype elasticsearch
    <template>
    logstash_prefix ${tag_parts[0]}
    logstash_format true
    include_tag_key true
    tag_key _key
    host ****
    port ****
    </template>
    </match>


    特别是,不要使用 <match **>那里。这将捕获所有事件并导致难以调试的行为。

    关于environment-variables - 您可以在 fluentd 的配置文件中使用环境变量吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27233761/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com