fluentd - 当特定值可以用作键但不重新编码时

fluentd - When a specific value can be used as a key but not recoded

在下面的例子中, 我可以使用 $ ["kubernetes"]["aaa"]["bbb"] 作为键值,

但它不能用作标记值。 $ {recode ["kubernetes"]["aaa"]["bbb"]} 也不起作用。

如何将其用作标签??

为什么如此不同?

  <match **>
    @type rewrite_tag_filter
    <rule>
      key $["kubernetes"]["aaa"]["bbb"]
      pattern ".*"
      tag ${recode["kubernetes"]["aaa"]["bbb"]}
    </rule>
   </match>

如果您将正则表达式模式放在分组括号内 (),则整个匹配文本可用于第一组结果。

示例 -
表达式 - (.*)
匹配文本 - 一些文本
第 1 组 - 一些文本

所以使用上面的内容,下面将是您更新的 fluentd conf。

<match **>
 @type rewrite_tag_filter
 <rule>
  key $["kubernetes"]["aaa"]["bbb"]
  pattern "(.*)"
  tag 
 </rule>
</match>