手机
当前位置:查字典教程网 >编程开发 >php教程 >linux命令之调试工具strace的深入分析
linux命令之调试工具strace的深入分析
摘要:参考1《linux的strace命令(详解).txt》新浪电子书可下载2manstrace一个基本上通用的完整的用法:strace-oout...

参考

1《linux的strace命令(详解).txt》 新浪电子书可下载

2man strace

一个基本上通用的 完整的用法:

strace -o output.txt -T -tt -e trace=all -p 28979

上面的含义是 跟踪28979进程的所有系统调用(-e trace=all),并统计系统调用的花费时间,以及开始时间(并以可视化的时分秒格式显示),最后将记录结果存在output.txt文件里面。

必须记住的几个用法

1)strace -p pid 可以跟踪某个后台进程

2)strace -o filename 把跟踪结果输出到文件

3)strace -T 记录每个系统调用花费的时间,可以看看哪个系统调用时间长

4)strace -t (或者 -tt)记录每个系统调用发生是的时间(时分秒的格式)

5)strace -s 1024 显示系统调用参数时,对于字符串显示的长度, 默认是32,如果字符串参数很长,很多信息显示不出来。

6)strace -e trace=nanosleep 只记录相关的系统调用信息。

-e trace=network // 只记录和网络api相关的系统调用

-e trace=file // 只记录涉及到文件名的系统调用

-e trace=desc // 只记录涉及到文件句柄的系统调用

还有其他的包括process,ipc,signal等。

一个经典的,通过strace查看一个进程所有相关打开文件的排查过程,参考《linux的strace命令(详解).txt》 新浪电子书可下载

如果开发程序没有一个强大的工具相伴,那么开发效率会非常低,甚至遇到问题无从下手. 现在开始学习linux下的强大的调试工具strace,并记录于此.

strace

1)类似于windows下的processexp.exe

可以监控系统调用

2)类似于windows下的depand工具

可以检查程序的依赖库. 比linux下的ldd更强大.

参考:strace命令用法

点击下载

案例:

strace帮助我解决不知日志文件被打印到哪的问题.

用strace跟踪server

/usr/bin/strace -p pid -o out.file

然后执行client端,然后结束strace,查看out.file 搜索write,open的系统调用

【linux命令之调试工具strace的深入分析】相关文章:

php开发中的页面跳转方法总结

PHP中路径问题的解决方案

社区(php&&mysql)六

一个高ai的分页函数和一个url函数

php-fpm 启动参数及重要配置详解

Get或Post提交值的非法数据处理

微信access_token的获取开发示例

最省空间的计数器

PHP数组和explode函数示例总结

十天学会php之第二天

精品推荐
分类导航