Analyzer
目錄
介紹
分析器是用來分析各種程式問題的指令碼工具。
每個分析器都有自己的用途。
你可以使用 orxray analyzer
子命令來獲取分析器列表,搜尋分析器,建立和執行分析器。
用法
Usage: orxray analyzer command [OPTIONS]
COMMAND:
create
run
list
search
GLOBAL OPTIONS:
--help
--config specify config file, default is ~/.orxray/config.
Create
用法
這個命令建立一個新的分析器
Usage: orxray analyzer create <name> [OPTIONS]
OPTIONS:
--desc Description.
--ysql YSQL.
--ylang Ylang.
--ylua Ylua.
--opslang Opslang.
GLOBAL OPTIONS:
--help
--config specify config file, default is ~/.orxray/config.
<name>
分析器的名稱
--desc "description"
分析器的相關描述
--ysql 'YSQL code'
分析器指令碼使用的 YSQL 程式碼
--ylang 'Ylang code'
分析器指令碼使用的 Ylang 程式碼
--ylua 'ylua code'
分析器指令碼使用的 Ylua 程式碼
--opslang 'opslang code'
分析器指令碼使用的 Opslang 程式碼
示例
使用 YSQL 程式碼來建立一個分析器,分析器可以列印程序的記憶體相關資訊。
$ orxray analyzer create cli-test --ysql 'select res_mem from proc'
ID: 10075
Run
執行一個你指定的分析器
用法
Usage: orxray analyzer run tool [OPTIONS]
OPTIONS:
-a, --agent integer agent id, please use agent default command to set default agent.
-p, --pid integer pid. If pid is negative, will auto find the pgid of the -pid.
-c, --exe string command.
-t integer sample time in seconds.
--y-var ylang variable. Change the Ylang variable in runtime.
GLOBAL OPTIONS:
--help
--config specify config file, default is ~/.orxray/config.
示例
下面的例子在預設的 agent 上執行 c-on-cpu 分析工具來對程序4502進行分析。
執行完後你可以去訪問返回的 URI 網址來檢視生成的火焰圖。
$ orxray analyzer run c-on-cpu -p 4502
Goto https://your_id.xray.openresty.com/targets/27/history/8885766 for charts.
下面的例子在預設 agent 上執行 c-on-cpu 分析工具來對程序4502 所在的程序組進行分析。 注意這裡面傳遞的是引數是 -4502。
$ orxray analyzer run c-on-cpu -p -4502
Goto https://your_id.xray.openresty.com/targets/27/history/8885767 for charts.
下面的例子分析程序 ID 為 4052 的程序,並傳遞引數 pcre_unwind=1。
$ orxray analyzer run lj-c-on-cpu -p 4502 --y-var pcre_unwind=1
Goto https://your_id.xray.openresty.com/targets/27/history/8885767 for charts.
List
顯示出所有的分析器資訊。
用法
Usage: orxray analyzer list
OPTIONS:
-s, --page-size integer page size, 10(default).
GLOBAL OPTIONS:
--help
--config specify config file, default is ~/.orxray/config.
-s, --page-size integer
指定返回資料項的最大數目
示例
$ orxray analyzer list
ID NAME DESCRIPTION
1 count-on-cpu-frames count on cpu frames
2 count-off-cpu-frames count off cpu frames
3 lj-c-on-cpu C-land CPU Flame Graph
7 c-on-cpu C-land CPU Flame Graph
8 c-off-cpu C-land off-CPU Flame Graph
9 kernel-on-cpu kernel-land on-CPU Flame Graph
11 resty-memory Application-Level Memory Usage Breakdown
12 count-lj-newgco-frames count LuaJIT new GC objects frames
14 glibc-chunks Distributions of Memory Chunk Sizes in Glibc Allocator
15 lj-gco-stat Statistics for LuaJIT GC Objects
Search
可以根據關鍵字來搜尋分析器
用法
Usage: orxray tool search WORD [OPTIONS]
OPTIONS:
-s, --page-size integer page size, 10(default).
GLOBAL OPTIONS:
--help
--config specify config file, default is ~/.orxray/config.
-s, --page-size integer
指定返回搜尋到的分析器的最大數目
示例
搜尋關鍵字cpu相關的工具
$ orxray analyzer search cpu
count-on-cpu-frames
count-off-cpu-frames
lj-c-on-cpu
lj-lua-on-cpu
lj-c-off-cpu
lj-lua-off-cpu
c-on-cpu
c-off-cpu
kernel-on-cpu
count-lj-c-on-cpu