npm 包 @azure/core-tracing 使用教程

阅读时长 4 分钟读完

简介

@azure/core-tracing 是 Microsoft Azure 提供的一个 npm 包,用于帮助开发人员在应用程序中实现分布式追踪。使用该包可以追踪分布式应用的各个部分,并分析它们之间的相互作用。

安装

安装 @azure/core-tracing 很简单,只需要在终端或命令行中执行以下命令:

使用

创建追踪器

使用以下代码创建一个实例对象(tracer):

创建跨度

要在应用程序中创建跨度,可以使用 createSpanFunction 函数。例如:

在上面的代码中,createSpanFunction 函数接受一个包含 namespace、packagePrefix 和 tracer 参数的 options 对象。namespace 和 packagePrefix 参数是可选的。然后,使用该函数的返回值来创建一个跨度。

跨度上下文

在应用程序中,您可以将跨度上下文传递给其他等待服务。例如:

-- -------------------- ---- -------
-------- ----------------------- -
  ----- - ---- - - --------

  ----- ------------------- - ------------------------- -
    ------- ----
  ---

  -- ---
-

在上面的代码中,processRequest 函数接受一个 context 参数,其中包含 span 对象。然后使用该 span 对象作为 parent 参数来创建一个跨度。

记录跨度

可以使用以下代码记录跨度:

-- -------------------- ---- -------
-------- ------------ -
  ------------------------
  --- -
    -- ---
  - ----- ------- -
    ---------------------------
      ----- ---------------------
      -------- -------------
    ---
  - ------- -
    ----------------------
  -
-

在上面的代码中,doSomethingSpan.start() 开始跨度记录,然后在 try 块中执行一些工作。如果出现错误,则设置跨度状态,并在 finally 块中调用 doSomethingSpan.end() 结束跨度记录。

深度指南

OpenTelemetry

@azure/core-tracing 默认使用 OpenTelemetry 进行跨度追踪。如果您想自定义配置,请参考 OpenTelemetry 文档

实现与导出

要将跨度导出到远程追踪系统(例如 Zipkin、Jaeger 或 Stackdriver Trace),可以使用适当的 SpanExporter 实现。

在上面的代码中,MyExporter 是 SpanExporter 实现,SimpleSpanProcessor 是一种 SpanProcessor 实现。最后,将 SimpleSpanProcessor 添加到跟踪器中。

总结

@azure/core-tracing 是一个简单易用的 npm 包,用于实现分布式追踪。通过学习本文中的使用和实现指南,您可以更好地理解其使用方法并深入了解其潜力。如果您使用 Azure 服务来构建应用程序,该包将是必不可少的一部分。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedab56b5cbfe1ea0610731

纠错
反馈