開始使用 • 參與其中 • 取得聯繫
貢獻 • 範圍
該專案提供了一個 Java 代理 JAR,可以附加到任何 Java 8+ 應用程序,並動態注入字節碼以從許多流行的庫和框架捕獲遙測資料。您可以以多種格式匯出遙測資料。您也可以透過命令列參數或環境變數來配置代理程式和匯出器。最終結果是無需更改程式碼即可從 Java 應用程式收集遙測資料。
該儲存庫還為多個庫(以及不斷增長的庫)發布了獨立工具,如果您喜歡使用這些庫而不是使用 Java 代理,則可以使用這些工具。請參閱支援的庫上的獨立庫檢測列。如果您正在尋找有關使用它們的文件。
下載最新版本。
該軟體包包括儀器代理以及所有支援的庫和所有可用數據導出器的儀器。該軟體包提供了完全自動化、開箱即用的體驗。
注意:有 2.x 版本和 1.x 版本。 2.0 版本包含重大的重大更改,詳細資訊可以在發行說明中找到。建議使用最新的 2.x 版本,它將具有最新的功能和改進。 1.x 將在有限時間內收到安全補丁,不包括其他錯誤修復和增強功能。
使用 JVM 的-javaagent
標誌啟用檢測代理。
java -javaagent:path/to/opentelemetry-javaagent.jar
-jar myapp.jar
預設情況下,OpenTelemetry Java 代理程式使用配置為將資料傳送至位於http://localhost:4318
OpenTelemetry 收集器的 OTLP 匯出器。
配置參數作為 Java 系統屬性( -D
標誌)或環境變數傳遞。有關配置項目的完整列表,請參閱配置文件。例如:
java -javaagent:path/to/opentelemetry-javaagent.jar
-Dotel.resource.attributes=service.name=your-service-name
-Dotel.traces.exporter=zipkin
-jar myapp.jar
該代理是高度可配置的!可以根據您的需求配置代理行為的許多方面,例如導出器選擇、導出器配置(如資料發送位置)、追蹤上下文傳播標頭等等。
有關代理配置選項的詳細列表,請參閱代理配置文件。
有關其他 SDK 配置環境變數和系統屬性的詳細列表,請參閱 SDK 配置文件。
注意:配置參數名稱很可能會隨著時間的推移而改變,因此請在嘗試新版本時返回此處!請報告您發現的任何錯誤或意外行為。
我們支援數量驚人的庫和框架以及大多數最受歡迎的應用程式伺服器...開箱即用!按此處查看完整清單並了解有關停用偵測以及如何抑制不必要的偵測的更多資訊。
擴充功能可以為代理程式新增新的功能和功能,而無需建立單獨的發行版或分叉此儲存庫。例如,您可以建立自訂採樣器或跨距導出器,設定新的預設值,並將其全部嵌入代理程式中以獲得單一 jar 檔案。
對於大多數用戶來說,開箱即用的儀器就完全足夠了,不需要做更多的事情。然而,有時,使用者希望將屬性新增到其他自動跨度中,或者他們可能希望為自己的自訂程式碼手動建立跨度。
有關詳細說明,請參閱手動檢測。
可以將追蹤 ID 和跨度 ID 等追蹤資訊注入自訂應用程式日誌中。有關詳細信息,請參閱 Logger MDC 自動檢測。
要開啟代理程式的內部偵錯日誌記錄:
-Dotel.javaagent.debug=true
注意:這些日誌非常詳細。僅在需要時啟用調試日誌記錄。調試日誌記錄會對應用程式的效能產生負面影響。
請參閱 CONTRIBUTING.md。
分類器(@open-telemetry/java-instrumentation-triagers):
批准者(@open-telemetry/java-instrumentation-approvers):
維護者(@open-telemetry/java-instrumentation-maintainers):
榮譽維護者:
了解有關社區存儲庫中的角色的更多資訊。
感謝所有已經做出貢獻的人!