API/代码
编辑API/代码编辑
使用 span API 手动创建您感兴趣的方法的跨度。API 非常灵活,并提供自定义跨度的能力,例如添加标签或更改类型、名称或时间戳。
OpenTracing 粉丝?您可以使用 OpenTracing API,而不是 Agent API,手动创建跨度。
如何使用 span API 创建跨度编辑
- 使用
currentSpan()
获取当前跨度,该跨度可能由自动检测创建,也可能没有。 - 使用
startSpan()
创建子跨度。 - 使用
activate()
激活跨度。 - 使用 span API 自定义跨度。
import co.elastic.apm.api.ElasticApm; import co.elastic.apm.api.Span; Span parent = ElasticApm.currentSpan(); Span span = parent.startSpan(); try (Scope scope = span.activate()) { span.setName("SELECT FROM customer"); span.addLabel("foo", "bar"); // do your thing... } catch (Exception e) { span.captureException(e); throw e; } finally { span.end(); }
与注解结合编辑
您可以将注解与 span API 结合使用以提高其灵活性。只需获取注解方法上的当前跨度,并根据您的喜好自定义跨度。