0

我正在挠头,试图调试一个似乎让我的一个消费者出错的 PHP 事务。在插入新消息之前,我可以通过 GREPping 进程列表来检测我的消费者是否正在运行,但无法知道之前的内容以及导致致命错误的原因。

我的 PHP 消费者大致是:

while($isRunning == true) { 
  try{
    if($frame = $this->stomp->readFrame()) { 
      $body = $frame->body;
      $this->stomp->ack($frame);
    }
  } catch(StompException $e) {
    $msg = 'Stomp Monitor readFrame() Callback Fail: '.$e->getMessage();
    error_log($msg);
  }
}

有什么方法可以捕获致命错误或任何会使其脱离无限循环的方法吗?

谢谢,史蒂夫

4

1 回答 1

0

尝试设置顶级异常处理程序

也许有一个你没有捕捉到的例外。抓住它并记录下来,这样你就知道进程为什么会死掉。

于 2011-03-15T20:50:11.667 回答