elasticsearch 基于';临时id';,elasticsearch,logstash,elasticsearch,Logstash" /> elasticsearch 基于';临时id';,elasticsearch,logstash,elasticsearch,Logstash" />

elasticsearch 基于';临时id';

elasticsearch 基于';临时id';,elasticsearch,logstash,elasticsearch,Logstash,我不确定这种聚合是否最好在通过elasticsearch索引后进行,或者logstash是否是一个进行聚合的好地方 我们正在记录有关针对服务器运行的命令的信息。关于单个命令的每一组度量都记录为单个日志事件,每个命令都有多个“度量集”。每个度量都有自己的文档类型(目前至少有)。因此,对于服务器上运行的一个命令,我们将在多个文档中有多个事件 每个事件都有一个“cmdno”字段,该字段是为我们正在记录的命令提供的临时id。命令完成并记录所有事件后,“cmdno”可用于其他命令 是否可以使用logsta

我不确定这种聚合是否最好在通过elasticsearch索引后进行,或者logstash是否是一个进行聚合的好地方

我们正在记录有关针对服务器运行的命令的信息。关于单个命令的每一组度量都记录为单个日志事件,每个命令都有多个“度量集”。每个度量都有自己的文档类型(目前至少有)。因此,对于服务器上运行的一个命令,我们将在多个文档中有多个事件

每个事件都有一个“cmdno”字段,该字段是为我们正在记录的命令提供的临时id。命令完成并记录所有事件后,“cmdno”可用于其他命令

是否可以使用logstash“aggregate”插件使用“cmdno”将单个命令的事件链接在一起?(或任何插件)

与单个命令相关的所有事件都将具有相同的时间戳+cmdno。我想在事件中添加一个UUID作为该命令的永久唯一id,这样一个查询将为我们提供该命令的所有事件

当时的思路是:

if [cmdno] {
    aggregate {
        task_id => "%{cmdno}"
        code => "map['cmdid'] ||= <some uuid generator>; event['cmdid'] == map['cmdid'] ? event['@timestamp'] == map['<stored timestamp for previous event from the same command>'] : continue"
    }
}
if[cmdno]{
聚合{
任务id=>“%{cmdno}”
代码=>“映射['cmdid']| |=;事件['cmdid']==映射['cmdid']?事件['@timestamp']==映射['']:继续”
}
}
刚开始学习麋鹿堆栈,还不完全确定logstash提供给我的编程结构

我不知道是否有更好的方法来描述这些事件,这似乎最适合我们的需要,如果有更多的麋鹿方法,请告诉我,它们确实需要作为不同类型的单独文档保留

非常感谢您的帮助,如果我遗漏了什么,请告诉我

干杯

布雷特