erlang调试技术之etop
etop是erlang进程信息查看工具,类似于UNIX的top.
一、配置参数
- node
- The measured node.
Value: atom()
Mandatory - setcookie
- Cookie to use for the etop node - must be the same
as the cookie on the measured node.
Value: atom() - lines
- Number of lines (processes) to display.
Value: integer()
Default: 10 - interval
- The time interval (in seconds) between each update of
the display.
Value: integer()
Default: 5 - accumulate
- If true the execution time and reductions are
accumulated.
Value: boolean()
Default: false - sort
- Identifies what information to sort by.
Value: runtime | reductions | memory | msg_q
Default: runtime (reductions if
tracing=off) - tracing
-
etop uses the erlang trace facility, and thus no
other tracing is possible on the measured node while
etop is running, unless this option is set to
off. Also helpful if the etop tracing causes too
high load on the measured node. With tracing off, runtime is
not measured.
Value: on | off
Default: on
二、EXPORTS
start() -> ok
This function starts etop. Note that etop is preferably started with the etop and getop scripts
start(Options) -> ok
Types:
This function starts etop. Use
help/0 to see a
description of the possible options.
help() -> ok
This function prints the help of etop and
its options.
config(Key,Value) -> Result
Types:
This function is used to change the tool's configuration
parameters during runtime. The table above indicates the
allowed values for each parameter.
dump(File) -> Result
Types:
This function dumps the current display to a text file.
stop() -> stop
This function terminates etop.
三、实例
1、启动etop监控远程节点
erl -sname aa -remsh remote@domain
etop:start([{output,text},{lines,10},{sort,reductions},{accumulations,true},{interval,10}]).
或者etop -sname local@domain -lines 10 -sort reductions -accumulations true -interval 10 -setcookie remotecookie -remsh remote@domain(系统shell下执行)
========================================================================================
tiger@durin 13:40:32
Load: cpu 0 Memory: total 1997 binary 33
procs 197 processes 0 code 173
runq 135 atom 1002 ets 95 Pid Name or Initial Func Time Reds Memory MsgQ Current Function
----------------------------------------------------------------------------------------
<127.23.0> code_server 0 59585 78064 0 gen_server:loop/6
<127.21.0> file_server_2 0 36380 44276 0 gen_server:loop/6
<127.2.0> erl_prim_loader 0 27962 3740 0 erl_prim_loader:loop
<127.9.0> kernel_sup 0 6998 4676 0 gen_server:loop/6
<127.17.0> net_kernel 62 6018 3136 0 gen_server:loop/6
<127.0.0> init 0 4156 4352 0 init:loop/1
<127.16.0> auth 0 1765 1264 0 gen_server:loop/6
<127.18.0> inet_tcp_dist:accept 0 660 1416 0 prim_inet:accept0/2
<127.5.0> application_controll 0 569 6756 0 gen_server:loop/6
<127.137.0> net_kernel:do_spawn_ 0 553 5840 0 dbg:do_relay_1/1
========================================================================================
2、修改配置参数
etop:config(lines, 5)
(etop@durin)2>
========================================================================================
tiger@durin 10:12:44
Load: cpu 0 Memory: total 1859 binary 33
procs 192 processes 0 code 173
runq 2 atom 1002 ets 95 Pid Name or Initial Func Time Reds Memory MsgQ Current Function
----------------------------------------------------------------------------------------
<127.17.0> net_kernel 183 70 4092 0 gen_server:loop/6
<127.335.0> inet_tcp_dist:do_acc 141 22 1856 0 dist_util:con_loop/9
<127.19.0> net_kernel:ticker/2 155 6 1244 0 net_kernel:ticker1/2
<127.341.0> net_kernel:do_spawn_ 0 0 5840 0 dbg:do_relay_1/1
<127.43.0> ddll_server 0 0 3744 0 gen_server:loop/6
========================================================================================
erlang调试技术之etop的更多相关文章
- linux内核调试技术之printk
原创博客:欢迎转载,转载请注明出处https://i.cnblogs.com/EditPosts.aspx?postid=6218383 1.简介(基于s3c2440 linux) 在内核调试技术之中 ...
- 反调试技术常用API,用来对付检测od和自动退出程序
在调试一些病毒程序的时候,可能会碰到一些反调试技术,也就是说,被调试的程序可以检测到自己是否被调试器附加了,如果探知自己正在被调试,肯定是有人试图反汇编啦之类的方法破解自己.为了了解如何破解反调试技术 ...
- 嵌入式Linux的调试技术
本节我们研究嵌入式Linux的调试技术,对于复杂的Linux驱动及HAL等程序库,需要使用各种方法对其进行调试.刚开始讲了打印内核调试信息:printk,这个函数的用法与printf函数类似,只不过p ...
- 第十章 嵌入式Linux的调试技术
对调试工具进行简介.Linux中提供了一类工具,通过这些工具可以逐行跟踪程序的代码,用于测试用户空间程序的gdb.gdbserver和调试内核空间程序的kgdb. 用gdb调试用户空间程序:gdb可跟 ...
- paip. 调试技术打印堆栈 uapi print stack java php python 总结.
paip. 调试技术打印堆栈 uapi print stack java php python 总结. 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attil ...
- 【转】Linux Shell脚本调试技术
本文转载自:https://www.ibm.com/developerworks/cn/linux/l-cn-shell-debug/ Shell脚本调试技术 本文全面系统地介绍了shell脚本调试技 ...
- shell脚本调试技术_转
转自:http://itlab.idcquan.com/linux/SHELL/727128.html 参考:https://linux.cn/article-8045-1.html 本文全面系统地介 ...
- Linux驱动设计—— 驱动调试技术
参考博客与书籍: <Linux设备驱动开发详解> <Linux设备驱动程序> http://blog.chinaunix.net/uid-24219701-id-2884942 ...
- QT核心编程之调试技术 (g)
Qt应用程序的调试可以通过DDD进行跟踪调试和打印各种调试或警告信息.DDD(Data Display Debugger)是使用gdb调试工具的图形工具,它安装在Linux操作系统中,使用方法可参考D ...
随机推荐
- python向服务器发送邮件事例
import osimport sysimport re __author__ = 'xiaoming' import requestststr = '<div>\n<ul>\ ...
- mac 下mysql
We've installed your MySQL database without a root password. To secure it run: mysql_secure_installa ...
- SQL Server2012中的SequenceNumber
http://www.cnblogs.com/CareySon/archive/2012/03/12/2391581.html https://q.cnblogs.com/q/53552/ https ...
- C++友元
通过friend关键字,我们可以将不属于当前类的一个函数在当前类中加以声明,该函数便可以成为当前类的友元函数. 例1: #include<iostream>using namespace ...
- C++把引用作为返回值
当返回一个引用时,要注意被引用的对象不能超出作用域.所以返回一个对局部变量的引用是不合法的,但是,可以返回一个对静态变量的引用. int& func() { int q; //! return ...
- Javascript封装弹出框控件
1.首先先定义好弹出框的HTML结构 <div class="g-dialog-contianer"> <div class="dialog-windo ...
- WEB服务器:Apache、Tomcat、JBoss、WebLogic、Websphere、IIS的区别与关系
1)Apache 免费,世界使用排名第一的Web服务器.它可以运行在几乎所有广泛使用的计算机平台上.Apache的特点是简单.速度快.性能稳定,并可做代理服务器来使用.Apache是以进程为基础的结 ...
- linux-c/c++调试利器gdb、ddd小试
linux-c/c++调试利器gdb.ddd小试 原文链接: http://deepfuture.iteye.com/blog/749148 博客分类: C++/C/lisp CC++C#LinuxU ...
- win10锁屏壁纸路径
C:\Users\ShanYu\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalS ...
- LR11安装注意事项
一.安装Microsoft Visual c++2005 sp1运行时组件,就会提示命令行选项语法错误,键入“命令/?”可获取帮肋信息 解决方法: 进入LoadRunner11下载\loadrunne ...