我是Zabbix的新手,我使用的是Zabbix 3.4版本。我已经在Linux上安装了服务器,并希望使用其Windows代理来监视和检查Windows服务的状态。我使用以下密钥获取了服务的状态
service.info[<serviceName>,state]
它会向我返回正确的服务状态。现在,我想检查进程使用了多少CPU,进程使用了多少内存。我尝试了一些键,但它没有返回正确的值。
perf_counter[\Process(<processName>)\% User Time] // to get CPU utilization by process
proc_i
如果程序使用ptrace来检测它是否在调试器中运行,我发现了下面的技巧:
catch syscall ptrace
commands 1
set ($eax) = 0
continue
end
有人能解释一下它是怎么工作的吗?我试图在i r eax之后插入commands 1,但是我不理解我得到的负值:
Catchpoint 1 (call to syscall ptrace), 0x00007ffff778af1e in ptrace (request=PTRACE_TRACEME) at ../sysdeps/unix/sysv/linux/ptrace.c:45
45 ../sysde
我在服务器上运行了一个R控制台,这个过程花费的时间比我预期的要长得多。因此,我试图通过ctrl+z关闭它,它没有工作。最后我关闭了终点站。但是当我检查top命令时,这个过程仍然存在。我用的是杀死,但不会扼杀这个过程。最上面的命令输出:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
27448 zhenyang 20 0 20.133g 0.020t 3.840g R 100.0 21.3 72:00.06 R
我查了一下网站,有人说可能是ctrl+z把进程放在后台,但是fg命