• spring boot admin 和actuator 配合


    actuator 提供了很多端点信息,如:内存,cpu,hump文件,健康信息等,但没提供一个方便获取的项目,springboot admin就适时而生

    注意:springboot admin 2.0 无法获取springboot1.5.x 的很多端点信息

    最好admin 2.x  对应boot的2.x

     这里拿生成dump 文件举例

    端点类:HeapDumpWebEndpoint

    步骤

    1,生成临时文件

    2,往临时文件写入dump信息

    3,响应给客户端

        protected static class HotSpotDiagnosticMXBeanHeapDumper implements HeapDumper {
    
            private Object diagnosticMXBean;
    
            private Method dumpHeapMethod;
    
            @SuppressWarnings("unchecked")
            protected HotSpotDiagnosticMXBeanHeapDumper() {
                try {
                    Class<?> diagnosticMXBeanClass = ClassUtils
                            .resolveClassName("com.sun.management.HotSpotDiagnosticMXBean", null);
                    this.diagnosticMXBean = ManagementFactory
                            .getPlatformMXBean((Class<PlatformManagedObject>) diagnosticMXBeanClass);
                    this.dumpHeapMethod = ReflectionUtils.findMethod(diagnosticMXBeanClass, "dumpHeap", String.class,
                            Boolean.TYPE);
                }
                catch (Throwable ex) {
                    throw new HeapDumperUnavailableException("Unable to locate HotSpotDiagnosticMXBean", ex);
                }
            }
    
            @Override
            public void dumpHeap(File file, boolean live) {
                ReflectionUtils.invokeMethod(this.dumpHeapMethod, this.diagnosticMXBean, file.getAbsolutePath(), live);
            }
    
        }

    发现是利用HotSpotDiagnosticMXBean 生成的

    那我就有疑问了,非hotspot 的jvm是不是就不行呢,本地用的是zulu的jdk,发现是可以生成dump的


    4,将具体某个实例请求转发到actuator,拦截instances/{instanceId}/actuator/** 和 applications/{applicationName}/actuator/** 请求

    InstancesProxyController

  • 相关阅读:
    Java日期时间差以及获取几天后或几天前
    java数组扩增的三种方式
    折半查找、冒泡排序和选择排序
    JavaSE-Map的三种循环
    Chrome浏览器showModalDialog兼容性及解决方案
    Integeter127与128
    statis代码块以及非static代码块之执行
    return、break、continue区别以及作用范围
    nodeJs + vue.js 小案例
    cordova CLI 命令
  • 原文地址:https://www.cnblogs.com/dongma/p/15624396.html
Copyright © 2020-2023  润新知