【问题标题】:ActiveMQ/Stomp debug when a message disables a consumer消息禁用消费者时的 ActiveMQ/Stomp 调试
【发布时间】:2011-07-15 21:18:47
【问题描述】:

我正在挠头,试图调试一个似乎让我的一个消费者出错的 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);
  }
}

有什么方法可以捕获致命错误或任何将其打破无限循环的方法吗?

谢谢, 史蒂夫

【问题讨论】:

    标签: php activemq stomp


    【解决方案1】:

    尝试设置顶级exception handler

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

    【讨论】:

    • 我目前正在做一个 set_error_handler。所以你是说异常处理程序可以更好地捕获标准 try/catch 无法捕获的大多数错误(致命错误)?
    猜你喜欢
    • 2018-08-22
    • 2016-06-08
    • 2021-03-06
    • 2015-11-25
    • 1970-01-01
    • 2021-11-22
    • 2019-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多