parca ingestion 模式
从上图可以看出parca 支持的模式,包含了pull以及push
模式说明
- push 模式
基于agent 进行push 处理,利用ebpf 进行获取处理,然后转换为pprof,然后push 到后端存储 - pull 模式
核心是基于pprof client 生成对应的文件内容,然后利用parca 支持类似prometheus pull 模式的数据拉取,比较依赖client,不同语言支持的情况不一样
可选模式
因为对于perf 的数据可以通过perf_data_converter转换为pprof 格式文件,然后通过一个静态文件的拉取模式(fgprof),基于yaml 配置文件就可以了
scrape_configs:
- job_name: "default"
scrape_interval: "60s"
scrape_timeout: "45s"
static_configs:
- targets: [ '127.0.0.1:7070' ]
profiling_config:
pprof_config:
fgprof:
enabled: true
path: /debug/pprof/fgprof
参考资料
https://www.parca.dev/docs/ingestion
https://github.com/google/<wiz_tmp_highlight_tag class="cm-searching">perf_<wiz_tmp_highlight_tag class="cm-searching">data_<wiz_tmp_highlight_tag class="cm-searching">converter