如何将 valgrind 与正在运行的进程相关联
How to associate valgrind with a running process?
我有一个名为"ifmFuseHandler"的二进制文件,它由shell脚本调用,如下所示: su - $USER -c "cd $DIR_INDEX;valgrind --leak-check=full ifmFuseHandler $IFM_SINGLE_THREAD -o allow_other $IFM_MOUNT"
但问题是,当控件命中这一行 shell 时,我只能看到一次 valgrind 日志,并发布即使 ifmFuseHandler 已启动并运行,valgrind 也不会提供任何分析信息。
因此,正如您在下面看到的,但没有进一步的日志记录:
insite1@POC-Messaging1:/opt/insiteone/log> ps -ef | grep ifmFuseHandler
insite1 622 1 0 04:19 ? 00:00:02 valgrind --leak-check=full ifmFuseHandler -o allow_other /opt/insiteone/fuse-mount
insite1 3225 26014 0 04:32 pts/2 00:00:00 grep ifmFuseHandler
你需要调整你的 shell-script 以显式地将 valgrind 的输出记录到文件中,如此处所述。
如果多次调用程序,请尝试将文件名与 PID 一起使用,如此处--log-file=<filename>
用法中所述。
只需确保您的输出文件位于易于阅读的位置即可。
相关文章:
- 如何使用 c++ libboost 运行进程并获取其输出?
- 如何运行进程,然后在它退出时收到通知
- 在特定监视器上运行进程
- 使用Runtime.exec从Java运行进程-退出代码139
- 使用C++将CPU专用于在1个核心上运行进程
- 如何找到运行进程的物理套接字 ID/编号
- 如果从文件中读取,则无法按文件名运行进程
- 如何判断进程的用户令牌是否与运行进程的登录会话令牌相同?
- 在 C 语言的后台运行进程
- 在C++中获取带有 Windows 7 API 的运行进程
- r语言 - 如何直接在数据库服务器上运行C++进程以避免传输数据集
- 在虚拟文件系统中运行进程
- 检查是否已运行进程和通信的副本
- c++,总是运行进程或调用可执行文件
- 运行进程命令行
- 如何使用编程方法拦截linux上运行进程中调用的系统调用
- 使用c++获取当前运行进程中的X显示变量
- 获取当前运行进程的网络适配器
- 如何将ShellExecuteEx作为在父级退出后关闭的子级运行进程
- 在多核 (Linux) 中运行进程的命令行参数是什么