开发者社区 > 云原生 > 云原生可观测 > 正文

我有一些java的方法,想监控执行时间,这个我们可以对接到阿里云ARMS吗?

我有一些java的方法,想监控执行时间,这个我们可以对接到阿里云ARMS吗?

展开
收起
三分钟热度的鱼 2024-01-17 19:43:33 33 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    是的,您可以使用阿里云ARMS(Application Performance Management Service)来监控Java方法的执行时间。

    首先,您需要在项目中集成阿里云ARMS的相关依赖和SDK。然后,您可以在需要监控的方法上添加计时逻辑,记录方法开始执行和结束执行的时间戳,计算方法的执行时间。最后,将执行时间发送到阿里云ARMS进行监控。

    以下是一个简单的示例代码:

    import com.aliyun.arms.client.ArmsClient;
    import com.aliyun.arms.client.Metric;
    import com.aliyun.arms.client.common.Dimension;
    
    public class ArmsMonitor {
        private static final String ACCESS_KEY_ID = "your_access_key_id";
        private static final String SECRET_ACCESS_KEY = "your_secret_access_key";
        private static final String PRODUCT_NAME = "your_product_name";
        private static final String ENDPOINT = "your_endpoint";
    
        public static void main(String[] args) {
            ArmsClient armsClient = new ArmsClient(ACCESS_KEY_ID, SECRET_ACCESS_KEY, PRODUCT_NAME, ENDPOINT);
    
            // 记录方法开始执行的时间戳
            long startTime = System.currentTimeMillis();
    
            // 调用需要监控的方法
            yourMethod();
    
            // 记录方法结束执行的时间戳
            long endTime = System.currentTimeMillis();
    
            // 计算方法的执行时间
            long executionTime = endTime - startTime;
    
            // 创建度量数据并设置维度信息
            Metric metric = new Metric("your_metric_name");
            metric.setDimension(new Dimension("method", "yourMethodName"));
    
            // 设置度量值
            metric.setValue(executionTime);
    
            // 发送度量数据到阿里云ARMS进行监控
            armsClient.sendMetric(metric);
        }
    
        private static void yourMethod() {
            // 你的Java方法实现
        }
    }
    

    请确保替换代码中的your_access_key_idyour_secret_access_keyyour_product_nameyour_endpointyour_metric_nameyourMethodName为您自己的实际信息。

    2024-01-21 15:12:06
    赞同 展开评论 打赏
  • 业务自有方法需要通过sdk手动埋点的,参考 https://help.aliyun.com/zh/arms/application-monitoring/use-cases/use-opentelemetry-sdk-for-java-to-manually-instrument-applications?spm=a2c4g.11186623.0.0.40f75785m86gS8 此回答整理自钉群“【外部客户群】阿里云ARMS业务监控”

    2024-01-17 19:52:24
    赞同 展开评论 打赏

云原生可观测基于Prometheus、Grafana 、OpenTelemetry 等核心产品, 形成指标、链路存储分析、异构数据源集成的数据层, 通过标准PromQL和SQL提供大盘展示、告警与探索能力。

相关产品

  • 应用实时监控服务
  • 相关电子书

    更多
    Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
    The Reactive Cloud Native Arch 立即下载
    JAVA开发手册1.5.0 立即下载