Dan*_*ell 6 process monitoring executable
我知道如何监控进程。诸如此类的命令top可以监视给定流程实例的 CPU 时间和内存使用情况。
但是假设我希望给定的可执行文件在接下来的一小时内运行多次,并且我想测量它运行了多少次以及它消耗的 CPU 时间。什么是命令?
你可以这样做:
mv my-executable my-executable.bin
Run Code Online (Sandbox Code Playgroud)
并创建my-executable一个包装脚本,该脚本执行以下操作:
#! /bin/bash -
{ time "$0.bin" "$@" 2>&3 3>&-; } 3>&2 2>> /tmp/times.log
Run Code Online (Sandbox Code Playgroud)
该脚本可以向日志添加更多信息,例如启动时间、由谁、传递的参数......
BSD 进程统计,至少在 Linux 上确实报告 CPU 时间(用户 + sys),尽管不是像那样以累积方式time(子进程 CPU 时间不计入父进程)