手动仪表编辑

Elastic APM Android 代理会自动对 支持的技术 进行仪表,为每种情况下的重要事件创建跨度,并且可以对其中一些自动跨度进行 配置 以更好地满足不同应用程序的需求。但是,如果您需要创建自己的自定义跨度、指标和日志,则可以通过访问此代理构建于其上的 OpenTelemetry Java SDK API 来实现。

OpenTelemetry 入口点编辑

完成 设置 过程后,代理将为您配置 OpenTelemetry 入口点,并使其可全局访问。为了访问已配置的 OpenTelemetry 实例,您需要使用 GlobalOpenTelemetry 类,如下所示。

class MyClass {

    // Example of how to obtain an OpenTelemetry tracer, meter, and logger to create custom Spans, Metrics and Logs.
    public void myMethod() {
        // Span example
        Tracer tracer = GlobalOpenTelemetry.getTracer("my-tracer-scope-name");
        Span span = tracer.spanBuilder("spanName").startSpan();
        //...
        span.end();

        // Metric example
        LongCounter counter = GlobalOpenTelemetry.meterBuilder("meterScope").build().counterBuilder("myCounter").build();
        counter.add(1);

        // Logs example
        Logger logger = GlobalOpenTelemetry.get().getLogsBridge().get("logScope");
        logger.logRecordBuilder().setBody("Log body").emit();
    }
}

您可以按照 OpenTelemetry 的 Java SDK 指南 手动创建信号,找到有关如何创建和自定义各种 信号 的更多详细信息。