不总是生成已发布消息的时间戳

时间:2018-03-02 21:06:48

标签: google-cloud-platform google-cloud-pubsub

我正在使用here提到的message_id和publish_time参数来检索消息ID和消息发布的时间。虽然始终接收消息ID,但并不总是接收时间戳。是什么原因?

这是我的回调函数:

def callback(message):
        print('Received message: {}'.format(message))
        print ('message id is {}'.format(message.message_id))
        print ('message just timestamp is {}'.format(message.publish_time))
        print ('message timestamp is {}'.format(message.service_timestamp))
        message.ack()

输出结果为:

Listening for messages on <google.cloud.pubsub_v1.SubscriberClient object at 0x107be4d50>
Received message: Message {
  data: 'Tiemstamp??'
  attributes: {}
}
message id is 47657545658108
Received message: Message {
  data: 'Tiemstamp 1??'
  attributes: {}
}
message id is 47661581138796
Received message: Message {
  data: 'Tiemstamp 2??'
  attributes: {}
}
message id is 47662293437069
message just timestamp is seconds: 1520024742
nanos: 52000000

1 个答案:

答案 0 :(得分:1)

打印时间戳的行似乎永远不会执行,而不是失败或显示空时间戳。我已经看过几次的一个简单解释是你有一个较旧版本的代码,它没有那些行仍然在你的终端后台运行。你认为情况可能如此吗?