如何在 ElasticSearch 索引记录时启用日志记录



我正在尝试测量使用 ELK 堆栈所涉及的延迟。我正在登录我的测试应用程序,我想了解它需要多长时间才能出现在 ElasticSearch 中。我知道这只是一个粗略的估计,并且非常特定于我的环境。

如何测量我的 app/logstash/elasticsearch 之间的延迟?

编辑:我正在遵循建议并启用了_timestamp但我在记录中看不到该字段。

{
 logaggr : {
    order : 0,
    template : "logaggr-*",
    settings : {},
    mappings : {
        logaggr : {
            date_detection : false,
            _timestamp : {
                enabled : true,
                store: true
            },
            properties : {
                level : {
                    type : "string"
                },
                details : {
                    type : "string"
                },
                logts : {
                    format : "yyyy-MM-dd HH:mm:ss,SSS",
                    type : "date"
                },
                classname : {
                    type : "string"
                },
                thread : {
                    type : "string"
                }                   
            }
        }
    },
    aliases : {}
 }
}

提前感谢!

有三个时间戳可以回答您的问题:

  1. 日志文件时间戳,例如应用程序写入信息的时间。 确保服务器的时钟正确。
  2. @timestamp,由 logstash 设置为接收日志的时间。
  3. _timestamp,弹性搜索可以将其设置为接收日志的时间。 必须在弹性搜索中启用此设置。

在这三者之间,您可以通过 ELK 跟踪日志的进度。

最新更新