Skip to content

Latest commit

 

History

History
97 lines (69 loc) · 3.86 KB

File metadata and controls

97 lines (69 loc) · 3.86 KB

OpenTelemetry Go Auto Instrumentation

logo

为Golang应用程序提供一种面向OpenTelemetry的可观测解决方案。目标应用程序不需要进行代码更改,插桩工作在编译时完成。只需将go build替换为otelbuild即可开始。

构建

运行以下命令来构建otelbuild:

$ make build

要为发布目的准备所有支持平台的二进制文件,请使用:

$ make all

运行所有测试:

$ make test

使用

使用以下命令替换go build来构建你的项目

# go build
$ ./otelbuild

go build的参数应放在--分隔符之后:

# go build -gcflags="-m" cmd/app
$ ./otelbuild -- -gcflags="-m" cmd/app

工具本身的参数应放在--分隔符之前:

$ ./otelbuild -help        # print help doc
$ ./otelbuild -debuglog    # print log to file
$ ./otelbuild -verbose -- -gcflags="-m" cmd/app # print verbose log

你也可以浏览这些示例快速上手.

Note

如果过程中发现任何编译失败的情况,很可能是一个bug 请在GitHub Issues 中提交 bug,帮助我们改进这个项目

支持的库

插件名字 仓库地址 最低版本 最高版本
database/sql https://pkg.go.dev/database/sql - -
echo https://github.com/labstack/echo v4.0.0 v4.12.0
gin https://github.com/gin-gonic/gin v1.7.0 v1.10.0
go-redis https://github.com/redis/go-redis v9.0.5 v9.5.1
gorm https://github.com/go-gorm/gorm v1.22.0 v1.25.9
logrus https://github.com/sirupsen/logrus v1.5.0 v1.9.3
mongodb https://github.com/mongodb/mongo-go-driver v1.11.1 v1.15.2
mux https://github.com/gorilla/mux v1.3.0 v1.8.1
net/http https://pkg.go.dev/net/http - -
zap https://github.com/uber-go/zap v1.20.0 v1.27.0

我们正在逐步开源我们支持的库,也非常欢迎你的贡献。有关如何为新框架编写插桩代码的指南,请参阅这个文档

Community

我们期待你的反馈和建议。请加入我们的钉钉群 与我们交流。

此外,还有以下一些你可能会觉得有用的文档: