报警知识库


队列深度报警

<h1>报警描述</h1> <p>业务[XX业务],虚拟机[XXIP],位于[位置]IBM-Websphere-MQ|队列中心|队列信息|<font color='blue'>队列管理器名</font>.<font color='blue'>队列名</font>队列深度报警,队列深度为<font color='blue'>数字</font></p> <p><strong>举例:</strong> 业务[MQ123],虚拟机[192.168.0.1],位于[信息科]IBM-Websphere-MQ|队列中心|队列信息|GWO.QM-OUT.S016.BS902.LQ队列深度报警,队列深度为2987</p> <h1>说明</h1> <p>IBM Websphere MQ 的队列深度相当于 RabbitMQ 的队列长度。当队列深度非0时,代表该队列产生了淤积。即队列中消息的发布速度高于消息的消费速度。这表明业务数据同步进度已经出现延迟。</p> <h1>监控对象</h1> <p>Linux操作系统</p> <h1>监控方式</h1> <h2>Linux</h2> <p>对于Linux操作系统,通过监控代理读取代理信息。包括三个步骤:</p> <h3>(1)获取消息队列管理器</h3> <p>命令如下:</p> <pre><code>dspmq</code></pre> <p>输出示例:</p> <pre><code>QMNAME(GWI.QM) STATUS(Running elsewhere) QMNAME(GWO.QM) STATUS(Running)</code></pre> <p>其中,括号内的 GWI.QM,GWO.QM 为队列管理器名称。要获取队列管理器中的队列,需要通过 runmqsc 命令 + 队列管理器名称进入 mqsc 运行环境。</p> <h3>(2)获取队列名</h3> <p>命令如下:</p> <pre><code>runmqsc GWO.QM DISPLAY QUEUE(*)</code></pre> <p>输出示例:</p> <pre><code>DISPLAY QUEUE(*) 1 : DISPLAY QUEUE(*) AMQ8409I: Display Queue details. QUEUE(AMQ.MQEXPLORER.2086567006) TYPE(QLOCAL) AMQ8409I: Display Queue details. QUEUE(AMQ.MQEXPLORER.224595299) TYPE(QLOCAL) AMQ8409I: Display Queue details. QUEUE(GWO.QM.DLQ) TYPE(QLOCAL) AMQ8409I: Display Queue details. QUEUE(OUT.HBDSS.PART01.LQ) TYPE(QLOCAL) AMQ8409I: Display Queue details. QUEUE(OUT.NO.DISTRIBUTION.LQ) TYPE(QLOCAL) AMQ8409I: Display Queue details. QUEUE(OUT.PROC.ERROR.LQ) TYPE(QLOCAL)</code></pre> <p>在上面的输出中,QUEUE(AMQ.MQEXPLORER.2086567006) 括号里面的 AMQ.MQEXPLORER.2086567006 是队列名。要查询队列深度,需要传入队列名。</p> <h3>(3)获取队列深度</h3> <p>命令如下(查询队列OUT.S101.BS368.LQ的队列深度)</p> <pre><code>DISPLAY QSTATUS(OUT.S101.BS368.LQ) CURDEPTH</code></pre> <p>输出示例:</p> <pre><code>AMQ8450I: Display queue status details. QUEUE(OUT.S101.BS368.LQ) TYPE(QUEUE) CURDEPTH(122)</code></pre> <p>上面的输出说明,队列OUT.S101.BS368.LQ的队列深度为122.</p> <h1>规则</h1> <p>默认规则为:</p> <pre><code>[0&lt;=队列深度&lt;1000] 正常 [1000&lt;=队列深度] 报警</code></pre> <p>可通过报警策略进行配置。</p>

页面列表

ITEM_HTML