LogStash:如何在保持相同时间格式的同时复制@timestamp字段?

2023-11-24

我想创建一个副本@timestamp字段,使其使用与以下内容相同的格式@timestamp.

我尝试过以下方法:

mutate
{
    add_field => ["read_time", "%{@timestamp}"]
}

但同时@timestamp格式为:2014-08-01T18:34:46.824Z,

the read_time是这种格式2014-08-01 18:34:46.824 UTC

这是一个问题,因为 Kibana 不理解直方图的“UTC”格式。

有没有办法使用日期过滤器来做到这一点?


Kibana 无法理解,因为read_time字段是一个字符串,而不是时间戳! 您可以使用ruby过滤做你需要的事情。只需将@timestamp复制到新字段即可read_time现场时间是时间戳,不是字符串。这add_field是添加一个新字段字符串类型!

这是我的配置:

input {
    stdin{}
}

filter {
    ruby {
            code => "event['read_time'] = event['@timestamp']"
    }
    mutate
    {
        add_field => ["read_time_string", "%{@timestamp}"]
    }
}

output {
    stdout {
        codec => "rubydebug"
    }
}

你可以尝试看看输出,输出是:

{
   "message" => "3243242",
  "@version" => "1",
"@timestamp" => "2014-08-08T01:09:49.647Z",
      "host" => "BENLIM",
 "read_time" => "2014-08-08T01:09:49.647Z",
"read_time_string" => "2014-08-08 01:09:49 UTC"
}

希望这可以帮到你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LogStash:如何在保持相同时间格式的同时复制@timestamp字段? 的相关文章

随机推荐