我正在幫助開發一個內部雲基礎架構(OpenStack),爲我們的部門提供AWS/Rackspace/SoftLayer /等的完全內部部署選擇。生產Linux系統(RH/CentOS和Debian/Ubuntu)中系統級跟蹤的狀態是什麼?
我的老闆剛剛向一位內部客戶轉達了一個問題,他要求我們支持DTrace。我知道Oracle DTrace Project和dtrace4linux和Linux自己的本機SystemTap(我記得最初是建立在Linux kprobes;但我收集比新版本的SystemTap可以利用到DTrace或uprobes修補程序,這些修補程序合併到3.5內核)。我也聽說過Sysdig和LTTng甚至fulltrace(什麼是Linux內核ftrace
和uprobes
支持之間的區別?)
我最初的反應是詢問該用戶是否已經嘗試有效利用ltrace和它的-S
選項交叉系統呼叫跟蹤(àla strace)。
但是我也想在客戶回來之前知道更多。
我的第一個也是最重要的問題是:哪些選項可用於CentOS 6,6.5和7.0「開箱即用」(無需替換庫存內核)? Ubuntu 12.04和14.04 LTS版本的同樣問題?
從雲VM實例(OpenStack Nova,KVM)中,這些特別適合或特別不適用?
這些選項是否有相當好的和合理的近期比較?對於他們每個人所投入的時間和精力投資,我最好的選擇是什麼?
什麼都發生在尼爾斯·普羅沃斯的工作對Systrace
Brendan Gregg在其網站http://www.brendangregg.com/Slides/LinuxConEU2014_LinuxPerfTools.pdf上有幾個關於linux perf/tracing的概述。列出了一些示蹤劑 - 幻燈片37,47,48,65-78:「\t示蹤劑:\t - perf_events,\t ftrace,\t eBPF,\t的SystemTap,\t ktap,\t LTTng,\t dtrace4linux,\t sysdig」 – osgx 2015-04-24 03:44:00
我見過布倫丹在人(大規模)交談。那些是優秀的資源。我只是希望有一些新的共識和鞏固。 – 2015-04-24 17:46:04