0

コンシューマの 1 つにエラーが発生しているように見える PHP トランザクションをデバッグしようとして頭を悩ませています。新しいメッセージを挿入する前に、プロセス リストを GREP することでコンシューマーが実行されているかどうかを検出できますが、以前に何があったのか、何が致命的なエラーの原因となったのかを知る方法はありません。

私の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 に答える