目前僅支援 Go V1.22.0 版本。
CodeBull Logo

CodeBull 介紹

CodeBull 是一款 VS Code 擴充功能,為您的 Go 應用程式帶來動態可觀測性 (Dynamic Observability)。 它允許開發人員在不重寫代碼、不重新編譯二進制文件或重啟進程的情況下,將日誌、指標和追蹤注入到正在運行的應用程式中。

傳統的除錯通常涉及添加 print 語句、重新編譯和重啟應用程式。CodeBull 利用運行時插樁技術消除了這種摩擦。

核心概念

動態插樁 (Dynamic Instrumentation)

在特定點(例如函數入口/出口、特定行)注入代碼以修改正在運行的程式行為的能力。CodeBull 使用此技術安全地插入可觀測性掛鉤 (hooks)。

主要功能

動態日誌 (Dynamic Logging)

在代碼的任何位置注入日誌語句。捕獲變數值、函數參數和返回值。

Dynamic Logging Example

即時指標 (Instant Metrics)

即時監控應用程式的效能和行為。添加計數器 (counters) 以追蹤代碼行的執行頻率,或添加儀表 (gauges) 以追蹤變數隨時間變化的值。

效能分析 (Profiling) (即將推出)

直接從 VS Code 按需生成 CPU 和記憶體分析報告。視覺化火焰圖 (flame graphs) 以識別瓶頸。

常見問題 (FAQ)

它適用於優化後的二進制文件嗎?
是的,CodeBull 支援優化後的二進制文件,儘管某些變數值可能會被優化掉。
會有效能開銷嗎?
僅在插樁點引入極小的開銷。當沒有啟用任何插樁點時,開銷為零。