node exporter里面metric为什么不上报时间戳?既然是时间序列数据,那么时间戳和数据值应该是一体的。metric页面只上报数据值,那么是不是可以认为prometheus把拉数据的时间作为数据值的时间戳?这样的话,严格来说并不准确。同时还有一个问题,如果exporter出了问题,或者监控对象出了问题,已经不再上报数据,但服务还在运行,prometheus还可以持续拉到数据,但一直是同一个值,这样就已经不对了。虽说数据值一直不变,也能知道这样是出了问题,但也会有些数据,就是变化很少,会长时间不变动。这样就没办法发现问题。如果上报数据包括时间戳,prometheus就可以通过时间戳发现客户端已经出问题了。
因为我是自定义实现的exporter,所以我打算在自己实现的metrics管理代码中,增加metric的时间戳,然后监控它,用来发现客户端的异常。