asp.net 網(wǎng)站開發(fā)視頻搜狗搜索推廣
目錄
一、實(shí)驗(yàn)
1.環(huán)境
2.CPU 剖析
3.CPU火焰圖
一、實(shí)驗(yàn)
1.環(huán)境
(1)主機(jī)
表1-1 主機(jī)
主機(jī) | 架構(gòu) | 組件 | IP | 備注 |
prometheus | 監(jiān)測 系統(tǒng) | prometheus、node_exporter | ?192.168.204.18 | |
grafana | 監(jiān)測GUI | grafana | 192.168.204.19 | |
agent? | 監(jiān)測 主機(jī) | node_exporter | 192.168.204.20 |
2.CPU 剖析
(1)CPU剖析
①?命令
使用perf命令在所有CPU(-a)以上49GHz(-F 49:每秒采樣數(shù))對棧蹤跡(-g)采樣30秒,列出樣本然后導(dǎo)出到指定文件
[root@prometheus ~]# perf record -F 49 -a -g -- sleep 10; perf script --header > out.stacks
②分析
在這次剖析中有2917個棧樣本,這里只包括一個棧。
③ 查看并統(tǒng)計(jì)行數(shù)
[root@prometheus FlameGraph-master]# vim ~/out.stacks
④ 統(tǒng)計(jì)行數(shù)
[root@prometheus FlameGraph-master]# wc -l ~/out.stacks
3.CPU火焰圖
(1)開源軟件構(gòu)建
① 克隆或直接下載ZIP
git clone https://github.com/brendangregg/FlameGraph; cd FlameGraph
②查看目錄
[root@prometheus ~]# ls
③分析
perf的script子命令打印了先前記錄 的剖析(perf.data文件)中的每個棧樣本FlameGraph-master.zip為上傳的開源軟件包
④ 解壓
[root@prometheus ~]# unzip FlameGraph-master.zip?
⑤再次查看目錄
[root@prometheus ~]# ls
?⑥切換目錄查詢
[root@prometheus ~]# cd FlameGraph-master/
[root@prometheus FlameGraph-master]# ls
⑦ 分析
flamegraph.pl為不同的語言提供了自定義的調(diào)色板
⑧執(zhí)行并查看
[root@prometheus FlameGraph-master]# ./stackcollapse-perf.pl < ~/out.stacks | ./flamegraph.pl --hash > out.svg
[root@prometheus FlameGraph-master]# ls
⑨ 分析
生成的out.svg文件可以在網(wǎng)絡(luò)瀏覽器中加載
⑩ Linux可視化界面查看目錄
?查看out.svg?
?另外查看自帶的perf樣例
?另外查看自帶的dtrace樣例
?