首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >描述“`strace`”命令输出

描述“`strace`”命令输出
EN

Server Fault用户
提问于 2014-07-11 08:45:41
回答 1查看 10.3K关注 0票数 4

我有php过程,不能完成超过2天。

代码语言:javascript
复制
root     26511  0.0  1.6 407788 27684 ?        Ss   Jul09   0:08 /usr/bin/php action.php

这是strace命令的输出:

代码语言:javascript
复制
poll([{fd=7, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 1000) = 0 (Timeout)
poll([{fd=7, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 0) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {5533745, 664851437}) = 0
clock_gettime(CLOCK_MONOTONIC, {5533745, 664940247}) = 0
clock_gettime(CLOCK_MONOTONIC, {5533745, 665211013}) = 0
poll([{fd=7, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 1000) = 0 (Timeout)
poll([{fd=7, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 0) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {5533746, 666594416}) = 0
clock_gettime(CLOCK_MONOTONIC, {5533746, 666684149}) = 0
clock_gettime(CLOCK_MONOTONIC, {5533746, 666772214}) = 0
poll([{fd=7, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 1000) = 0 (Timeout)
poll([{fd=7, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 0) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {5533747, 668356163}) = 0
clock_gettime(CLOCK_MONOTONIC, {5533747, 668447565}) = 0
clock_gettime(CLOCK_MONOTONIC, {5533747, 668538577}) = 0

你能解释一下这个输出是什么意思吗?或者我可以使用其他命令获得更多关于堆栈进程的信息。

:PHP5.4.30 CentOS版本6.5

EN

回答 1

Server Fault用户

回答已采纳

发布于 2014-07-11 09:13:57

strace命令列出了系统在运行时调用应用程序所做的事情。

如果您不是developer:系统手册文档的第2部分,系统调用可以帮助您了解正在发生的事情。

man 2 poll

代码语言:javascript
复制
DESCRIPTION
   poll()  performs a similar task to select(2): it waits for one of a set
   of file descriptors to become ready to perform I/O.

轮询系统调用中请求的事件都是在文件描述符7上读取的,您的应用程序请求的事件也是从手册页面读取的:

代码语言:javascript
复制
POLLIN     There is data to read.
POLLPRI    There is urgent data to read. 
POLLRDNORM Equivalent to POLLIN.
POLLRDBAND Priority band data  can  be  read  (generally  unused  on Linux).

strace行显示轮询操作超时,文件描述符(#7)没有准备好读取IO。

系统调用clock_gettime() - clock and time functions表示类似于等待一段时间,然后再试一次。

要找出导致超时的文件,应该使用数字7 (表示/proc/<PID>/fd/7文件的整数)的符号链接。

票数 11
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/611841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档