由于现代技术环境变得更加分布式和复杂,有效地管理其性能也变得更加挑战。了解您的服务和应用程序的集体行为要求您以标准化方式介绍所有框架和库。

进入OpenTeLemetry.- 由此赞助的开源项目云本机计算基础(CNCF)这为服务仪器提供了统一的标准。通过合并Opentrocing和Opencensus来形成,OpenTeLemetry.提供一套单一的API和库,标准化您如何将遥测数据进行标准化和将遥测数据传输到您选择的不同之背景,例如新遗物。

今天新的遗物很高兴地宣布可用性我们的OpenteLemetry产品。现在,当您摄取开源数据时遥测数据平台和使用全堆叠可观察性为了快速进入问题的根本原因,您可以优化性能并了解您的全部遗产中的应用程序和服务的复杂交互。

轻松摄取OpenTeMetry数据

新的遗物的OpenTeMetry产品提供了多种方式来摄取数据:

  1. OpenTeLemetry收藏家:OpenTeLemetry Collector提供供应商 - 无话用的实现,了解如何接收,过程和导出遥测数据。由于收集器可以以各种格式接收和导出数据,因此在您已经录取的代码时启动是一种很好的方法。启用新的遗物出口商.在OpenTeleMetry收集器中,您可以将遥测数据发送到新的遗物,并且是将OpenTeLemetry数据摄入到新的遗物中的首选方法。
  2. 语言特定出口商:OpenTeLemetry收集器聚合并路由您的数据,但您还需要进程中的内容来仪器。OpenTeLemetry项目具有许多语言特定的SDK和仪器库,用于检测您的服务。您可以将遥测数据发送到收集器或直接以新的遗物使用语言特定的出口商。我们目前为他们提供(1.0),java., 和
  3. Java OpenTeleMetry Integration Bundle:这是开始使用OpenTelemetry和Java的最简单方法,因为它包含了Java SDK、Java自动检测代理和New Relic导出器。

用新的遗物OpenTeleMetry UI快速可视化和分析数据

通过全堆叠可观察性的OpenTeLemetry APM功能,您可以在上下文中可视化整个堆栈的性能数据,从而更快地转到根本原因,为您的应用提供最佳性能以及为您的客户提供更好的数字体验。

让我们走过你如何使用新的遗物收集器出口商和OpenTeleMetry UI.收集,可视化和分析C#CartService.这是一部分MicroServices演示应用程序

要介绍应用程序,请将以下包添加到其中:

  • newrelic.OpenteLemetry.
  • OpenTeleMetry.extensions.hosting.
  • OpenTeleMetry.Instrumentation.aspnetcore.
  • OpenTeLemetry。出口商.OpentEleMetryProtocol.
  • OpenTeleMetry.Instrumentation.http.(用于授权外部HTTPCLIENT呼叫的可选)
  • 其他OpenTeleMetry.instrumentation。*适用于您的应用程序的包(例如,SQL)

启动ASP.NET核心仪器时启动应用程序,通常在启动类的Configureservices中完成。下面的示例通过使用扩展方法启用此仪器iserviceCollection.,这需要添加包OpenTeleMetry.extensions.hosting.到申请。这确保了仪器在主机关闭时处理。

public void configureservices(iServiceCollection Services){... Services.AddopentElemetryTracing(Builder => ConfigureOleMetry(Builder,Cartractore));...}

此外,此服务设置OpenTeLemetry收集器导出器,需要添加OpenTeleMetry.exporter.OpentEleMetryProtocol.到应用程序和配置OTLP端点指出出口商将发送追踪信息的地方。

私有静态Void ConfigureOpentEleMetry(TracerProviderBuilder Builder,IcartStore Cartstore){Builder.AdaspNetCoreInstrumentation();if(artstore是rediscartstore rediscartstore){builder.addredisinstrumentation(RediscartStore.ConnectionMultiplexer);} var odallype =环境.getEnvironmentVariable(“new_relic_demo_export_type”)??“newrelic”;var newrelicapikey =环境.GetEnvironmentVariable(“new_relic_api_key”);var newrelictraceurl =环境.getEnvironmentVariable(“new_relic_trace_url”);var servicename =“cartservice”+(excoodtype ==“newrelic”?string.uspty:$“ -  {organdtype}”);builder.setresourceBuilder(ResourceBuilder.Createdefault()。AddService(ServiceName,null,null,false,$“{excoodtype}  -  {guid.newguid()。toString()}”));switch(excoodtype){case“otlp”:var otlpendpoint = neverional.getenvironmentVariable(“otel_exporter_otlp_span_endpoint”)??环境.GetEnvironmentVariable(“otel_exporter_otlp_endpoint”); Builder.AddOtlpExporter(options => options.Endpoint = otlpEndpoint); Break; ... ... ... } }

运行MicroServices演示时,OpenTeLemetry收集器会在端口4317上自动旋转,该端口4317定义建筑物skaffold.yaml.档案CartService.使用。

- 图像:cartservice上下文:SRC / cartservice搬运工:buildArgs:NEW_RELIC_DEMO_EXPORT_TYPE: “{{.NEW_RELIC_DEMO_EXPORT_TYPE}}” NEW_RELIC_API_KEY: “{{.NEW_RELIC_API_KEY}}” NEW_RELIC_TRACE_URL: “{{.NEW_RELIC_TRACE_URL}}” NEW_RELIC_METRIC_URL:“{{.NEW_RELIC_METRIC_URL}}“otel_exporter_otlp_span_endpoint:”Otel-collector:4317“

分析应用数据

您现在可以在新的遗物中开始分析您的.NET应用程序数据,如下图所示的CartService摘要显示金色指标:响应时间,吞吐量和错误率 - 如果服务有问题,您可以缩小。

.NET应用数据的屏幕截图

当您在响应时间或错误率中注意到浪涌时,请使用“事务”页面标识可能导致问题的事务。

交易截图

通过单击特定事务跟踪来进一步钻取,以获取请求的详细端到端视图,因为它在整个服务和图层中行进 - 所有这些都需要更快地解决问题。

OpenTeLemetry的增长

OpenTeLemetry .NET到达v1.0.1.是OpenteLemetry的巨大里程碑,并证明了对OpenTeMetry的广泛和不断增长的验收。新的遗物很高兴成为OpenteLemetry项目的主要贡献者之一,并将继续我们的贡献和投资,以确保所有语言的痕迹和指标很快就能达到这个巨大的里程碑。

此外,为了帮助您轻松采用OpenTeLemetry,我们将通过更多可观察性功能和功能来发展我们的摄取方法和用户体验。当我们首先推出了新的遗物,请单击注释图标向我们发送有关用户界面的反馈。

尝试新的遗物一个及其OpenTeLemetry功能注册我们今天永远免费。

LavanyaChockalingam是一家高级产品营销经理,新的APM产品。亚博最新版直播Lavanya开始作为工程师的职业生涯,然后搬到销售和产品营销角色。LAVANYA在硬件和软件行业工作,对技术充满热情,如何利用如何解决现实世界问题。查看帖子

对新遗物博客的写作有兴趣吗?亚搏体育登入网送我们一个球场!!