当前位置: 首页 > news >正文

5.9 BCC工具之nodejs_http_server.py简介

一,nodejs_http_server.py简介

同样地,我们先了解下USDT,USDT即Userland Statically Defined Tracing,它是一种静态定义的跟踪技术,用于在用户空间应用程序中添加自定义的跟踪点。USDT利用DTrace(动态跟踪)框架,允许开发者在代码中定义跟踪点,并在需要时启用它们。这样,开发人员可以在不改变程序代码的情况下,对程序的运行时行为进行详细的分析和调试。

nodejs_http_server同样利用了USDT来跟踪node.js HTTP服务器请求。

二,代码示例

#!/usr/bin/pythonfrom __future__ import print_function
from bcc import BPF, USDT
from bcc.utils import printb
import sysif len(sys.argv) < 2:print("USAGE: nodejs_http_server PID")exit()
pid = sys.argv[1]
debug = 0# 加载BPF程序
bpf_text = """
#include <uapi/linux/ptrace.h>
int do_trace(struct pt_regs *ctx) {uint64_t addr;char path[128]={0};bpf_usdt_readarg(6, ctx, &addr);bpf_probe_read_user(&path, sizeof(path), (void *)addr);bpf_trace_printk("path:%s\\n", path);return 0;
};
"""# 根据指定的P

相关文章:

  • [前端开发] 常见的 HTML CSS JavaScript 事件
  • aiofiles:解锁异步文件操作的神器
  • Unity类银河恶魔城学习记录7-6 P72 Bouncy sword源代码
  • LLM之LangChain(七)| 使用LangChain,LangSmith实现Prompt工程ToT
  • 树与二叉树---数据结构
  • bat脚本 创建计划任务 一分钟设置ntp同步周期为60s
  • Gin框架: 快速搭建起一个Web应用环境及处理不同类型的响应
  • wordpress外贸成品网站模板
  • 二叉树相关OJ题
  • Python编程中的异常处理
  • 利用Excel模拟投币试验
  • 简单试验:用Excel进行爬虫
  • 双活工作关于nacos注册中心的数据迁移
  • javaweb学习day03(JS+DOM)
  • python第六节:字典dict(2)
  • 分享的文章《人生如棋》
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 【Linux系统编程】快速查找errno错误码信息
  • 2017届校招提前批面试回顾
  • 2017年终总结、随想
  • 30天自制操作系统-2
  • Java IO学习笔记一
  • javascript数组去重/查找/插入/删除
  • Js基础知识(一) - 变量
  • JS数组方法汇总
  • k8s 面向应用开发者的基础命令
  • nodejs实现webservice问题总结
  • Vue2.0 实现互斥
  • 浮现式设计
  • 解析带emoji和链接的聊天系统消息
  • 聊聊hikari连接池的leakDetectionThreshold
  • 排序算法学习笔记
  • 一天一个设计模式之JS实现——适配器模式
  • 用Node EJS写一个爬虫脚本每天定时给心爱的她发一封暖心邮件
  • Linux权限管理(week1_day5)--技术流ken
  • NLPIR智能语义技术让大数据挖掘更简单
  • 阿里云移动端播放器高级功能介绍
  • ​LeetCode解法汇总2670. 找出不同元素数目差数组
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • #我与Java虚拟机的故事#连载15:完整阅读的第一本技术书籍
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (备忘)Java Map 遍历
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (九十四)函数和二维数组
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (小白学Java)Java简介和基本配置
  • (一)基于IDEA的JAVA基础1
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划
  • .NET 的静态构造函数是否线程安全?答案是肯定的!
  • .NET 分布式技术比较
  • @RequestMapping用法详解