文档章节

systemtap安装与使用

banwh
 banwh
发布于 2017/08/25 15:44
字数 248
阅读 14
收藏 0

http://sourceware.org/systemtap/tutorial.pdf

 

安装systemtap环境

#yum install systemtap systemtap-runtime

安装内核调试信息

连上外网,使用stap-prep 命令安装

# stap-prep

如果不能连上外网,或者没有yum源,需要手动下载内核调试信息安装

首先查看内核版本号uname -r

[root@ceph1 ~]# uname -r
3.10.0-123.el7.x86_64

那么需要安装的内核包如下:

kernel-debuginfo-3.10.0-123.el7.x86_64

kernel-debuginfo-common-x86_64-3.10.0-123.el7.x86_64

kernel-devel.x86_64-3.10.0-123.el7.x86_64

安装ceph调试信息包

ceph-debuginfo.x86_64

 并安装,ceph调试包的版本号,必须和所部署的ceph的版本号一致。

 

使用systemtap

#vi osd.stp

probe   process("ceph-osd").function("OSD::*").call
,   process("ceph-osd").function("OSDService::*").call
{
       printf("%s -> %s\n", thread_indent(4), ppfunc());
}​​​​​​​

process表示程序的名称,function表示函数的名字,如果OSD::*,表示输出所有OSD类的相关函数。

printf表示打印出,用法类似C语言的printf,thread_indent表示打印线程号,ppfunc()表示打印出函数名

运行

#stap -x {osdpid} osd.stp 

 

© 著作权归作者所有

共有 人打赏支持
banwh
粉丝 1
博文 54
码字总数 79705
作品 0
海淀
程序员
Linux 自检和 SystemTap

Linux 自检和 SystemTap 11/20. 2013 用于动态内核分析的接口和语言 现代的操作系统内核提供自检 功能,即动态地检查内核以理解其行为的能力。这些行为可以反映内核问题和性能瓶颈。拥有这些...

Edwin_Lau
2013/12/04
0
0
使用systemtap调试linux内核

安装SystemTap(ubuntu10.10) 简便的安装方式通过下面命令直接下载并安装在系统里: # sudo apt-get install systemtap 也可以去http://sourceware.org/systemtap/getinvolved.html 下载各种...

harrylee007
2012/01/09
0
0
systemtap系列之实用脚本

安装完systemtap相关rpm包之后, 在路径/usr/share/systemtap/testsuite/systemtap.examples/或者/usr/share/doc/systemtap-client-3.0/examples/network/中有所有可实用的脚本。 1. 网络 查看......

binarydady
06/20
0
0
systemtap系列之语法精粹

1. 常用技巧 systemtap可以实现交叉编译: 编译可执行模块如下: stap -r kernelversion script -m modulename 运行命令如下: staprun module_name.ko stap命令会读取脚本的指令,并翻译成C...

binarydady
06/14
0
0
性能调优之综合篇 - Linux系统性能监控和故障排查利器Sysdig

Sysdig绝对是可以跟SystemTap相媲美的工具,都是系统故障排查的利器,不论是开发人员还是运维人员都必须要掌握的一个工具。今天先介绍一下Sysdig的一些特性。官网上说Sysdig是Strace, Tcpdu...

shanker
06/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

linux 系统的运行级别

运行级别 运行级别 | 含义 0 关机 1 单用户模式,可以想象为windows 的安全模式,主要用于修复系统 2 不完全的命令模式,不含NFS服务 3 完全的命令行模式,就是标准的字符界面 4 系统保留 5 ...

Linux学习笔记
今天
2
0
学习设计模式——命令模式

任何模式的出现,都是为了解决一些特定的场景的耦合问题,以达到对修改封闭,对扩展开放的效果。命令模式也不例外: 命令模式是为了解决命令的请求者和命令的实现者之间的耦合关系。 解决了这...

江左煤郎
今天
3
0
字典树收集(非线程安全,后续做线程安全改进)

将500W个单词放进一个数据结构进行存储,然后进行快速比对,判断一个单词是不是这个500W单词之中的;来了一个单词前缀,给出500w个单词中有多少个单词是该前缀. 1、这个需求首先需要设计好数据结...

算法之名
昨天
15
0
GRASP设计模式

此文参考了这篇博客,建议读者阅读原文。 面向对象(Object-Oriented,OO)是当下软件开发的主流方法。在OO分析与设计中,我们首先从问题领域中抽象出领域模型,在领域模型中以适当的粒度归纳...

克虏伯
昨天
1
0
Coding and Paper Letter(四十)

资源整理。 1 Coding: 1.Tomislav Hengl撰写的非官方作者指南:Michael Gould•Wouter Gerritsma。 UnofficialGuide4Authors 2.R语言包rwrfhydro,社区贡献的工具箱,用于管理,分析和可视化...

胖胖雕
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部