OpenTelemetry.AutoInstrumentation 1.7.0
前缀已预留
dotnet add package OpenTelemetry.AutoInstrumentation --version 1.7.0
NuGet\Install-Package OpenTelemetry.AutoInstrumentation -Version 1.7.0
<PackageReference Include="OpenTelemetry.AutoInstrumentation" Version="1.7.0" />
paket add OpenTelemetry.AutoInstrumentation --version 1.7.0
#r "nuget: OpenTelemetry.AutoInstrumentation, 1.7.0"
// Install OpenTelemetry.AutoInstrumentation as a Cake Addin #addin nuget:?package=OpenTelemetry.AutoInstrumentation&version=1.7.0 // Install OpenTelemetry.AutoInstrumentation as a Cake Tool #tool nuget:?package=OpenTelemetry.AutoInstrumentation&version=1.7.0
使用 OpenTelemetry.AutoInstrumentation NuGet 包
何时使用 NuGet 包
在以下场景中使用 NuGet 包
- 您控制应用构建,但不控制应用运行的机器/容器。
- 支持对
self-contained
应用的仪器化。 - 通过 NuGet 包方便开发者进行自动仪器化的实验。
- 解决应用程序使用的依赖项与自动仪器化之间的版本冲突。
限制
虽然 NuGet 包是部署自动仪器化的便利方式,但不能在所有情况下使用。不使用 NuGet 包的最常见原因包括以下
- 您无法将包添加到应用项目。例如,该应用是第三方应用,无法添加包。
- 当多个将要仪器化的应用安装在同一台机器上时,可以减少磁盘使用量或虚拟机的容量。在这种情况下,您可以对该机器上运行的所有 .NET 应用使用单个部署。
- 无法迁移到 SDK 风格项目 的遗留应用。
使用 NuGet 包
要使用 OpenTelemetry .NET 自动 Instrumentation 自动对应用程序进行配置,请将 OpenTelemetry.AutoInstrumentation
包添加到您的项目中
dotnet add [<PROJECT>] package OpenTelemetry.AutoInstrumentation
如果应用程序引用了可以配置的包,但是配置需要其他包,则构建将失败,并提示您添加缺少的配置包或跳过相应包的配置
~packages/opentelemetry.autoinstrumentation.buildtasks/1.1.0/build/OpenTelemetry.AutoInstrumentation.BuildTasks.targets(29,5): error : OpenTelemetry.AutoInstrumentation: add a reference to the instrumentation package 'MongoDB.Driver.Core.Extensions.DiagnosticSources' version 1.3.0 or add 'MongoDB.Driver.Core' to the property 'SkippedInstrumentations' to suppress this error.
要解决错误,要么添加推荐的配置包,要么将列出的包添加到 SkippedInstrumentation
属性中跳过配置。例如
<PropertyGroup>
<SkippedInstrumentations>MongoDB.Driver.Core;StackExchange.Redis</SkippedInstrumentations>
</PropertyGroup>
该属性也可以直接在终端中指定。注意,;
分隔符需要正确转义为 '%3B'
dotnet build -p:SkippedInstrumentations=StackExchange.Redis%3BMongoDB.Driver.Core
为了与 .NET 应用程序一起分发适当的本地运行时组件,指定一个 运行时标识符 (RID),使用 dotnet build
或 dotnet publish
构建应用程序。这可能需要您在分发 自包含 或 框架依赖 的应用程序之间进行选择。这两种类型都与自动配置兼容。
使用构建输出文件夹中的脚本启动应用程序,以激活自动配置。
- 在 Windows 上,使用
instrument.cmd <应用程序可执行文件>
- 在 Linux 或 Unix 上,使用
instrument.sh <应用程序可执行文件>
如果您使用 dotnet
CLI 启动应用程序,请将 dotnet
添加到脚本之后。
- 在 Windows 上,使用
instrument.cmd dotnet <应用程序>
- 在 Linux 和 Unix 上,使用
instrument.sh dotnet <应用程序>
该脚本将传递您提供的所有命令行参数到应用程序。
-
.NETFramework 4.6.2
-
net6.0
- OpenTelemetry.AutoInstrumentation.AspNetCoreBootstrapper (>= 1.7.0)
- OpenTelemetry.AutoInstrumentation.BuildTasks (>= 1.7.0)
- OpenTelemetry.AutoInstrumentation.Loader (>= 1.7.0)
- OpenTelemetry.AutoInstrumentation.Runtime.Managed (>= 1.7.0)
- OpenTelemetry.AutoInstrumentation.Runtime.Native (>= 1.7.0)
- OpenTelemetry.AutoInstrumentation.StartupHook (>= 1.7.0)
NuGet 包 (7)
显示依赖于 OpenTelemetry.AutoInstrumentation 的前5个 NuGet 包
包 | 下载 |
---|---|
Splunk.OpenTelemetry.AutoInstrumentation
Splunk 分发的 OpenTelemetry .NET 包,包含启用自动配置所需的所有组件。 |
|
VRSPRO.Common.Web
一套用于处理缓存、数据库、队列、消息代理、文件、反射、错误、分页、集合、字符串和 ASP NET CORE 的内部通用类和扩展。您可以将此代码直接用于您的项目中。您可以复制、修改和分发它而无需任何限制。您不需要提供任何版权信息或引用。 |
|
AElf.OpenTelemetry
ABP 和 Orleans 框架使用的 OpenTelemetry 模块。 |
|
Vistahub.DotnetCommon.Infraestructure
一个包含为微服务模式提供更简化子系统的简单项目。 |
|
ChrisKaczor.Common.OpenTelemetry
OpenTelemetry 的通用设置。 |
GitHub 仓库
此包在没有任何知名 GitHub 仓库中使用。