代码之家  ›  专栏  ›  技术社区  ›  zer0Id0l

从JVM MBean获取信息

  •  1
  • zer0Id0l  · 技术社区  · 10 年前

    我试图使用JVM MBean获取监控应用程序的以下详细信息

        thread-states.blocked
        thread-states.waiting
        gc.ConcurrentMarkSweep.runs
        gc.ParNew.runs
        thread_count
        daemon_thread_count
        memory.heap_usage
        memory.non_heap_usage
    

    除了

        thread-states.blocked
        thread-states.waiting
        gc.ConcurrentMarkSweep.runs
        gc.ParNew.runs
    

    有人知道可以使用什么MBean和属性来收集这些值吗? PS:我在这里发布之前已经在谷歌上搜索过了

    1 回复  |  直到 10 年前
        1
  •  2
  •   Jigar Joshi    10 年前
    thread-states.blocked
    thread-states.waiting
    

    你可以使用 getAllThreadIds() 并获取每个线程的信息 getThreadInfo() 并根据状态过滤

    gc.ConcurrentMarkSweep.runs
    gc.ParNew.runs
    

    收到 getGarbageCollectorMXBeans() 过滤CMS和ParNew getCollectionCount()