Homebrew 使用 InfluxDB 收集匿名分析。您會在第一次執行 brew update
或安裝 Homebrew 時收到通知。在顯示此通知後,分析才會啟用,以確保您可以在不傳送分析資料的情況下 選擇退出。
Homebrew 免費提供,完全由志工在閒暇時間執行。因此,我們沒有資源對 Homebrew 使用者進行詳細的使用者研究,以決定如何最佳設計未來功能並優先處理目前的工作。匿名分析讓我們可以根據人們使用 Homebrew 的方式、地點和時間來優先處理修正和功能。例如
Homebrew 的匿名分析在 InfluxDB 中有 365 天的保留期。
Homebrew 的分析會為每個配方或 cask 事件記錄一些共用資訊
true
。/opt/homebrew
) 或自訂前置詞 (例如 /home/mike/.brew
)。如果您的前置詞是自訂的,它將會以 custom-prefix
傳送,以保持匿名性。HOMEBREW_DEVELOPER
環境變數,則為 true
。devcmdrun
,例如,如果您曾經執行過 Homebrew 的開發人員指令之一,則為 true
。x86_64
。macOS 13
。4.0.0
。先前傳送至 Google Analytics 的所有分析資料都已銷毀。
Homebrew 的分析會記錄下列不同的事件
install
事件類別和 Homebrew 配方,以及任何用作動作的選項 (例如 wget --HEAD
)。這讓我們可以找出應該優先處理哪些配方的工作,以及如何處理任何配方的可能棄用或移除。install_on_request
事件類別和 Homebrew 公式(例如使用 brew install
明確命名時)加上選項。這讓我們能區分使用者打算安裝的公式和作為依賴項而拉入的公式。cask_install
事件類別和 Homebrew cask 作為動作時。這讓我們能辨識應優先處理哪些 cask,以及如何處理任何可能的棄用或移除。build_error
事件類別和 Homebrew 公式加上選項,例如 wget --HEAD
。這讓我們能辨識可能需要修正的公式。不會傳送建置錯誤的詳細資料或記錄。command_run
事件類別和命令和標記。這讓我們能辨識最常使用和完全不使用的命令和標記。test_bot_test
事件類別,用於記錄在 pull request 上執行測試的結果。你也可以透過在你的環境中設定 HOMEBREW_ANALYTICS_DEBUG=1
來檢視 Homebrew 分析傳送的所有資訊。請注意,這也會停止傳送任何分析資料。
Homebrew 開發人員不可能將任何特定事件與任何特定使用者配對。我們不會儲存或接收 IP 位址。
Homebrew 的分析會在整個 Homebrew 執行期間透過 HTTPS 傳送至 InfluxDB。
分析事件的彙總資料 公開提供。也提供 JSON API。大多數 Homebrew 維護人員不會獲得超出這些公開資源的更詳細分析資料。
代碼可於 analytics.rb
和 analytics.sh
中查看。它們在一個獨立的背景程序中執行,並且快速失敗以避免延遲任何執行。如果您沒有網路連線,它們將立即且靜默地失敗。
Homebrew 分析有助於我們維護人員,並感謝您讓它保持開啟狀態。但是,如果您想退出 Homebrew 的分析,您可以在您的環境中設定這個變數
export HOMEBREW_NO_ANALYTICS=1
或者,這將防止分析被傳送
brew analytics off