alibaba / tsar

Taobao System Activity Reporter
Apache License 2.0
2.48k stars 735 forks source link

support common arguments in modules 关于模块的参数问题 #26

Closed mingzym closed 6 years ago

mingzym commented 10 years ago

tsar的模块,目前比较土,多只有一个 --cpu这样的命令行参数,配以 mod_cpu on这样的配置方法。在后面我们碰到的问题里,我们遇到了很多关于模块需要参数的情况如:

从上面的各种情况看,我们需要统一规范命令行、配置文件中的模块基本参数、模块列数据选择参数、模块的多item参数格式。

命令行参数格式

[--modulename [item1:][argument=value],... [item2[:argument=valule],...]... ]

多item格式:

--proc traffic_server httpd

参数格式:

--squid 80:port=80 81:port=81

--ts_client socket=/var/run/trafficserver/mgmtsocket

配置文件:

mod_proc [on] traffic_server httpd
mod_squid 80:port=80 81:port=81
mod_ts_client socket=/var/run/trafficserver/mgmtsocket

命令行列选择:

--cpu ::user,util

以上信息应可以在--live模式下用,也可以在log模式下用:

tsar --live --cpu ::user,util -i 2

多个item定制:

tsar --squid 80:port=80::qps,rt 81:port=81::qps,rt --live
mod_squid 80:port=80 81:port=81
tsar --squid 80::qps,rt 81::rt

列所有磁盘的io情况,只列出await,svct列:

tsar --io ::await,svct

以上proposal是比较大的节目改变,需要提入v3.0的日程里。

mingzym commented 10 years ago

::looks weird, how to make it a more human readable?

kongjian commented 6 years ago

tsar support arg now