我们在logstash上不断收到错误,其中包含以下条目:"Could not dynamically add mapping for field [app.kubernetes.io/created-by]. Existing mapping for [kubernetes.labels.app] must be of type object but found [keyword]."}}}}
有没有人可以帮助正确解析字段“kubernetes.labels.app.kubernetes.io/created-by”。该条目被视为平面字段,我们应该将其转换为分隔格式,或者将其重命名为“kubernetes.labels.app_created-by”。
我们确实在现有的摄取管道中尝试了重命名处理器,如下所示:
{
"rename": {
"field": "kubernetes.labels.app.kubernetes.io/created-by",
"target_field": "kubernetes.labels.app_created_by"
}
}
并且还使用logstash处的mutate过滤器,如下所示:
mutate
{
rename => { "[kubernetes][labels][app.kubernetes.io/created-by]" => "[kubernetes][labels][app_created-by]"
}
这两种方法也不能帮助我们解决这个问题。
1条答案
按热度按时间j9per5c41#
Tldr;
由于您启用了动态Map,因此elastic首先收到的文档看起来像这样:
这导致弹性自动解析假设
kubernetes.labels.app
是一个关键字。现在,它正在接收具有以下布局的新文档:
而Map对此并不满意。
溶液
我需要一份文件的样本来解释更多。