基于JMSActiveMQBrokerInTime在logstash中设置消息的时间戳

基于JMSActiveMQBrokerInTime在logstash中设置消息的时间戳,jms,logstash,activemq,Jms,Logstash,Activemq,目前,我们的日志存储配置为使用jmstiestamp作为@timestamp jms { use_jms_timestamp => true 但当消息从多个服务器发送时,这会导致问题。如果时钟不同步,则消息的顺序是错误的 文档称有jmsativemqbrokerintime属性保存消息到达代理时的时间戳(以毫秒为单位) 当我将jms插件的配置切换为不使用JMSTimestamp时,将根据时间日志设置@timestamp,以存储从队列中拾取的消息。这将给我订购,但时间将关闭时,例

目前,我们的日志存储配置为使用
jmstiestamp
作为
@timestamp

jms {
     use_jms_timestamp => true
但当消息从多个服务器发送时,这会导致问题。如果时钟不同步,则消息的顺序是错误的

文档称有
jmsativemqbrokerintime
属性保存消息到达代理时的时间戳(以毫秒为单位)

当我将jms插件的配置切换为不使用
JMSTimestamp
时,将根据时间日志设置
@timestamp
,以存储从队列中拾取的消息。这将给我订购,但时间将关闭时,例如logstash停止几分钟

如何将
jmsactivemqbrokertime
用作
@timestamp

我正在使用此配置运行logstash的本地实例

input {

jms {
     include_header => true
     include_properties => true
     include_body => true
     interval => 10
     use_jms_timestamp => false
     destination => "local-logstash-input"
     yaml_file => "c:\dev\elk\tests\local_jmsMQ.yml"
     yaml_section => "activemq"
 }
}

output {
  stdout {
      codec => json
  }
}

我在输出中没有看到这个属性。

您能给出
jmsactivemqbrokertime
字段中值的示例吗?它是一个数字。消息到达代理的时间戳(毫秒)。您可以使用
date
过滤器将任何日期/时间字段用作
@timestamp
字段,我认为您的字段将与解析历元值的模式UNIX_MS匹配。看一看示例,但我在输出中没有看到这个字段。像一个被提到的。