如何使用JAVA Prometheus Pushgateway客户端推送具有多个标签(键值)的非类型度量?
我想使用java PushGateway客户端推送度量 示例推送网关URL pushgateway.com:9091/metrics/job/job\u name 样本指标 度量值{instance=“i1”,label1=“l1”,label2=“l2”,label3=“l3”,label4=“l4”} 有谁能给我提供一个代码片段,用它将上述指标推送到Pushgateway中 注意如何使用JAVA Prometheus Pushgateway客户端推送具有多个标签(键值)的非类型度量?,prometheus,client-library,prometheus-pushgateway,Prometheus,Client Library,Prometheus Pushgateway,我想使用java PushGateway客户端推送度量 示例推送网关URL pushgateway.com:9091/metrics/job/job\u name 样本指标 度量值{instance=“i1”,label1=“l1”,label2=“l2”,label3=“l3”,label4=“l4”} 有谁能给我提供一个代码片段,用它将上述指标推送到Pushgateway中 注意 我们有20K个临时实例运行该应用程序,因此决定使用Pushgateway。来自以下官方文档: 要使用分组键jo
我们有20K个临时实例运行该应用程序,因此决定使用Pushgateway。来自以下官方文档:
- 要使用分组键
,job=“directory\u cleaner”
,以下路径将不起作用:path=“/var/tmp”
@base64
来标记它:
/metrics/job/directory_cleaner/path@base64/L3Zhci90bXA
下面是从存储在Map groupingKey
中的多个键值对生成url
的示例:
String url=gatewayBaseURL;
if(作业包含(“/”){
url+=”job@base64/“+base64url(作业);
}否则{
url+=“作业/”+urlcoder.encode(作业,“UTF-8”);
}
if(groupingKey!=null){
对于(Map.Entry:groupingKey.entrySet()){
if(entry.getValue()包含(“/”){
url+=“/”+entry.getKey()+“@base64/”+base64url(entry.getValue());
}否则{
url+=“/”+entry.getKey()+“/”+urlcoder.encode(entry.getValue(),“UTF-8”);
}
}
}
HttpURLConnection=connectionFactory.create(url);
/metrics/job/directory_cleaner/path@base64/L3Zhci90bXA