bpftrace几种使用实例

news/2024/7/8 1:34:29 标签: 运维

1. 排查内存泄漏

memory.c
在这里插入图片描述
在这里插入图片描述
memory.bt
在这里插入图片描述
可以执行相关memory,用bpftrace追踪malloc和free的过程
在这里插入图片描述
修改memory.bt,加上malloc和free统计,重新执行
在这里插入图片描述
在这里插入图片描述

2. 验证tcp连接关闭是应用关闭还是内核关闭

nginx服务启动后,会处于监听状态,当客户端与nginx服务建立成功后,如果经历post_accept_timeout秒后仍然没有收到用户数据,则内核会直接丢弃连接,可以使用bpftrace验证这个场景nginx显式调用close是应用关闭还是内核释放

nginx关闭连接是调用nginx_close_connection进行关闭的
在这里插入图片描述
nginx.bt
在这里插入图片描述
在这里插入图片描述
可以根据打印结果,可以发现是nginx显式调用ngx_close_connection关闭连接的

3. 追踪线程创建过程

pthread.c
在这里插入图片描述
编译

gcc -o pthread pthread.c  -lpthread

pthread.bt
在这里插入图片描述
在这里插入图片描述

4. pbftrace内核中打印连接的地址信息

transmit_skb.bt
在这里插入图片描述

在这里插入图片描述


http://www.niftyadmin.cn/n/5535999.html

相关文章

DT浏览器很好用

DT浏览器是一款简单的浏览器,又是强大的浏览器,界面简洁大方,软件使用流畅。DT浏览器的网址收藏,人工智能写作,书法笔记等功能与众不同。DT浏览器的图文识别功能和笔记本搭配使用,可以对内容编辑修改和保存…

k8s-第二节-常用操作

k8s命令行常用操作 k8s命令行 操作对象时都要前面声明操作对象类型 kubectl get kubectl describe kubectl delete kubectl edit kubectl logs kubectl exec kubectl port-forward 端口转发将pod 端口映射出来 kubectl cp 本地文件路径:容器文件路径 kubectl apply …

开始尝试从0写一个项目--前端(一)

基础项目构建 创建VUE初始工程 确保自己下载了node.js和npm node -v //查看node.js的版本 npm -v //查看npm的版本 npm i vue/cli -g //安装VUE CLI 创建 以管理员身份运行 输入:vue ui 就会进入 点击创建 自定义项目名字,选择npm管理 结…

如何用C++写一个死锁

死锁就是多个进程或者线程竞争临界资源所造成的僵局 最简单的死锁,线程x持有资源a请求资源b,线程y持有资源b请求资源a,死锁了 设置两个全局变量当作线程共享资源,为了让两个线程分别持有一个资源让它们抢到一个资源后睡一会让另…

记录OSPF配置,建立邻居失败的过程

1.配置完ospf后,在路由表中不出现ospf相关信息 [SW2]ospf [SW2-ospf-1]are [SW2-ospf-1]area 0 [SW2-ospf-1-area-0.0.0.0]net [SW2-ospf-1-area-0.0.0.0]network 0.0.0.0 Jul 4 2024 22:11:58-08:00 SW2 DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5.25 .1…

【D3.js in Action 3 精译】1.2.3 Canvas 与 WebGL + 1.2.4 CSS

当前内容所在位置 第一部分 D3.js 基础知识 第一章 D3.js 简介 1.1 何为 D3.js?1.2 D3 生态系统——入门须知 1.2.1 HTML 与 DOM1.2.2 SVG - 可缩放矢量图形1.2.3 Canvas 与 WebGL ✔️1.2.4 CSS ✔️1.2.5 JavaScript(精译中 ⏳)1.2.6 Node …

C语言学习笔记--第一个程序

第一个C语言程序 #include<stdio.h> //引用输入输出头文件&#xff0c;每一次都需要引用这个文件 //.h是头文件 // .c是源文件 // .cpp是C源文件&#xff0c;兼容C //C的第一个程序 // 行注释&#xff08;只能注释这一行&#xff09; /*块注释 */ int main() {printf(&…

第3章.中央服务器的物联网模式--规则引擎

规则引擎 规则引擎本质上是物联网事件和需要与这些事件相关联的动作之间的映射。在物联网环境中&#xff0c;事件通常使用传感器生成&#xff0c;所需的动作由执行器采取。本书中用于该图案的符号如下图所示&#xff1a; 图3.6–“规则引擎”模式的符号 一个有趣的类比是将规则…