【Azure Application Insights】配置 JMX 指标无法收集到参数的情况

本文涉及的产品
应用实时监控服务-应用监控,每月50GB免费额度
注册配置 MSE Nacos/ZooKeeper,118元/月
可观测监控 Prometheus 版,每月50GB免费额度
简介: 在使用 Application Insights Java 3.x 收集 JMX 指标时,若无法收集到数据且程序无报错,通常是由于不同 Java 版本中 JMX 的属性名称不同所致。确保配置正确的 `name` 和 `attribute` 值至关重要。对于 GC 相关指标,建议参考特定配置,并使用 JMXTerm 工具查看当前环境中的 JMX 指标值,以确认属性名称的准确性。详细配置和解决方法可参见官方文档及 troubleshooting 指南。

问题描述

使用 Application Insights Java 3.x 收集 Java 管理扩展 (JMX) 指标, 根据文档在 applicationinsights.json 文件中添加 "jmxMetrics" 部分,并添加如下内容:

"jmxMetrics": [
    {
      "name": "Demo - G1 Collection Count Young",
      "objectName": "java.lang:name=G1 Young Generation,type=GarbageCollector",
      "attribute": "CollectionCount"
    },
    {
      "name": "Demo - G1 Collection Count Old",
      "objectName": "java.lang:name=G1 Old Generation,type=GarbageCollector",
      "attribute": "CollectionCount"
    },
    {
      "name": "Demo - Thread Count",
      "objectName": "java.lang:type=Threading",
      "attribute": "ThreadCount"
    }
  ]

但结果无法收集到数据,程序执行并没有报错。这是什么情况呢?


问题解答

正如在文档中提到的,必须要配置正确的Name 和 Attribute 值才能收集到JMX指标。而当前遇到的问题是由于不同java版本中的相关的attirbute名称不同导致

 

如果是收集 GC 相关的JMX指标可参考如下配置:

"jmxMetrics": [
      {
        "name": "Demo - G1 young gen",
        "objectName": "java.lang:name=G1 Young Generation,type=GarbageCollector",
        "attribute": "CollectionTime"
      },
      {
        "name": "Demo - G1 old gen",
        "objectName": "java.lang:name=G1 Old Generation,type=GarbageCollector",
        "attribute": "CollectionTime"
      }
]

 

而如果想知道当前Java版本中的java.lang 的参数名和属性值,可以通过下文:

 

下载 JMXTerm 然后参考文章( https://github.com/microsoft/ApplicationInsights-Java/wiki/Troubleshoot-JMX-metrics )来查看当前环境中的JMX指标值。

 

 

 

参考资料

配置 JMX 指标:https://learn.microsoft.com/zh-cn/azure/azure-monitor/app/java-jmx-metrics-configuration#where-do-i-find-the-jmx-metrics-in-application-insights

 



当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

目录
打赏
0
3
5
0
203
分享
相关文章
【Azure Cloud Service】在Azure云服务中收集CPU监控指标和IIS进程的DUMP方法
在使用Cloud Service服务时,发现服务的CPU占用很高,在业务请求并不大的情况下,需要直到到底是什么进程占用了大量的CPU资源,已经如何获取IIS进程(w3wp.exe)的DUMP文件?
|
8月前
|
【应用程序见解 Application Insights】使用Azure Monitor Application Insights Agent获取Azure VM中监控数据及IIS请求指标等信息
【应用程序见解 Application Insights】使用Azure Monitor Application Insights Agent获取Azure VM中监控数据及IIS请求指标等信息
108 0
|
8月前
|
SQL
【应用程序见解 Application Insights】在Application Insights中通过自定义查询结果定义指标并显示在Dashboard中
【应用程序见解 Application Insights】在Application Insights中通过自定义查询结果定义指标并显示在Dashboard中
【Azure Application Insights】在Azure Function中启用Application Insights后,如何配置不输出某些日志到AI 的Trace中
【Azure Application Insights】在Azure Function中启用Application Insights后,如何配置不输出某些日志到AI 的Trace中
【应用程序见解 Application Insights】Application Insights 使用 Application Maps 构建请求链路视图
【应用程序见解 Application Insights】Application Insights 使用 Application Maps 构建请求链路视图
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
|
8月前
【Azure 环境】Azure门户中 Metrics 图表的聚合指标每项具体代表什么意思呢?
【Azure 环境】Azure门户中 Metrics 图表的聚合指标每项具体代表什么意思呢?
【Azure 事件中心】Event Hub服务中的度量值指标介绍
【Azure 事件中心】Event Hub服务中的度量值指标介绍

云原生

+关注