Saturday, April 9, 2022

[Parca]測試 Polar Signals 開源 Parca (基於eBPF 的profiler)

前陣子發現在Github上有個open-source projects: Parca (包含Server & Agent ),扒文了一下,Parca是Solar Signals的一個開源項目。它是持續分析存儲、查詢引擎和一個基於eBPF 的profiler。其目的在通過系統地測量代碼性能將可觀察性空間提升到一個新的水平,使每個人都能夠優化他們的代碼。

Parca 旨在將持續分析技術帶給所有人;其打包了許多開箱即用的功能,包括收集、存儲和提供可用於長期查詢的profiles 的能力— 包括CPU 分析,以確定CPU 執行一段特定代碼所需的時間。相關資源如下:

Github:
https://github.com/parca-dev/parca-agent
https://github.com/parca-dev/parca

Document:
https://www.parca.dev/


我依照官網文件做個簡單的CPU 分析功能測試如下:

Parca-Agent:

curl -sL https://github.com/parca-dev/parca-agent/releases/download/v0.7.0/parca-agent_0.7.0_`uname -s`_`uname -m`.tar.gz | tar xvfz - parca-agent
sudo ./parca-agent --node=hsl --systemd-units=docker.service --log-level=debug --kubernetes=false --store-address=localhost:7077 --insecure

Parca Server ( 改用 port:7077 )

curl -sL https://github.com/parca-dev/parca/releases/download/v0.10.0/parca_0.10.0_`uname -s`_`uname -m`.tar.gz | tar xvfz - parca
./parca --config-path="parca.yaml" --port=":7077"


開啟網頁後可以看到CPU profile的畫面,相當厲害!









No comments: