携带时间戳主动写入数据到prometheus service

使用到的github公开项目
https://github.com/castai/promwrite
拉下来装依赖,然后使用
client_test.go
t.Run(“write with custom options”, func(t *testing.T)
这个测试用例里面,删掉srv初始化的部分,这个是模拟一个客户端,直接写入自己的普罗米修斯测试的客户端路径,/api/v1/write普罗米修斯是写入的路径

client := promwrite.NewClient(
			//srv.URL,
			"http://localhost:9090/api/v1/write",
			promwrite.HttpClient(&http.Client{
				Timeout: 1 * time.Second,
				Transport: &customTestHttpClientTransport{
					reqChan: sentRequest,
					next:    http.DefaultTransport,
				},
			}),
		)

效果

携带时间戳主动写入数据到prometheus service_第1张图片
携带时间戳主动写入数据到prometheus service_第2张图片

注意:
普罗米修斯对写操作有限制,所以要按时间顺序写入

expected status 200, got 400: out of order sample
这个错误通常是由于 Prometheus 写入数据时样本的时间戳顺序不正确导致的。Prometheus 要求样本的时间戳必须按照递增的顺序进行写入

携带时间戳主动写入数据到prometheus service_第3张图片

你可能感兴趣的:(prometheus)