elasticsearch 我可以从日志存储中删除消息字段吗?
我有一个基本的Logstash->Elasticsearch设置,在Logstash过滤器完成其工作后,“message”字段不是必需的-将此原始消息字段存储到Elasticsearch只会向存储添加不必要的数据elasticsearch 我可以从日志存储中删除消息字段吗?,elasticsearch,logstash,elasticsearch,Logstash,我有一个基本的Logstash->Elasticsearch设置,在Logstash过滤器完成其工作后,“message”字段不是必需的-将此原始消息字段存储到Elasticsearch只会向存储添加不必要的数据 我可以安全地删除此字段吗?它会给ES带来任何麻烦吗?欢迎提供建议或阅读,谢谢大家。不,这不会给专家们带来任何麻烦。如果消息字段是多余或未使用的,则可以删除该字段 您可以将其添加到过滤器的末尾 mutate { remove_field => [ "message" ]
我可以安全地删除此字段吗?它会给ES带来任何麻烦吗?欢迎提供建议或阅读,谢谢大家。不,这不会给专家们带来任何麻烦。如果
消息
字段是多余或未使用的,则可以删除该字段
您可以将其添加到过滤器的末尾
mutate
{
remove_field => [ "message" ]
}
您也可以在
json
过滤器中执行此操作
filter {
json {
source => "message"
remove_field => ["message"]
}
}
我本想在Ben Lim的回答中添加以下内容作为注释,但我不知道如何在注释中添加代码块,甚至不知道这是否可行 如果可以使用不创建
消息
字段的输入和编解码器组合,则无需删除它
例如,以下输入和编解码器组合(TCP上的JSON行)不会创建消息
字段:
input {
tcp {
port => 5044
codec => json_lines
}
}
output {
elasticsearch {
hosts => ["localhost"]
document_type => "mytype"
index => "myindex"
}
}
ProTip:大多数过滤器(如grok)也允许删除字段选项,并且只有在过滤器没有遇到错误时才会删除字段。这比使用额外的变异过滤器更安全、更容易。这一个正在破坏我的卡夫卡输出,只有删除字段部分,不确定原因:(