1

我有一个正在添加/合并标签数组的变异。

if [context][tags] {
  mutate {
    merge => [ "tags", "context[tags]" ]
    remove_field => [ "context[tags]" ]
  }
}

问题是,如果[tags]以 null 开头,我最终会得到一个数组...... [ nil, 'something1', 'something2']

有没有办法[tags]在我合并之前测试 null ,如果是这样,那么替换而不是合并?

4

1 回答 1

1

阿尔坎萨有它。修改后的代码有效:

if [context][tags] {
    if [tags] {
        mutate {
            merge => [ "tags", "context[tags]" ]
            remove_field => [ "context[tags]" ]
        }
    } else {
        mutate {
            rename => [ "context[tags]", "tags" ]
            remove_field => [ "context[tags]" ]
        }
    }
}

事实证明,我不能replace用来切换context[tags]tags,但rename工作正常。

于 2014-09-09T15:13:12.597 回答