在 java 中使用 Prometheus 收集的时间序列的自定义时间戳

Posted

技术标签:

【中文标题】在 java 中使用 Prometheus 收集的时间序列的自定义时间戳【英文标题】:Custom time stamp for time series collected with Prometheus in java 【发布时间】:2019-06-19 04:38:45 【问题描述】:

我有一个 java 应用程序,它使用 Prometheus 库在执行期间收集指标。 稍后我将 Prometheus 服务器链接到 Grafana 以可视化这些指标。我想知道是否可以让 Grafana 为这些指标显示自定义 X 轴? 通常的 X 轴是本地时间。我可以让它以 GPS / UTC 时间显示带有时间戳的数据吗?可能吗?如果是,它需要什么?保存时间戳的附加指标参数?

我这样声明度量变量:

private static Counter someCounter = Counter.build()
            .name("someCounter_name").help("information counter").labelNames("SomeLable").register();

并像这样添加数据:

someCounter.labels("test").inc();

任何帮助将不胜感激。谢谢你。

【问题讨论】:

什么意思?在参数里你可以设置内存?你是凭经验说的还是你猜的? 好的,我会试试的。但是为什么你认为它会起作用?那条线到底应该做什么? 【参考方案1】:

这是在 Grafana 中处理的事情。如果您查看仪表板(而不是面板)设置,则在常规下有一个时区下拉菜单,可让您选择 UTC 而不是浏览器本地时间。

【讨论】:

没错。如果我想让它成为 GPS 时间,我也可以手动添加时间偏移(闰秒)。

以上是关于在 java 中使用 Prometheus 收集的时间序列的自定义时间戳的主要内容,如果未能解决你的问题,请参考以下文章

Springboot 网关 Prometheus 收集海量数据

如何编写一个在文件中收集值的 Prometheus 导出器?

如何使用联合从多个 Prometheus 实例(每个使用 instance="localhost:9090")中收集 Prometheus 的指标

prometheus中pushgateway方式收集数据

Prometheus:如何收集临时进程的内存消耗指标?

避免 Prometheus 调用所有 k8s 服务实例(只有一个,应用范围的指标收集)