【Linux】 诊断工具-strace】的更多相关文章

原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介 Linux上有大量的问题诊断工具,如perf.bcc等,但这些诊断工具,虽然功能强大,但却需要很高的权限才可以使用. 而0x.tools这个工具提供了一个很好的思路,通过采样/proc目录来诊断问题,对被测量程序几乎无性能影响,且只要与目标进程拥有同等级的权限,即可正常使用. 不要小看这个权限区别,在互联网大厂,开发同学一般只能获取到一个受限于容器内的shell环境,想要获取机器的root权限几乎是不可能的.…
1,别人家的总结: http://www.cnblogs.com/bangerlee/archive/2012/02/20/2356818.html 2,我自己碰到问题: 暂无. 3,使用场景: 程序挂死.命令执行报错,根据程序日志和系统日志无法看出原因.…
strace是个功能强大的Linux调试分析诊断工具,可用于跟踪程序执行时进程系统调用(system call)和所接收的信号,尤其是针对源码不可读或源码无法再编译的程序. 在Linux系统中,用户程序运行在一个沙箱(sandbox)里,用户进程不能直接访问计算机硬件设备.当进程需要访问硬件设备(如读取磁盘文件或接收网络数据等)时,必须由用户态模式切换至内核态模式,通过系统调用访问硬件设备.strace可跟踪进程产生的系统调用,包括参数.返回值和执行所消耗的时间.若strace没有任何输出,并不…
1.问题: 最近在做日志的实时同步,上线之前是做过单份线上日志压力测试的,消息队列和客户端.本机都没问题,但是没想到上了第二份日志之后,问题来了: 集群中的某台机器 top 看到负载巨高,集群中的机器硬件配置一样,部署的软件都一样,却单单这一台负载有问题,初步猜测可能硬件有问题了. 同时,我们还需要把负载有异常的罪魁祸首揪出来,到时候从软件.硬件层面分别寻找解决方案. 2.排查: 从 top 中可以看到 load average 偏高,%wa 很高,%us 偏低: 从上图我们大致可以推断 IO…
1.lsof 简介 lsof 是 Linux 下的一个非常实用的系统级的监控.诊断工具. 它的意思是 List Open Files,很容易你就记住了它是 “ls + of”的组合~ 它可以用来列出被各种进程打开的文件信息,记住:Linux 下 “一切皆文件”, 包括但不限于 pipes, sockets, directories, devices, 等等. 因此,使用 lsof,你可以获取任何被打开文件的各种信息. 只需输入 lsof 就可以生成大量的信息,因为 lsof 需要访问核心内存和各…
转  http://www.cnblogs.com/bangerlee/archive/2012/02/20/2356818.html 引言 “Oops,系统挂死了..." “Oops,程序崩溃了..." “Oops,命令执行报错..." 对于维护人员来说,这样的悲剧每天都在上演.理想情况下,系统或应用程序的错误日志提供了足够全面的信息,通过查看相关日志,维护人员就能很快地定位出问题发生的原因.但现实情况,许多错误日志打印模凌两可,更多地描述了出错时的现象(比如"c…
Systemtap的原理,Systemtap与DTrace比较,以及安装要求和安装步骤本系列文章详细地介绍了一个Linux下的全新的调式.诊断和性能测量工具Systemtap和它所依赖的基础kprobe以及促使开发该工具的先驱DTrace并给出实际使用例子使读者更进一步了解和认识这些工具. 本文是该系列文章之三,它讲解了Systemtap的原理,Systemtap与DTrace比较,以及安装要求和安装步骤,最后通过一个例子向读者展示Systemtap的工作机理.本系列文章之一讲解了kprobe的…
DTrace的原理本系列文章详细地介绍了一个 Linux 下的全新的调式.诊断和性能测量工具 Systemtap 和它所依赖的基础 kprobe 以及促使开发该工具的先驱 DTrace 并给出实际使用例子使读者更进一步了解和认识这些工具. 本文是该系列文章之二,它详细地讲解了 DTrace 的原理.本系列文章之一讲解了 kprobe 的原理.编程接口.局限性和使用注意事项并给出实际使用示例帮助读者理解和认识 kprobe.本系列文章之三讲解了 Systemtap 的原理,以及 Systemtap…
kprobe 的原理.编程接口.局限性和使用注意事项 本系列文章详细地介绍了一个Linux下的全新的调式.诊断和性能测量工具Systemtap和它所依赖的基础kprobe以及促使开发该工具的先驱DTrace并给出实际使用例子使读者更进一步了解和认识这些工具. 本文是该系列文章之一,它讲解了kprobe的原理.编程接口.局限性和使用注意事项并给出实际使用示例帮助读者理解和认识kprobe.本系列文章之二讲解了DTrace以及Systemtap与DTrace比较.本系列文章之三讲解了Systemta…
转自:http://www.cnblogs.com/bangerlee/archive/2012/02/20/2356818.html 引言 “Oops,系统挂死了..." “Oops,程序崩溃了..." “Oops,命令执行报错..." 对于维护人员来说,这样的悲剧每天都在上演.理想情况下,系统或应用程序的错误日志提供了足够全面的信息,通过查看相关日志,维护人员就能很快地定位出问题发生的原因.但现实情况,许多错误日志打印模凌两可,更多地描述了出错时的现象(比如"c…