如何建设一个网站:SystemTap是运维调试利器。

时间:2020-03-18 17:18:31 | 来源:www.jxwzjs.com.cn | 作者:江夏网站建设

如何建设一个网站:SystemTap是运维调试利器。

只用Wireshark抓包,流程思想和TcpDump是类似的,同样需要选择监听的网卡(这

里包括是否用混杂模式),填写基本的过滤条件和表达式等。考虑到图形界面不适合在服

务器端运行,故在这里不进行阐述。

在已经拥有TcpDump导出的数据包后,可以将其导入Wireshark查看,界面如图1-5

所示。图1-5显示的界面相当清新。在filter中填写过滤条件时会有自动补全的提示。比

如,只需要写"http.res",就自动提示了"http.response.code"。在第二行中,显示的是解

码后的信息,并且以协议层次作为树结构展示,这样大大提高了数据的可读性。

其中,qualifier只能是trace、abbrev、verbose、raw、signal、read、write其中之一,

默认为trace。举例如下。

◎ -eopen:等价于.e trace=open,表示只跟踪open调用。

◎ -etraceI =open:跟踪除了open以外的其他调用。

除了具体的系统调用以外,还可以指定跟踪某一类的系统调用,包括file、process、

network、signal和ipc,分别代表文件操作、进程操作、网络操作、信号操作和进程间通信。

另一个常用qualifier是signal,用来指定跟踪的系统信号,默认为all。如signal=! SIGIO

(或者signal= !io),表示不跟踪SIGIO信号。

在strace的输出中,我们经常看到大量的"ENOENT(No such file or directory)",这是

因为Linux本身对动态库和头文件等的存放位置是都多处记录的,需要全部查询来进行查

找。比如下面这样。

以在不中断和影响进程运行的情况下,暴露出其内部变量和事件信息等。

SystemTap的主要工作方式是由使用者书写一种类似awk语法的脚本语言(一般我们

会保存成.stap/.stp文件),然后根据stap脚本自动生成一个临时的内核模块并加载进内核

运行。

注意它需要使用Linux的Utrace特性来探测用户空间,所以目前对默认不支持Utrace

的Debian系服务器来说,SystemTap还不太方便使用。但对于生产线上更常见的RedHat

系服务器,SystemTap无疑是运维调试利器。

地址:武汉市武昌区云鹤大厦17楼1704室 / 联系电话:027-82823488
网址:http://www.jxwzjs.com.cn / 邮件:admin@feimao666.com
Copyright © 2017 江夏网站建设 All Rights Reserved. 技术支持:肥猫科技

QQ在线咨询
咨询热线
027-82823488
服务热线
18627148925