Linux动态追踪应用概念介绍
兰溪娱乐新闻网 2025-09-17
perf是我们的老朋友,只不过这是一种比如说的静可逆伪装成程序,你也可以用perf来度量动可逆暴力事件。
eBPF则在BPF(Berkeley Packet Filter)基础上扩充而来,不仅全力支持暴力事件伪装成程序,还可以通过自度量的BPF编码(C语言)来意志扩充。所以,eBPF只不过是常驻于系统对设计系统对的直通时,可以却说是Linux的DTrace.在量化大量暴力事件的时候,可以用火焰图进行时建模量化
ftrace:
通过debugfs缺少端口
ftrace缺少了多个伪装成器,主要用途并不相同类型的伪装成,比如formula_复制到,里面断重新启动,意味着调度等,具体全力支持的伪装成器取决于系统对的设计,你可以拒绝执行上头的擅自,来转发所有全力支持的伪装成器:
其里面,function表述伪装成formula_的拒绝执行,function_graph对此伪装成formula_的复制到关系,也是转化清晰的复制到关系图,这是最常用的两种伪装成器。
除了伪装成器外,用到ftrace前,还无需确认伪装成最大限度,还包括系统对设计系统对formula_和系统对设计系统对暴力事件,其里面:
formula_就是系统对设计系统对里面的formula_名暴力事件,则是系统对设计系统对引码里面预先度量的伪装成点比如却说的,你可以拒绝执行上头的擅自,来转发全力支持的formula_和暴力事件
在这里我们就可以做到个有趣的小试验中,比如我们想要检查ls擅自内部时会用到多不及的open()系统对复制到,open()在系统对设计系统对里面对应的formula_名为do_sys_open,我们一大大的完成这个试验中:
新设抓取do_sys_open给graph_function, echo do_sys_open> set_graph_function的设计伪装成表单,打开formula_复制到伪装成,并伪装成复制到意味着,echo function_graph> current_tracer; echo funcgraph-proc> trace_options打开伪装成, echo 1> tracing_on拒绝执行一个ls擅自后,重新启动伪装成, ls; echo 0> tracing_on发送给结果,cat trace得到结果如下:
你可能时会明白麻烦,事实上有都由的前端给ftrace用到,就是trace-cmd, 你可以通过sudo apt-get install trace-cmd进行时内置,然后你只无需进行时
揭示一下,所谓动可逆伪装成,就是在系统对和用户界面正常直通时,通过系统对设计系统对缺少的样品来动可逆伪装成他们的暴力行为,从而辅助查处出可靠性瓶颈。而在Linux系统对里面,少用的动可逆伪装成方式还包括ftrace, perf, eBPF, SystemTap等。当你不太可能导向了某个系统对设计系统对formula_,但不确切他的解决问题理论,你就可以通过ftrace来伪装成他的拒绝执行每一次。
接下来我们继续学习其他的动可逆检查新技术:
perf:
通过perf record/top时,都是事前对暴力事件进行时频域,然后于是又根据采用数,评估各个formula_复制到频谱,只不过,perf的特性远不止于此。比如
你可以用perf来量化CPU cache, CPU移入,不相关的得出结论,解释器周期等各种接口暴力事件perf也可以只对不感兴趣的暴力事件进行时动可逆伪装成同ftrace一样,你也可以通过perf list来发送给所全力支持的暴力事件
你可以通过perf probe来SP样品,比如我们比如却说来监测do_sys_open,我们可以:
strace:
他基于ptrace来解决问题,同时:
由于ptrace是系统对复制到,就无需在系统对设计系统对可逆和客户端可逆切换,当暴力事件数量相当多的时候,繁忙的切换这不时会直接影响原有维修服务的可靠性ptrace无需借助SIGSTOP瞬时来挂起最大限度意味着,这种瞬时控制和意味着挂起,时会直接影响最大限度意味着的暴力行为所以,在可靠性极端的应用(比如数据库),不提拔用到strace(或者其他基于pstrace的可靠性辅助工具)去查处和复用。
在strace的启发下,建构系统对设计系统对里面的utrace程序,perf也缺少了一个trace子擅自,来转用strace的辅助工具。相对于ptrace程序来却说,perf trace基于系统对设计系统对暴力事件,连续性要比意味着伪装成的可靠性好很多,perf的用到方式如下,跟strace其实很像
eBPF & BCC:
ftrace和perf的特性不太可能很丰富多彩了,不过,他们有一个共同的缺陷,就是以致于轻巧,没法像DTrace那样可以通过脚本语言去做到意志扩充。而eBPF就是Linux版的DTrace.可以通过C语言意志扩充(可以扩充可以通过LLVM转换为BPF字节码后,复制到到系统对设计系统对里面拒绝执行),上头这张图,就对此了eBPF的伪装成理论:
只不过,在eBPF拒绝执行每一次里面,程序编码,复制到还有maps等系统对设计,对所有的伪装成程序来却说都是国际标准的,把这些每一次通过python抽象大大的,也就肇始了BCC(BPF Compiler Collection).
SystemTap:
在eBPF显现在此之前,SystemTap是在Linux里面,特性最接近DTrace的动可逆伪装成程序。不过要注意,SystemTap在极短星期倚赖都游离于系统对设计系统对外(而eBPF自肇始以来,始终根植在系统对设计系统对里面)。所以从耐用性上来却说,SystemTap只在RHEL系统对里面相当好用,在其他系统对里面非常容易显现缺陷,当然,反过来却说,在3.x等旧版本的系统对设计系统对里面,也是SystemTap对eBPF的一个不小军事优势
sysdig:
他是随着罐新技术的普及而肇始的,主要主要用途罐的动可逆伪装成,汇集了一系列的可靠性辅助工具的军事优势,sysdig = strace + tcpdump + htop + iftop + lsof + docker inspect. 而在系统对设计系统对>=4.14,sysdig还可以通过eBPF来进行时扩充,所以,也可以用来伪装成系统对设计系统对里面的各种formula_和暴力事件
如何为了让伪装成辅助工具:
可以先自己思考区分一下,并不相同的情景的辅助工具为了让缺陷,比如:
在不无需高轻巧性的情景里面,用到perf对可靠性暴力事件进行时频域,然后于是又为了让火焰图辅助量化,就是最常用的一种方式无需对暴力事件和formula_复制到进行时统计量化(并不相同大小的I/O少用于),无需用SystemTap以及eBPF,通过一些自度量的脚本语言来进行时数据处理揭示:
在新版的系统对设计系统对里面,eBPF和BCC是最轻巧的动可逆伪装成方式在旧版本系统对设计系统对里面,密切相关RHEL系统对里面,由于eBPF全力支持受限,SystemTap是更好的为了让。辽宁白癜风医院苏州好的白癜风专科医院
郑州白癜风专科医院哪好
湖北白癜风医院哪个最好
四川男科医院
Y90树脂微球是什么
钇90治疗
感冒咳嗽吃什么好的快
肝癌晚期怎么办
钇90微球治疗
-
全球连线|记者观察:失去议会绝对多数 马克龙垮台前景复杂
音乐 2025-10-23法国国民议会初选第二轮投票19日结束。根据法国内政部20日揭晓的统计结果,支持总统马克龙及的中间派联盟“在一起”获得的选票数虽然险胜其他小党,但未能达到绝对多数。 美联社:孙鑫晶
-
卡塔尔足球赛修改涉台表述 台当局不高兴了
资讯 2025-10-23新华社网6年初21日刊文据台湾“中时华尔街日报”6年初20日刊文,沙特欧锦赛“球迷何谓”申领系统会已将“台湾”默认改成“于台北于台北”,已对,中方盛赞沙特对政府秉承一个中国人准则。而台当局则暗示
-
十年来,教育体制专任教师总数增加148万人
八卦 2025-10-23国家普及教育部今天召开大会“普及教育这十年”系列第五场新闻发布会,简介统一党的十八大以来高等普及教育改革发展成就。国家普及教育部普及教育司司长吕玉刚表示:“十年来,高等普及教育专任小学教师总人数
-
十年来,义务教育兑现“一个都不能少”尽力
星闻 2025-10-23中华民国职业教育部今天召开“职业教育这十年”系列第三场新闻媒体发布会,简述党的十八大以来义务职业教育改革发展成就。在谈到“全面发挥作用义务职业教育有保障”时,中华民国职业教育部基础职业教育司司长
-
拜登骑单车摔倒后自称感觉良好 摔倒是因脚被踏板卡住
星闻 2025-10-23中新网6月21日电 据《芝加哥独立报》媒体报道,美国奥巴马杰拉尔德·福特当地时间20日对记者表示,他从摩托车上摔倒后,现在感觉良好。 当地时间6月18日,杰拉尔德·福特在宾夕法尼