Hi community! My name is YuSheng Zheng and I am an Open Source Promotion Plan 
2022 student working with hui li(yousa). This Apache APISIX Profile tool is a
OSPP project and the initial content will be developed by us.

Currently we already have a prove-of-concept demo repo for this tool, which 
can be the initial content for this project in the future:

https://github.com/yunwei37/nginx-lua-ebpf-toolkit

This POC is written in C/C++ with libbpf, and can be used as a binary cmd 
tool run on any supported Kernel versions. More details about how it works can 
be found in this POC repo.

I would like to hear comments and suggestions from the community. 
Thanks very much!

Jintao Zhang <zhangjin...@apache.org> ??2022??7??23??(??????) ????11:17??????

&gt; Hi, hui
&gt; 
&gt; I'm also looking forward to see such a project.
&gt; 
&gt; But I have a few questions:
&gt; 
&gt; * Where did the initial content for this project come from?
&gt; * Who will develop the initial content for this project?
&gt; 
&gt; Also, from the description I don't see the relevant design of this project,
&gt; if there is more detailed information, I will upvote +1
&gt; 
&gt; Zexuan Luo <spacewan...@apache.org> ??2022??7??22?????? 10:40??????
&gt; 
&gt; &gt; Do we need to create a new subproject of the Apache APISIX for 
profiling
&gt;
&gt; Yes, I will vote for it. I am looking forward to such a project!
&gt;
&gt; hui li <yo...@apache.org> ??2022??7??21?????? 15:51??????
&gt; &gt;
&gt; &gt; The current Apache APISIX Profile tool is based on systemtap, which 
can
&gt; &gt; draw flame maps for Apache APISIX, but the original project is no 
longer
&gt; &gt; continuously maintained, and Systemtap is not friendly to new 
versions of
&gt; &gt; the kernel support, the tool is more complicated to use (you need to
&gt; &gt; install systemtap, debug symbol, etc.)
&gt; &gt;
&gt; &gt; So I would like to discuss that, 'Do we need to create a new 
subproject
&gt; of
&gt; &gt; the Apache APISIX for profiling?'
&gt; &gt;
&gt; &gt; Considering the functionality of the project, I think it is more
&gt; &gt; appropriate to call the subproject 'apisix-profile'.
&gt; &gt;
&gt; &gt; Subroject Function List:
&gt; &gt; 1. Use eBPF to capture and parse lua call stack information in Apache
&gt; &gt; APISIX, summarize it and generate cpu flame graphs.
&gt; &gt; 2. Use eBPF to capture and parse both C and Lua mixed call stack
&gt; &gt; information, summarize it and generate cpu flame graph.
&gt; &gt; 3. Support fetching Apache APISIX processes running in Docker
&gt; &gt; 4. Support to get Apache APISIX Openresty luajit 32/luajit 64 mode
&gt;</yo...@apache.org></spacewan...@apache.org></zhangjin...@apache.org>

Reply via email to