shitou's blog 

  • Home
  • About
  • Feed
  • 十人族
  • MIX BOY
  • 塌客

Category "linux"

17
Nov

strace使用

有点out了,刚发现一个非常好用的系统调试工具,strace,用来跟踪进程或者程序的执行过程,打印出所有的内核态调用过程,例如文件的open, read 操作,可以用来调试程序的执行过程。

 

#跟踪ls命令的执行过程,将结果导向output.txt文件

#strace -o output.txt ls

 

输出的结果中每行开头都是系统的一个方法调用,如write. open等

 

#跟踪进程pid 3334的执行过(可以跟多个-p开关),打印出来最长80个字符,并且只打印出来open,read的相关操作

#strace -p 3334 -s 80 -e trace=open,read

 

可以用strace来调试apache的执行过程,进行配置的debug,例如apache在打开AllowOverride All时strace apache的进程会发现有很多open操作,apache需要遍历web目录下所有的目录查找.htaccess文件,当设置为none时open操作明显减少,可以结合压力测试看到效果,

 

上面说了trace只能跟踪内核态调用过程,不能跟踪用户态的操作,比如php页面进行的逻辑运算,数据库的操作等是不能跟踪的。

 

另: Mac OS上同功能的工具是dtruss

 

参考:

http://www.gnome.org/~newren/tutorials/developing-with-gnome/html/ch03s02.html

http://www.cyberciti.biz/tips/linux-strace-command-examples.html

http://humberto.digi.com.br/blog/2008/02/25/strace-on-mac-os-x-leopard/

 

 

Tags: command

2009-11-17 21:54:54, 1249 reviews, comment

send to mailbox

Your email:

Related Posts

find使用非业余研究

TOP

Tags

json Impactjs Canvas fun gen_server superfly PS3 Webgame HTML5 jquery SSH tenerer MooseFS gearman-ruby Gearman MongoDB MochiChat TCP U-ka saegusa IN db command Mai Kuraki Norah Jones log iPhoneException ACG Mac Safari objective-c CouchDB LVS AJAX debian 推荐 AMQP google mail bug gettext Erlang 北京 iptables 架构 tips mysql backup function 我看 postfix 监控 SEO cache Etag memcache thread 进程 线程 无锡 yield file column mixboy xml rss gems ruby shitou shell lighttpd 安全 csrf 公司 nginx linux 模块 apache webserver 朋友 大学 生活 尼古拉斯凯奇 movie 文件同步 笑笑 歌词 auto complete plugin rails music ubuntu blog

Category

  • HTML5[3]
  • iPhone[17]
  • Erlang[11]
  • google[13]
  • 生活[45]
  • 音乐[13]
  • 电影[11]
  • linux[29]
  • web server[6]
  • mail server[3]
  • cluster[1]
  • system manage[9]
  • ruby[20]
  • ruby on rails[28]
  • 开源[4]

Episode

  • MongoDB
  • MochiChat
  • iPhoneException
  • shell
  • thread
  • memcache


Popular Posts

  • 准备开始学习Erlang了(恶狼, 二郎..)
  • Ruby遍历MemCached的key
  • 服务器监控小脚本
  • MySQL Innodb备份
  • [转载]5个有用的ruby gems

Recommended Posts

  • Tri-survive - HTML5 Game
  • Cut the rope - HTML5版
  • json_formatter
  • 在gen_server中spawn新的进程
  • Superfly - Wildflowers
  • 继续凸墙 for Mac OS
  • MongoDB Beijing 2011
  • MongoDB删除map_reduce生成的tmp collection
  • Mai Kuraki - Future Kiss
  • Erlang OOP
  • 用SSH tunnel凸墙
  • Google的语法高亮工具包
  • 大量数据的批量操作
  • 再次被和谐-_-
  • 十人族: 上线了

Friends' blogs

  • levy
  • sphance
  • andreas
  • yangkunlun
  • {:dev=>:wxianfeng}
  • bheye
  • joeydarko

Login

   注册

留言 查看留言

留言

   取消

留言 查看留言


Statistics

  • 访问次数: 316267
  • 今天访问: 62
  • 日志: 213
  • 评论: 4967
  • 音乐: 9
  • 用户: 1759


少女,不点下广告吗!

 

all by shitou

blog comments powered by Disqus

close