- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
Supported OS
このチェックは IBM MQ バージョン 9.1 以降を監視します。
IBM MQ チェックは Datadog Agent パッケージに含まれています。
IBM MQ チェックを使用するには、IBM MQ Client 9.1+ がインストールされていることを確認する必要があります (互換バージョンの IBM MQ サーバーが Agent ホストにインストールされている場合を除きます)。現在、IBM MQ チェックは、z/OS 上の IBM MQ サーバーへの接続をサポートしていません。
ライブラリの場所を含めるために LD_LIBRARY_PATH
を更新してください。この環境変数がまだ存在しない場合は作成してください。
例えば、クライアントを /opt
の下にインストールした場合
export LD_LIBRARY_PATH=/opt/mqm/lib64:/opt/mqm/lib:$LD_LIBRARY_PATH
注: Agent v6 以上は、upstart
、systemd
、または launchd
を使用して datadog-agent サービスをオーケストレーションします。場合によっては、サービス構成ファイルに環境変数を追加する必要があります。サービス構成ファイルのデフォルトの場所は、以下の通りです。
/etc/init/datadog-agent.conf
/lib/systemd/system/datadog-agent.service
~/Library/LaunchAgents/com.datadoghq.agent.plist
LD_LIBRARY_PATH
環境変数が原因です。以下は、systemd
の構成の例です。
[Unit]
Description="Datadog Agent"
After=network.target
Wants=datadog-agent-trace.service datadog-agent-process.service
StartLimitIntervalSec=10
StartLimitBurst=5
[Service]
Type=simple
PIDFile=/opt/datadog-agent/run/agent.pid
Environment="LD_LIBRARY_PATH=/opt/mqm/lib64:/opt/mqm/lib:$LD_LIBRARY_PATH"
User=dd-agent
Restart=on-failure
ExecStart=/opt/datadog-agent/bin/agent/agent run -p /opt/datadog-agent/run/agent.pid
[Install]
WantedBy=multi-user.target
以下は、upstart
の構成の例です。
description "Datadog Agent"
start on started networking
stop on runlevel [!2345]
respawn
respawn limit 10 5
normal exit 0
console log
env DD_LOG_TO_CONSOLE=false
env LD_LIBRARY_PATH=/opt/mqm/lib64:/opt/mqm/lib:$LD_LIBRARY_PATH
setuid dd-agent
script
exec /opt/datadog-agent/bin/agent/agent start -p /opt/datadog-agent/run/agent.pid
end script
post-stop script
rm -f /opt/datadog-agent/run/agent.pid
end script
```Agent
以下は、`launchd` の構成の例です。
```xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<dict>
<key>SuccessfulExit</key>
<false/>
</dict>
<key>Label</key>
<string>com.datadoghq.agent</string>
<key>EnvironmentVariables</key>
<dict>
<key>DD_LOG_TO_CONSOLE</key>
<string>false</string>
<key>LD_LIBRARY_PATH</key>
<string>/opt/mqm/lib64:/opt/mqm/lib</string>
</dict>
<key>ProgramArguments</key>
<array>
<string>/opt/datadog-agent/bin/agent/agent</string>
<string>run</string>
</array>
<key>StandardOutPath</key>
<string>/var/log/datadog/launchd.log</string>
<key>StandardErrorPath</key>
<string>/var/log/datadog/launchd.log</string>
<key>ExitTimeOut</key>
<integer>10</integer>
</dict>
</plist>
Agent が更新されるたびに、これらのファイルは消去されるため、再更新する必要があります。
または、Linux を使用している場合は、MQ クライアントのインストール後に、ランタイムリンカがライブラリを見つけることができることを確認します。たとえば、ldconfig を使用します。
ld 構成ファイルにライブラリの場所を追加します。
sudo sh -c "echo /opt/mqm/lib64 > /etc/ld.so.conf.d/mqm64.conf"
sudo sh -c "echo /opt/mqm/lib > /etc/ld.so.conf.d/mqm.conf"
バインディングを更新します。
sudo ldconfig
IBM MQ のデータディレクトリに mqclient.ini
というファイルがあります。通常は C:\ProgramData\IBM\MQ
です。
環境変数 MQ_FILE_PATH
を構成し、データディレクトリを指すようにします。
IBM MQ で権限を設定する方法はたくさんあります。セットアップの方法にもよりますが、MQ 内に datadog
ユーザーを作成して、読み取り専用権限と、オプションで +chg
権限を設定します。chg
権限は、リセットキュー統計 (MQCMD_RESET_Q_STATS
) のメトリクスを収集するために必要です。これらのメトリクスを収集したくない場合は、構成で collect_reset_queue_metrics
を無効にできます。リセットキュー統計のパフォーマンスデータを収集すると、パフォーマンスデータもリセットされます。
注: MQ サーバーで “Queue Monitoring” を有効にして、少なくとも “Medium” に設定する必要があります。これは、サーバーのホストで MQ UI または mqsc
コマンドを使用して実行できます。
> /opt/mqm/bin/runmqsc
5724-H72 (C) Copyright IBM Corp. 1994, 2018.
Starting MQSC for queue manager datadog.
ALTER QMGR MONQ(MEDIUM) MONCHL(MEDIUM)
1 : ALTER QMGR MONQ(MEDIUM) MONCHL(MEDIUM)
AMQ8005I: IBM MQ queue manager changed.
:
One MQSC command read.
No commands have a syntax error.
All valid MQSC commands were processed.
ホストで実行中の Agent に対してこのチェックを構成するには:
IBM MQ のパフォーマンスデータを収集するには、Agent のコンフィギュレーションディレクトリのルートにある conf.d/
フォルダーの ibm_mq.d/conf.yaml
ファイルを編集します。使用可能なすべてのコンフィギュレーションオプションについては、サンプル ibm_mq.d/conf.yaml を参照してください。
IBM MQ を構成するオプションはいくつもあり、使用方法によって構成は変わります。
channel
: IBM MQ チャンネルqueue_manager
: 指定されたキューマネージャーhost
: IBM MQ が実行されているホストport
: IBM MQ が公開しているポートconvert_endianness
: MQ サーバーが AIX または IBM i で動作している場合、これを有効にする必要がありますユーザー名とパスワードのセットアップを使用している場合、username
と password
を設定できます。ユーザー名が設定されていない場合、Agent プロセスの所有者 (dd-agent
) が使用されます。
注: このチェックは、queues
パラメーターで設定したキューのみを監視します
queues:
- APP.QUEUE.1
- ADMIN.QUEUE.1
Agent バージョン 6.0 以降で利用可能
Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml
ファイルでこれを有効にします。
logs_enabled: true
次に、構成ファイルで適切な MQ ログファイルを指定します。MQ インテグレーションの構成ファイルの下部にある行のコメントを解除し、適宜修正してください。
logs:
- type: file
path: '/var/mqm/log/<APPNAME>/active/AMQERR01.LOG'
service: '<APPNAME>'
source: ibm_mq
log_processing_rules:
- type: multi_line
name: new_log_start_with_date
pattern: "\d{2}/\d{2}/\d{4}"
コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照して、次のパラメーターを適用してください。
パラメーター | 値 |
---|---|
<インテグレーション名> | ibm_mq |
<初期コンフィギュレーション> | 空白または {} |
<インスタンスコンフィギュレーション> | {"channel": "DEV.ADMIN.SVRCONN", "queue_manager": "datadog", "host":"%%host%%", "port":"%%port%%", "queues":["<キュー名>"]} |
Agent バージョン 6.0 以降で利用可能
Datadog Agent で、ログの収集はデフォルトで無効になっています。有効にする方法については、Kubernetes ログ収集を参照してください。
パラメーター | 値 |
---|---|
<LOG_CONFIG> | {"source": "ibm_mq", "service": "<サービス名>", "log_processing_rules": {"type":"multi_line","name":"new_log_start_with_date", "pattern":"\d{2}/\d{2}/\d{4}"}} |
Agent の status サブコマンドを実行し、Checks セクションで ibm_mq
を探します。
ibm_mq.channel.channels (gauge) | The number of active channels. Shown as resource |
ibm_mq.channel.count (gauge) | Sum by status to count channels. Filter by channel and status tags to create notifications. |
ibm_mq.channel.batch_interval (gauge) | This attribute is a period during which the channel keeps a batch open even if there are no messages on the transmission queue (parameter identifier: BATCHINT). Shown as second |
ibm_mq.channel.batch_size (gauge) | This attribute is the maximum number of messages to be sent before a sync point is taken (parameter identifier: BATCHSZ). Shown as resource |
ibm_mq.channel.disc_interval (gauge) | This attribute is the length of time after which a channel closes down, if no message arrives during that period (parameter identifier: DISCINT). Shown as second |
ibm_mq.channel.hb_interval (gauge) | This attribute specifies the approximate time between heartbeat flows that are to be passed from a sending MCA when there are no messages on the transmission queue (parameter identifier: HBINT). Shown as second |
ibm_mq.channel.keep_alive_interval (gauge) | This attribute is used to specify a timeout value for a channel (parameter identifier: KAINT). Shown as second |
ibm_mq.channel.long_retry (gauge) | This attribute specifies the maximum number of times that the channel is to try allocating a session to its partner (parameter identifier: LONGRTY). Shown as time |
ibm_mq.channel.long_timer (gauge) | This attribute is the approximate interval in seconds that the channel is to wait before retrying to establish connection, during the long retry mode (parameter identifier: LONGTMR). Shown as second |
ibm_mq.channel.max_message_length (gauge) | This attribute specifies the maximum length of a message that can be transmitted on the channel (parameter identifier: MAXMSGL). Shown as byte |
ibm_mq.channel.mr_count (gauge) | This attribute specifies the number of times the channel tries to redeliver the message (parameter identifier: MRRTY). |
ibm_mq.channel.mr_interval (gauge) | This attribute specifies the minimum interval of time that must pass before the channel can retry the MQPUT operation (parameter identifier: MRTMR). Shown as second |
ibm_mq.channel.network_priority (gauge) | This attribute specifies the priority for the network connection. Distributed queuing chooses the path with the highest priority if there are multiple paths available. The value must be in the range 0 through 9; 0 is the lowest priority (parameter identifier: NETPRTY). |
ibm_mq.channel.npm_speed (gauge) | This attribute specifies the speed at which non-persistent messages are to be sent (parameter identifier: NPMSPEED). |
ibm_mq.channel.sharing_conversations (gauge) | This attribute specifies the maximum number of conversations that can share a channel instance associated with this channel (parameter identifier: SHARECNV). |
ibm_mq.channel.short_retry (gauge) | This attribute specifies the maximum number of attempts that are made by a sender or server channel to establish a connection to the remote machine (parameter identifier: MQIACHSHORTRETRY). |
ibm_mq.channel.short_timer (gauge) | This attribute specifies the short retry wait interval for a sender or server channel that is started automatically by the channel initiator (Parameter identifier: MQIACHSHORTTIMER). Shown as second |
ibm_mq.channel.buffers_rcvd (gauge) | This attribute specifies the number of buffers received (parameter identifier: MQIACHBUFFERSRCVD). Shown as buffer |
ibm_mq.channel.buffers_sent (gauge) | This attribute specifies the number of buffers sent (parameter identifier: MQIACHBUFFERSSENT) Shown as buffer |
ibm_mq.channel.bytes_rcvd (gauge) | This attribute specifies the number of bytes received (parameter identifier: MQIACHBYTESRCVD). Shown as byte |
ibm_mq.channel.bytes_sent (gauge) | This attribute specifies the number of bytes sent (parameter identifier: MQIACHBYTESSENT). Shown as byte |
ibm_mq.channel.channel_status (gauge) | This attribute specifies the channel status (parameter identifier: MQIACHCHANNELSTATUS). |
ibm_mq.channel.mca_status (gauge) | This attribute specifies the MCA status (parameter identifier: MQIACHMCASTATUS). |
ibm_mq.channel.msgs (gauge) | This attribute specifies the number of messages sent or received, or number of MQI calls handled (parameter identifier: MQIACH_MSGS). Shown as message |
ibm_mq.channel.ssl_key_resets (gauge) | The value represents the total number of unencrypted bytes that are sent and received on the channel before the secret key is renegotiated (parameter identifier: SSLRSTCNT). |
ibm_mq.channel.batches (gauge) | This attribute specifies the number of completed batches (parameter identifier: MQIACH_BATCHES). |
ibm_mq.channel.current_msgs (gauge) | This attribute specifies the number of messages in-doubt (parameter identifier: MQIACHCURRENTMSGS). Shown as message |
ibm_mq.channel.indoubt_status (gauge) | This attribute specifies the number whether the channel is currently in doubt (parameter identifier: MQIACHINDOUBTSTATUS). |
ibm_mq.queue.high_q_depth (gauge) | This attribute specifies the maximum number of messages on a queue (parameter identifier: MQIAHIGHQ_DEPTH). Shown as message |
ibm_mq.queue.msg_deq_count (count) | This attribute specifies the number of messages dequeued (parameter identifier: MQIAMSGDEQ_COUNT). Shown as message |
ibm_mq.queue.msg_enq_count (count) | This attribute specifies the number of messages enqueued (parameter identifier: MQIAMSGENQ_COUNT). Shown as message |
ibm_mq.queue.time_since_reset (count) | This attribute specifies the time since statistics reset in seconds (parameter identifier: MQIATIMESINCE_RESET). Shown as second |
ibm_mq.queue.service_interval (gauge) | This attribute specifies the target for queue service interval. This is used for comparison to generate Queue Service Interval High and Queue Service Interval OK events (parameter identifier: MQIAQSERVICE_INTERVAL). Shown as millisecond |
ibm_mq.queue.inhibit_put (gauge) | This attribute specifies whether put operations are allowed (parameter identifier: MQIAINHIBITPUT). Shown as occurrence |
ibm_mq.queue.depth_low_limit (gauge) | This attribute specifies low limit for queue depth. This indicates that an application has retrieved a message from a queue, and this has caused the number of messages on the queue to become less than or equal to the queue depth low threshold (parameter identifier: MQIAQDEPTHLOWLIMIT). Shown as item |
ibm_mq.queue.inhibit_get (gauge) | Whether get operations are allowed (parameter identifier: MQIAINHIBITGET). Shown as occurrence |
ibm_mq.queue.harden_get_backout (gauge) | Whether to harden backout count. Specifies whether the count of backed out messages should be saved (hardened) across restarts of the message queue manager (parameter identifier: MQIAHARDENGET_BACKOUT). Shown as request |
ibm_mq.queue.service_interval_event (gauge) | Controls whether Service Interval High or Service Interval OK events are generated (parameter identifier: MQIAQSERVICEINTERVALEVENT). Shown as occurrence |
ibm_mq.queue.trigger_control (gauge) | This attribute specifies whether trigger messages are written to the initiation queue (parameter identifier: MQIATRIGGERCONTROL). Shown as method |
ibm_mq.queue.usage (gauge) | This attribute whether the queue is for normal usage or for transmitting messages to a remote message queue manager (parameter identifier: MQIA_USAGE). Shown as resource |
ibm_mq.queue.scope (gauge) | Scope of the queue definition (parameter identifier: MQIA_SCOPE). On OS/400, this is valid for receipt by MQSeries for AS/400 V4R2, or later. Specifies whether the scope of the queue definition does not extend beyond the queue manager which owns the queue, or whether the queue name is contained in a cell directory, so that it is known to all of the queue managers within the cell. Shown as resource |
ibm_mq.queue.type (gauge) | Type of queue to which the alias resolves (parameter identifier: MQIAQTYPE). Shown as resource |
ibm_mq.queue.depth_max (gauge) | Maximum queue depth (parameter identifier: MQIAMAXQ_DEPTH). The maximum number of messages allowed on the queue. Note that other factors may cause the queue to be treated as full; for example, it will appear to be full if there is no storage available for a message. Shown as message |
ibm_mq.queue.backout_threshold (gauge) | Backout threshold (parameter identifier: MQIABACKOUTTHRESHOLD). That is, the number of times a message can be backed out before it is transferred to the backout queue specified by BackoutRequeueName. Shown as resource |
ibm_mq.queue.depth_high_event (gauge) | High limit for queue depth (parameter identifier: MQIAQDEPTHHIGHLIMIT). This event indicates that an application has put a message to a queue, and this has caused the number of messages on the queue to become greater than or equal to the queue depth high threshold. Shown as event |
ibm_mq.queue.depth_low_event (gauge) | Low limit for queue depth (parameter identifier: MQIAQDEPTHLOWLIMIT). This event indicates that an application has retrieved a message from a queue, and this has caused the number of messages on the queue to become less than or equal to the queue depth low threshold. Shown as event |
ibm_mq.queue.trigger_message_priority (gauge) | Threshold message priority for triggers (parameter identifier: MQIATRIGGERMSG_PRIORITY). Specifies the minimum priority that a message must have before it can cause, or be counted for, a trigger event. The value must be in the range of priority values that are supported (0 through 9). Shown as resource |
ibm_mq.queue.depth_current (gauge) | The number of messages currently in the queue (parameter identifier: MQIACURRENTQ_DEPTH). Shown as message |
ibm_mq.queue.depth_max_event (gauge) | Controls whether Queue Full events are generated (parameter identifier: MQIAQDEPTHMAXEVENT). Shown as event |
ibm_mq.queue.open_input_count (gauge) | Number of MQOPEN calls that have the queue open for input (parameter identifier: MQIAOPENINPUT_COUNT). Shown as connection |
ibm_mq.queue.persistence (gauge) | Specifies the default for message-persistence on the queue. Message persistence determines whether or not messages are preserved across restarts of the queue manager (parameter identifier: MQIADEFPERSISTENCE). Shown as resource |
ibm_mq.queue.trigger_depth (gauge) | This attribute specifies the number of messages that will initiate a trigger message to the initiation queue (parameter identifier: MQIATRIGGERDEPTH). Shown as resource |
ibm_mq.queue.max_message_length (gauge) | This attribute specifies the maximum message length that can be transmitted on the channel (parameter identifier: MQIACHMAXMSG_LENGTH). Shown as resource |
ibm_mq.queue.depth_high_limit (gauge) | This attribute specifies the threshold against which the queue depth is compared before generated a queue high event (parameter identifier: MQIAQDEPTHHIGHLIMIT). Shown as resource |
ibm_mq.queue.priority (gauge) | Specifies the default priority of messages put on the queue (parameter identifier: MQIADEFPRIORITY). Shown as resource |
ibm_mq.queue.input_open_option (gauge) | Specifies the default share option for applications opening this queue for input (parameter identifier: MQIADEFINPUTOPENOPTION). Shown as resource |
ibm_mq.queue.message_delivery_sequence (gauge) | The order in which messages will be returned after a get operation (parameter identifier: MQIAMSGDELIVERY_SEQUENCE). Shown as resource |
ibm_mq.queue.retention_interval (gauge) | The number of hours for which the queue may be needed, based on the date and time when the queue was created (parameter identifier: MQIARETENTIONINTERVAL). Shown as hour |
ibm_mq.queue.open_output_count (gauge) | Number of MQOPEN calls that have the queue open for output (parameter identifier: MQIAOPENOUTPUT_COUNT). Shown as connection |
ibm_mq.queue.trigger_type (gauge) | The conditions under which trigger messages are written as a result of messages arriving on this queue (parameter identifier: MQIATRIGGERTYPE). Shown as resource |
ibm_mq.queue.depth_percent (gauge) | The percent of the queue that is currently utilized. Shown as percent |
ibm_mq.queue.last_get_time (gauge) | The elapsed time in seconds since the last message get from a queue. Shown as second |
ibm_mq.queue.last_put_time (gauge) | The elapsed time in seconds since the last message put to a queue. Shown as second |
ibm_mq.queue_manager.dist_lists (gauge) | Specifies whether distribution-list messages can be placed on the queue (parameter identifier: MQIADISTLISTS). Shown as resource |
ibm_mq.queue_manager.max_msg_list (gauge) | Specifies the maximum message length that can be transmitted on the channel. This is compared with the value for the remote channel and the actual maximum is the lowest of the two values (parameter identifier: MQIACHMAXMSG_LENGTH). Shown as byte |
ibm_mq.queue.max_channels (gauge) | This attribute is the maximum number of channels that can be current (parameter identifier: MQIAMAXCHANNELS). Shown as connection |
ibm_mq.queue.oldest_message_age (gauge) | The age, in seconds, of the oldest message on the queue (parameter identifier: MSGAGE). Shown as second |
ibm_mq.queue.uncommitted_msgs (gauge) | Specifies the maximum number of uncommitted messages. That is, the number of messages that can be retrieved, the number of messages that can be put, and any trigger messages generated within this unit of work (parameter identifier: MQIAMAXUNCOMMITTED_MSGS). Shown as message |
ibm_mq.stats.channel.msgs (count) | The number of persistent and nonpersistent messages sent or received (parameter identifier: QCSTNMSG). Shown as message |
ibm_mq.stats.channel.bytes (count) | The number of bytes sent or received for persistent and nonpersistent messages. (parameter identifier: QCSTNBYT). Shown as message |
ibm_mq.stats.channel.put_retries (count) | The number of times in the time interval that a message failed to be put, and entered a retry loop (parameter identifier: MQIAMOPUTRETRIES). Shown as message |
ibm_mq.stats.channel.full_batches (count) | The number of batches processed by the channel that were sent because the value of the channel attributes BATCHSZ or BATCHLIM was reached (parameter identifier: MQIAMOFULLBATCHES). Shown as message |
ibm_mq.stats.channel.incomplete_batches (count) | The number of batches processed by the channel, that were sent without the value of the channel attribute BATCHSZ being reached (parameter identifier: MQIAMOINCOMPLETEBATCHES). Shown as message |
ibm_mq.stats.channel.avg_batch_size (gauge) | The average batch size of batches processed by the channel (parameter identifier: MQIAMOAVGBATCH_SIZE). Shown as message |
ibm_mq.stats.queue.q_min_depth (gauge) | The minimum queue depth during the monitoring period (parameter identifier: MQIAMOQMIN_DEPTH). Shown as message |
ibm_mq.stats.queue.q_max_depth (gauge) | The maximum queue depth during the monitoring period (parameter identifier: MQIAMOQMAX_DEPTH). Shown as message |
ibm_mq.stats.queue.put_fail_count (count) | The number of unsuccessful attempts to put a message to the queue (parameter identifier: MQIAMOPUTSFAILED). Shown as message |
ibm_mq.stats.queue.get_fail_count (count) | The number of unsuccessful destructive get requests (parameter identifier: MQIAMOGETSFAILED). Shown as message |
ibm_mq.stats.queue.put1_fail_count (count) | The number of unsuccessful attempts to put a message using MQPUT1 calls (parameter identifier: MQIAMOPUT1SFAILED). Shown as message |
ibm_mq.stats.queue.browse_fail_count (count) | The number of unsuccessful non-destructive get requests (parameter identifier: MQIAMOBROWSESFAILED). Shown as message |
ibm_mq.stats.queue.non_queued_msg_count (count) | The number of messages that bypassed the queue and were transferred directly to a waiting application. This number represents how many times WebSphere MQ was able to bypass the queue, and not the number of times an application was waiting (parameter identifier: MQIAMOMSGSNOT_QUEUED). Shown as message |
ibm_mq.stats.queue.expired_msg_count (count) | The number of persistent and non-persistent messages that were discarded because they had expired before they could be retrieved (parameter identifier: MQIAMOMSGSEXPIRED). Shown as message |
ibm_mq.stats.queue.purge_count (count) | The number of messages purged (parameter identifier: MQIAMOMSGSPURGED). Shown as message |
ibm_mq.stats.queue.avg_q_time (gauge) | The average latency, in microseconds, of messages destructively retrieved from the queue during the monitoring period for persistent and non-persistent messages (parameter identifier: MQIAMO64AVGQ_TIME). Shown as message |
ibm_mq.stats.queue.browse_bytes (gauge) | The number of bytes read in non-destructive get requests for persistent and non-persistent messages (parameter identifier: MQIAMO64BROWSEBYTES). Shown as message |
ibm_mq.stats.queue.browse_count (count) | The number of successful non-destructive get requests for persistent and non-persistent messages (parameter identifier: MQIAMO_BROWSES). Shown as message |
ibm_mq.stats.queue.get_bytes (count) | The number of bytes read in destructive put requests for persistent and non-persistent messages (parameter identifier: MQIAMO64GETBYTES). Shown as message |
ibm_mq.stats.queue.get_count (count) | The number of successful destructive get requests for persistent and non-persistent messages (parameter identifier: MQIAMO_GETS). Shown as message |
ibm_mq.stats.queue.put_bytes (count) | The number of bytes written in put requests to the queue for persistent and non-persistent messages (parameter identifier: MQIAMO64PUTBYTES). Shown as message |
ibm_mq.stats.queue.put_count (count) | The number of persistent and non-persistent messages successfully put to the queue, with exception of MQPUT1 requests (parameter identifier: MQIAMO_PUTS). Shown as message |
ibm_mq.stats.queue.put1_count (count) | The number of persistent and non-persistent messages successfully put to the queue using MQPUT1 calls (parameter identifier: MQIAMO_PUT1S). Shown as message |
IBM MQ には、イベントは含まれません。
ibm_mq.can_connect
Returns CRITICAL
if the Agent cannot connect to the MQ server for any reason or UNKNOWN
if the configured queue manager is not matched by the queue_manager_process
option. Returns OK
otherwise.
Statuses: ok, critical, unknown
ibm_mq.queue_manager
Returns CRITICAL
if the Agent cannot retrieve stats from the queue manager or UNKNOWN
if the configured queue manager is not matched by the queue_manager_process
option. Returns OK
otherwise.
Statuses: ok, critical, unknown
ibm_mq.queue
Returns CRITICAL
if the Agent cannot retrieve queue stats. Returns OK
otherwise.
Statuses: ok, critical
ibm_mq.channel
Returns CRITICAL
if the Agent cannot retrieve channel stats. Returns OK
otherwise.
Statuses: ok, critical
ibm_mq.channel.status
Return CRITICAL
if the status is INACTIVE/STOPPED/STOPPING. Returns OK
if the status is RUNNING. Returns WARNING
if the status might lead to running.
Statuses: ok, critical, warning, unknown
以下の警告が表示される場合
Warning: Error getting pcf queue reset metrics for SAMPLE.QUEUE.1: MQI Error. Comp: 2, Reason 2035: FAILED: MQRC_NOT_AUTHORIZED
これは、datadog
ユーザーがリセットキューのメトリクスを収集するための +chg
権限を持っていないことが原因です。これを解決するには、datadog
ユーザーに +chg
権限を与えて setmqaut
キューのリセットメトリクスを収集するか、あるいは collect_reset_queue_metrics
を無効にしてください。
collect_reset_queue_metrics: false
IBM MQ チェックはサーバー上でクエリを実行しますが、これらのクエリが高価になり、チェックに劣化をもたらすことがあります。
チェックの実行に時間がかかったり、ホスト上で多くのリソースを消費していることが確認された場合、以下を試してチェックの範囲を縮小できる可能性があります。
auto_discover_queues
を使用している場合は、代わりに queue_patterns
や queue_regex
を使用して、特定のキューのみを検出するようにしてください。これは、システムが動的なキューを生成している場合に特に有効です。queue_patterns
や queue_regex
を使用してキューを自動検出する場合は、パターンや正規表現を絞り込んで、より少ないキューにしかマッチしないようにしてみてください。auto_discover_channels
を無効にしてください。collect_statistics_metrics
を無効にします。Unpack for type ((67108864,)) not implemented
: このようなエラーが発生し、MQ サーバーが IBM OS で動作している場合は、convert_endianness
を有効にして Agent を再起動します。Error getting [...]: MQI Error. Comp: 2, Reason 2085: FAILED: MQRC_UNKNOWN_OBJECT_NAME
: このようなメッセージが表示される場合、インテグレーションが存在しないキューからメトリクスを収集しようとしていることが原因です。これは、構成ミスか、auto_discover_queues
を使用している場合、インテグレーションがダイナミックキューを発見して、メトリクスを収集しようとしたときに、そのキューがもはや存在しないことが原因です。この場合、より厳格な queue_patterns
や queue_regex
を指定して問題を軽減するか、あるいは警告を無視することができます。ご不明な点は、Datadog のサポートチームまでお問い合わせください。
お役に立つドキュメント、リンクや記事: