オンプレミス環境における IBM MQ のトレース
オンプレミス環境では、物理マシンまたは仮想マシンに直接インストールされた IBM MQ において、 IBM MQ トレースの有効化、構成、更新、無効化が可能です。
前提条件
IBM MQ サーバーおよびキューマネージャインスタンスをインストールおよび設定してから、 IBM MQ トレース機能をインストールおよび設定してください。
IBM MQ トレースのサポート対象オペレーティングシステムを確認し、環境との互換性を確保してください。
お使いのプラットフォームに応じて、サポートされている OpenSSL バージョンをインストールしてください。
- Linux および Windows : OpenSSL 3.2.3 以降
- AIX : OpenSSL 3.0.16.1000 以降
以下のプラットフォーム固有の要件が満たされていることを確認してください:
Windows : Microsoft Visual C++ 再配布可能パッケージ 2019 以降をインストールしてください。 Microsoftのウェブサイトから最新のパッケージをダウンロードしてください。
AIX:
次のファイル セットを含む、 XL C/C++ Runtime for AIX 17.1.3.0 以降のバージョンをインストールします。
libc++.rte、libc++abi.rte、 そしてlibunwind.rte。ファイルセットがインストールされていることを確認するには、以下を実行してください:
lslpp -l | grep -e libc++.rte -e libc++abi.rte -e libunwind.rte以下の AIX システムライブラリのバージョンがインストールされていることを確認してください:
- pthreads 7.2.5.203 以降
- libc バージョン 7.2.5.206 以降
ライブラリのバージョンを確認するには、以下を実行してください:
lslpp -l | grep -e bos.rte.libc -e bos.rte.libpthreads
IBM MQ のダウンロードユーザー・エグジットのトレース
オンプレミス環境の IBM MQ でトレースを有効化する前に、 IBM MQ トレースユーザーエグジットパッケージをダウンロードして設定してください。
- AIX : 『 OpenSSL のダウンロードとインストール、またはアップグレード』および『 OpenSSH 』を参照してください。
- Windows および Linux : OpenSSL のドキュメントにある 「 OpenSSL の入手とインストール」 を参照してください。
IBM MQ トレースユーザー・エグジット・パッケージをダウンロードするには、次の手順を完了してください:
Art ifactoryから IBM MQ トレースユーザー退出
.tar.gzファイルをダウンロードしてください。 ファイルをダウンロードするには、以下の認証情報を使用してください:- ユーザー名: アンダースコア (
_) - パスワード: 有効なエージェントキー
- ユーザー名: アンダースコア (
ダウンロードした
.tar.gzファイルを一時的な場所に解凍してください。 抽出後、ディレクトリ内に異なるプラットフォーム用のユーザー・エグジット・パッケージを5つ見つける。プラットフォーム固有のユーザー・エグジット・パッケージを IBM MQ サーバーに転送してください。
以下のディレクトリでユーザー・エグジット・パッケージを抽出してください:
- Linux または AIX IBM MQ サーバー:
/var/mqm/exits64 - Windows IBM MQ サーバー:
C:\ProgramData\IBM\MQ\exits64
- Linux または AIX IBM MQ サーバー:
以下のファイルを
exits64ディレクトリに配置してください:IBM MQ ユーザー・エグジット・バイナリ・ファイル( IBM MQ API の呼び出しをインターセプトし、ラップされた OpenTelemetry C++ クライアント・ライブラリへの呼び出しを開始してスパンを作成する)
- Linux そして AIX :
mqtracingexit_r - Windows:
mqtracingexit.dll
- Linux そして AIX :
ラッピングされた OpenTelemetryC++ クライアントバイナリファイル(スパンのライフサイクルを管理する機能を提供し、 Instana ホストエージェントにスパンを送信します)
- Linux そして AIX :
tracelibrary.so - Windows:
tracelibrary.dll
- Linux そして AIX :
mqtracingexit.conf設定ファイル: このファイルは、 MQ サーバー上のすべてのキューマネージャインスタンスの設定ファイルです。 キューマネージャ固有の設定ファイルを作成するには、をにmqtracingexit.confコピーしますmqtracingexit_<QMNAME>.conf。
以下の手順を完了し、トレースツールが実行時に OpenTelemetry クライアント共有ライブラリを解決できることを確認してください:
Linux/AIX
- ディレクトリ
/opt/instana/tracing/ibmmq/lib内のファイルをlibopentelemetry_*.soコピーしてください。
- ディレクトリ
Windows
- ディレクトリ
C:\ProgramData\IBM\MQ\exits64内のファイルをopentelemetry_*.dllコピーしてください。 - システム環境変数ダイアログを通じて、
C:\ProgramData\IBM\MQ\exits64ディレクトリを環境変数PATHに追加してください。 - ターミナルを再起動してください。
注: これらの手順は、 IBM MQ ユーザー( Linuxmqmおよび AIX 上、ならびに WindowsMQ_USER上)および MQ サービスを起動するその他のユーザーに対して実行する必要があります。- ディレクトリ
必要に応じて、互換性のある OpenSSL のバージョンをインストールしてください。 トレーサーが、必要なバージョンの OpenSSL バイナリを正しく解決できることを確認してください。 システムのメインの OpenSSL インストール環境を更新できない場合は、次のいずれかの操作を行ってください:
- Linux または AIX :セカンダリの OpenSSL インストールをインストールするか、その
/opt/instana/tracing/ibmmq/libディレクトリにリンクを設定します。 - Windows :セカンダリの OpenSSL インストールを実行するか、または
C:\ProgramData\IBM\MQ\exits64そのディレクトリにリンクを設定します。
- Linux または AIX :セカンダリの OpenSSL インストールをインストールするか、その
IBM MQ の有効化ユーザー・エグジットのトレース
オンプレミス版 IBM MQ でユーザー・エグジットを有効にするには、ホスト上のすべてのキュー・マネージャ・インスタンスをトレースする場合は`/etc/cpu_trace.conf mqs.ini `を qm.ini 、特定のキュー・マネージャをトレースする場合は`/etc/cpu_trace.conf`を編集します。
ファイルは、 IBM MQ サーバーのプラットフォームに応じて以下のディレクトリに配置されています:
Linux および AIX
mqs.ini:/var/mqmqm.ini:/var/mqm/qmgrs/<QMNAME>
Windows
mqs.ini:C:\ProgramData\IBM\MQqm.ini:C:\ProgramData\IBM\MQ\qmgrs\<QMNAME>
<QMNAME> はキューマネージャの名前です。
特定のキューマネージャに対するトレースの有効化
特定のキューマネージャのトレースを有効にするには、次の手順を完了してください:
qm.iniファイルをバックアップします。- Linux そして AIX :
/var/mqm/qmgrs/<QMNAME>/qm.ini - Windows:
C:\ProgramData\IBM\MQ\qmgrs\<QMNAME>\qm.ini
- Linux そして AIX :
qm.iniファイルを編集して、以下の構成を追加します。Linux そして AIX :
ApiExitLocal: Sequence=100 Function=EntryPoint Module=/var/mqm/exits64/mqtracingexit Name=TracingApiExitWindows:
ApiExitLocal: Sequence=100 Function=EntryPoint Module=C:\ProgramData\IBM\MQ\exits64\mqtracingexit Name=TracingApiExit
ここで:
Sequence: この出口が他の出口に対してどの位置にあるかを識別します。 より低いシーケンス番号を持つ出口が、より高いシーケンス番号を持つ出口よりも先に呼び出される。Function: モジュール内のユーザー・エグジット・コードを含む関数のエントリ・ポイントの名前を特定します。Module: ユーザー・エグジット・コードを含みます。 このフィールドにモジュールの絶対パス名が指定されていると、そのまま使用されます。 このフィールドにモジュール名のみが含まれる場合、モジュールは ファイルqm.ini内のExitPath内の 属性ExitsDefaultPathを使用して検索されます。Name: ユーザーの説明名が存在します。
変更を保存します。
変更を適用するには、キューマネージャインスタンスを再起動してください。
IBM MQ のユーザー・エグジットを有効にする方法の詳細については、 IBM MQ ガイドを参照してください。
すべてのキューマネージャインスタンスでトレースを有効化
ホスト上のすべてのキューマネージャインスタンスに対してトレースを有効にするには、次の手順を完了します:
mqs.iniファイルをバックアップします。- Linux そして AIX :
/var/mqm/mqs.ini - Windows:
C:\ProgramData\IBM\MQ\mqs.ini
- Linux そして AIX :
ファイルを
mqs.ini編集し、以下の設定を追加してください:Linux および AIX に、以下の行を追加してください:
ApiExitCommon: Sequence=100 Function=EntryPoint Module=/var/mqm/exits64/mqtracingexit Name=TracingApiExitWindows に以下の行を追加してください:
ApiExitCommon: Sequence=100 Function=EntryPoint Module=C:\ProgramData\IBM\MQ\exits64\mqtracingexit Name=TracingApiExit
注記: キューマネージャが起動すると、このスタンス内の属性が読み込まれ、その後、ファイルqm.iniで定義されたユーザー・エグジットによって上書きされます。変更を保存します。
変更を適用するには、キューマネージャインスタンスを再起動してください。
IBM MQ トレースの構成
オンプレミス版 IBM MQ のトレース設定を行うには、次の手順を完了してください:
Go
exits64ディレクトリへ:- Linux そして AIX :
/var/mqm/exits64 - Windows:
C:\ProgramData\IBM\MQ\exits64
- Linux そして AIX :
すべてのキューマネージャインスタンスのファイルを
mqtracingexit.conf編集するか、特定のキューマネージャのファイルをmqtracingexit_<QMNAME>.conf編集します。# The configuration items for IBM MQ Tracing user exit 2026.1.3 LOG_LEVEL="error" # The log level of the tracing user exit, which can be set to error, warn, info, or debug. The default value is error. SPAN_FORMAT="instana" # The trace system to which the span data is sent. The default value is "instana", but you can also change it to "otel" to send the span data to an OpenTelemetry collector. MONITOR_LEVEL="normal" # The tracing level of the queue manager(s), which can be set to off, quiet, normal, or debug. The default value is normal. IBMMQ_FF_SEND_METRICS = "off" # Feature flag to include message backout count metrics in trace spans. Set to "on" or "off" (default: off). #IBMMQ_DEST_MONITOR_LEVEL_OFF = "" # The regex for message destinations with MONITOR_LEVEL(tracing level) off, for example: "^TMPQ.*". An example for multiple conditions: "^SYSTEM\\.AUTH\\..*|^TEMP\\.QUEUE\\..*". #IBMMQ_DEST_MONITOR_LEVEL_QUIET = "" # The regex for message destinations with MONITOR_LEVEL(tracing level) quiet. #IBMMQ_DEST_MONITOR_LEVEL_NORMAL = "" # The regex for message destinations with MONITOR_LEVEL(tracing level) normal. #IBMMQ_DEST_MONITOR_LEVEL_DEBUG = "" # The regex for message destinations with MONITOR_LEVEL(tracing level) debug. #IBMMQ_PUBSUB_SUPPORT = "off" # The switch for the pubsub support, which can be set to on or off. The default value is off. #IBMMQ_RFH2_HEADERS_TO_EXPOSE = "" # A list of message headers that should be included in the span payload, with each header separated by commas. #INSTANA_AGENT_HOST = "localhost" # The Instana agent host, localhost will be used by default. #INSTANA_AGENT_PORT = 42699 # The Instana agent port, 42699 will be used by default. #INSTANA_AGENT_PROTO = "http" # The connection type between mq tracing exit and instana agent; http and https are supported; http will be used by default. #HOST_ALIAS="<YOUR-HOST-NAME>" # The host name to match with instana agent configuration.yaml. #LOCAL_SOURCE_ADDRESS = "" # The local source ip address for outgoing traffic; if not specified, a local address will be automatically allocated by default. #The following three configuration items only apply when the SPAN_FORMAT is set to "otel". #OTLP_EXPORTER_GRPC_ENDPOINT = "" # The grpc endpoint to which the span data is sent. The default value is "localhost:4317". #OTLP_EXPORTER_SSL_CACERT_PATH = "" # The path of the CA certificate file to verify the certificate of the target OpenTelemetry collector. Used only for GRPC exporter. #OTLP_EXPORTER_HTTP_URL = "" # The http url to which the span data span data is sent. For example, "http://localhost:4318:/v1/traces". #OTEL_EXPORTER_OTLP_HEADERS="" # Custom headers to include in OTLP requests, formatted as key-value pairs separated by commas. For example: "api-key=secret,custom-header=value". #OTEL_RESOURCE_ATTRIBUTES="" # Resource attributes to attach to all telemetry data, formatted as key-value pairs separated by commas. For example: "service.name=my-service,deployment.environment=production".設定パラメータの詳細については、 「設定パラメータ」 を参照してください。
ファイルを保存します。
キューマネージャのインスタンスを再起動します。
INSTANA_SERVICE_NAME プロセス用の環境変数を設定してください。構成パラメーター
以下の表に構成パラメータを列挙します:
| パラメーター | 説明 | |
|---|---|---|
| LOG_TARGET | ログ出力の宛先を指定します。 サポートされている値はとですsystemfile 。 デフォルト値はfile。 このsystem オプションは、 Linux およびUNIXシステムではsyslogに、 Windows システムではイベントログにログを書き込みます。 |
|
| LOG_LEVEL | ログレベルを指定します:info,warn,error, またはdebug。 ログファイルは、( Linux または AIX ) またはC:\ProgramData\IBM\MQ\trace ( Windows ) に/tmp/ibmmqtrace 保存されます。 ログファイルのデフォルトの保存先を変更するには、 「 IBM MQ トレースのログファイル」 セクションの手順を参照してください。 |
|
| SPAN_FORMAT | スパンデータが送信されるトレースシステムを指定します。 この変数を次のように設定してくださいinstana。 デフォルトでは、データはホストエージェントのエンドポイントに送信されますhttp://localhost:42699。 HTTPS プロトコルを使用してスパンデータをリモートホストエージェントに送信するには、設定項目INSTANA_AGENT_HOST を更新しINSTANA_AGENT_PROTO、 IBM MQ のホストについては、設定をSPAN_FORMAT 統一する必要があります。 |
|
| MONITOR_LEVEL | キューマネージャーのデフォルトのトレースレベルを指定します:off,quiet,normal, またはoffdebug: トレースデータは収集されませんquiet normalトレース相関情報はすべてのメッセージに追加されるわけではありませんが、 IBM MQ サーバーではメッセージのトレースが可能です トレース相関情報は、 RFH2 ヘッダーまたは名前付きプロパティを持つメッセージには追加されますが、debugテキストメッセージには追加されません トレース対象の全メッセージにトレース相関情報が追加される。 |
|
| IBMMQ_DEST_MONITOR_LEVEL_OFF | トレースレベルを指定してメッセージのoff送信先を指定します。 value は、次のような正規表現でなければ"^TMPQ.*"なりません。 つまり、でTMPQ 始まる宛先に送信されるメッセージは追跡されません。 トランザクションの整合性を確保するため、同一メッセージングチェーン内のメッセージ宛先に対しては、同じトレースレベルを維持してください。 メッセージの宛先が複数の正規表現に一致する場合、適用される正規表現の優先順位は、QUIETOFF,NORMAL,,、DEBUGおよびの順となります。 |
|
| IBMMQ_DEST_MONITOR_LEVEL_QUIET | トレースレベルとともにメッセージのquiet送信先を指定します。 値は正規表現でなければなりません。 メッセージ宛先がこの正規表現に一致する場合、そのメッセージ宛先に送信されるすべてのメッセージに対してトレース相関情報は追加されません。 しかし、 IBM MQ サーバーではメッセージを追跡できます。 |
|
| IBMMQ_DEST_MONITOR_LEVEL_NORMAL | トレースレベルを指定してメッセージのnormal送信先を指定します。 値は正規表現でなければなりません。 メッセージの宛先がこの正規表現に一致する場合、トレース相関情報が RFH2 ヘッダーまたは名前付きプロパティとしてメッセージに追加されます。 しかし、トレース相関情報はテキストメッセージには追加されません。 |
|
| IBMMQ_DEST_MONITOR_LEVEL_DEBUG | トレースレベルごとにメッセージの送信debug先を指定します。 値は正規表現でなければなりません。 メッセージ宛先がこの正規表現に一致する場合、そのメッセージ宛先に送信されるすべてのメッセージにトレース相関情報が追加されます。 Windows では、 既知の問題のため、宛先キューのモニターレベル (IBMMQ_DEST_MONITOR_LEVEL_*) とグローバルモニターレベル (MONITOR_LEVEL) を同時に使用することはできません。 |
|
| IBMMQ_FF_SEND_METRICS | このフラグを設定すると、 Instana のスパンにおいて数値属性をメトリクスとして送信できるようになります。 このMQMDBackoutCount 属性のみがサポートされています。 |
|
| IBMMQ_PUBSUB_SUPPORT | パブリッシュ/サブスクライブメッセージのトレース機能をサポートします。 有効にするにはon ここに設定し、off 無効にするにはここに設定してください。 |
|
| IBMMQ_RFH2_HEADERS_TO_EXPOSE | spanペイロードに含める必要があるメッセージヘッダーのリストを指定します。各ヘッダーはコンマで区切ります。例:IBMMQ_RFH2_HEADERS_TO_EXPOSE="rfh2_folder1.header1, rfh2_folder2.header2, header3" サイズが256バイトを超えるメッセージヘッダーは、スパンサイズが大きくなりすぎて全体的なパフォーマンスに影響を与えるのを防ぐため、切り詰められます。 また、スパン内で収集されたすべてのメッセージヘッダーの合計長は、3KBを超えてはならない。 したがって、収集には最も重要なヘッダーのみを設定する必要があります。 |
|
| INSTANA_AGENT_HOST | Instana 形式のSPANデータが送信されるエージェントホストを指定します。デフォルトではlocalhostが使用されます。 リモートエージェントのホストを指定する場合は、デフォルトではホストエージェントが他のホストからアクセスできないため、まずリモートホストエージェント用の*instanaAgentDir*/etc/instana/com.instana.agent.main.config.Agent.cfg 行http.listen=* を追加してください。 |
|
| INSTANA_AGENT_PORT | Instana エージェントがリスニングするポートを指定します。これは42699 デフォルトで使用されます。 エージェントが別のポートでリスニングしている場合のみ、ポートを変更する必要があります。 |
|
| INSTANA_AGENT_PROTO | IBM MQ トレース終了とホストエージェント間の接続タイプを指定します。 IBM MQ センサーは HTTP プロトコルと HTTPS プロトコルの両方をサポートします。 ただし、デフォルトでは HTTP が使用されます。 プロトコルを HTTPS に変更するには、まずエージェントエンドポイントを保護する必要があります。 エージェントエンドポイントのセキュリティ設定に関する詳細については、 「エージェントエンドポイントの TLS 暗号化の設定」 を参照してください。 | |
| HOST_ALIAS | IBM MQ トレースのユーザー・エグジットによって収集されるスパン・データのホスト・エイリアスを指定します。 IBM MQ センサーがキューマネージャーも監視している場合、 IBM MQ への呼び出しをインフラストラクチャエンティティにリンクできます。 MQ ホストのFQDNがデフォルトで使用されます。 ホストエイリアスの値は、ホストエージェント設定YAMLで指定されている IBM MQ ホストと一致する必要があります。 IBM MQ センサー設定で IBM MQ ホストのFQDNが使用されておらず、かつホストエージェントがローカルの IBM MQ ホスト上にない場合、ホストエイリアスを指定してください。 IBM MQ センサーは、ローカルのキューマネージャインスタンスの完全修飾ドメイン名(FQDN)を検出できます。 | |
| LOCAL_SOURCE_ADDRESS | IBM MQ からの送信トラフィックのローカル送信元IPアドレスを指定します。ユーザー退出のトレース。 IBM MQ サーバーに複数のネットワークインターフェースが存在し、 IBM MQ からのすべての送信トラフィックを特定のネットワークインターフェースにバインドしたい場合にのみ、設定が必要です。 | |
| OTLP_EXPORTER_GRPC_ENDPOINT | OTLP の gRPC エンドポイントを指定します。otelこの設定が有効になっている場合SPAN_FORMAT 、 OpenTelemetry のスパンデータはこのエンドポイントに送信されます。 デフォルトはlocalhost:4317。 gRPC エンドポイントで TLS が有効になっている場合は、設定を行ってくださいOTLP_EXPORTER_SSL_CACERT_PATH。 AIX プラットフォームでは、 OTLP gRPC プロトコル(設定時に有効化OTLP_EXPORTER_GRPC_ENDPOINTされる)は利用できないため、デフォルトでは HTTP が使用されます。 |
|
| OTEL_EXPORTER_OTLP_HEADERS | otelが に設定されている場合 SPAN_FORMAT 、 OTLP のスパンデータとともに送信されるカスタムヘッダーを指定します。 ヘッダーは、カンマ区切りのキーと値のペアとして、以下の key1=value1,key2=value2 形式で指定する必要があります。 このパラメータは、認証トークン、 API キー、または OTLP コレクターエンドポイントで必要とされるその他のメタデータに役立ちます。 例えば、Authorization=Bearer token123,X-Custom-Header=valueです。 |
|
| OTEL_RESOURCE_ATTRIBUTES | otelが に設定されている場合 SPAN_FORMAT 、すべての OTLP スパンに付加されるリソース属性を指定します。 リソース属性は、テレメトリデータの出所に関するコンテキスト情報を提供します。 属性は、カンマ区切りのキーと値のペアとして、この key1=value1,key2=value2 形式で指定する必要があります。 deployment.environmentservice.versionservice.name一般的な属性には、、などがあります。 例えば、service.name=my-mq-service,service.version=1.0.0,deployment.environment=production です。 これらの属性は、オブザーバビリティ・プラットフォームにおいてスパンを特定し、分類するのに役立ちます。 |
IBM MQ のトレースログの管理
IBM MQ のトレース・ユーザー・エグジットは、ファイルシステムまたはシステムのロギング機能にログを書き込むことができます。 この動作を制御するには、設定 LOG_TARGET パラメータを使用してください。
ログ・ファイル
IBM MQ トレースログはファイル mqExit*.log に保存されます。 IBM MQ のトレースのログレベルを設定するには、 IBM MQLOG_LEVEL トレースのユーザー・エグジット内の設定パラメータを変更してください。
Linux および AIX では、ログファイルはデフォルトで
/tmp/ibmmqtraceディレクトリに保存されます。IBM MQ トレースログファイルのデフォルトディレクトリを変更するには、次の手順を完了してください:
- IBM MQ ホスト上でINSTANA_IBMMQ_TRACE_DIR環境変数を設定してください。 IBM MQ プロセスを開始できるすべてのユーザーに対して、この環境変数を設定してください。 この環境変数を設定せずに IBM MQ プロセスを起動した場合、ログファイルはデフォルトのディレクトリに配置されます。
- キューマネージャインスタンスを再起動してください。
Windows では、ログファイルはデフォルトで
C:\ProgramData\IBM\MQ\traceディレクトリに保存されます。 デフォルトでは、 IBM MQ トレースログファイルには.mqExitが接頭辞として付加されます。IBM MQ トレースログファイルのこのデフォルトプレフィックスを変更するには、次の手順を完了してください:
- IBM MQ ホスト上でINSTANA_IBMMQ_TRACE_PREFIX環境変数を設定してください。 IBM MQ プロセスを開始できるすべてのユーザーに対して、この環境変数を設定してください。 この環境変数を設定せずに IBM MQ プロセスを起動した場合、ログファイルには接頭辞
mqExit.が付与されます。 - キューマネージャインスタンスを再起動してください。
- IBM MQ ホスト上でINSTANA_IBMMQ_TRACE_PREFIX環境変数を設定してください。 IBM MQ プロセスを開始できるすべてのユーザーに対して、この環境変数を設定してください。 この環境変数を設定せずに IBM MQ プロセスを起動した場合、ログファイルには接頭辞
システム・ログ
IBM MQ のトレース設定を変更することで、ログファイルではなく、オペレーティングシステムのネイティブなログ機能にログメッセージを出力するように設定できます。
Linux および AIX
Linux および AIX システムでは、終了時にシステムログユーザー機能(syslog)に書き込むように設定できます。 この設定により、 IBM MQ のトレースメッセージがシステムのsyslogデーモンによって取得され、syslogの設定に従って処理されるようになります。
システムログを有効にするには、以下の手順を実行してください:
- ファイル
mqtracingexit.conf内で、 IBM MQ のトレース終了処理がシステムログを使用するように設定するには、適切な設定パラメータを設定してください。 - メッセージは、user ファシリティを使用して syslog に書き込まれます。 標準のsyslog設定を使用して、メッセージのフィルタリングやルーティングを行うことができます。通常は または
/etc/syslog.conf/etc/rsyslog.confで行います。 以下のいずれかの方法でメッセージを表示してください:
- systemd ベースのシステムでは、コマンド
journalctlを使用してください。 - ディレクトリ
/var/log/内のログファイルを確認してください。
- systemd ベースのシステムでは、コマンド
Windows
Windows システムでは、 Windows のイベントログに書き込むようにexitを設定できます。 この構成では、 IBM MQ のトレース用にカスタムイベントログソースを作成する必要があります。
Windows のイベントログ連携を設定するには、以下の手順を実行してください:
イベントログのレジストリキー構造を作成します:
- レジストリ エディター( regedit.exe )を管理者として開く
- 以下の場所に移動するか、作成してください:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Instana\IBM-MQ
レジストリ値「 EventMessageFile 」を追加します:
- 名前:
EventMessageFile - タイプ:
REG_EXPAND_SZ(拡張可能な文字列値) - データ:
%systemroot%\System32\mscoree.dll
この値は、メッセージの書式設定リソースを含むDLLを指定します。
- 名前:
レジストリ値「 TypesSupported 」を追加します:
- 名前:
TypesSupported - 型:
REG_DWORD(32ビット DWORD) - データ:
0x00000007(16進数) または7(10進数)
この値は、すべてのイベントタイプを有効にするビットマスクです:
- 0x0001 = エラーイベント
- 0x0002 = 警告イベント
- 0x0004 = 説明会
- 0x0007 = すべてのイベントタイプ(エラー + 警告 + 情報)
- 名前:
- レジストリを変更した後は、設定が反映されるように、キューマネージャーを再起動してください。
イベントを見る:
- イベント ビューアーを開く ( eventvwr.msc )
- 次のパスに移動します:[アプリケーションとサービスのログ] → [ Instana ] → [ IBM ] - [ MQ ]
IBM MQ トレースメッセージは、適切な重大度レベルで表示されます。
OpenTelemetry のspanデータを OTLP レシーバーへ送信
IBM MQ Linux と Windows の両方でトレースを実行すると、 OpenTelemetry 形式のスパンデータが生成されます。 その後、データは OpenTelemetry プロトコル( OTLP )対応の受信機(例: OpenTelemetry Collectorや Jaeger Collector)に送信できます。 OTLP レシーバーは、その後データを可観測性バックエンドにエクスポートし、さらなる処理を行います。
OpenTelemetry スパンデータを生成し、 OTLP レシーバーに送信するには、次の手順を完了してください:
- IBM MQ サーバーにアクセスし、 IBM MQ
mqtracingexit.confのユーザー・エグジットのトレース設定ファイルを開きます。 - SPAN_FORMAT フィールドを.
otelに設定してください。 - スパンデータを OTLP の gRPC レシーバーに送信するには、 OTLP_EXPORTER_GRPC_ENDPOINT フィールドに gRPC エンドポイントを指定します。 デフォルト値は
localhost:4317です。 gRPC エンドポイントで TLS が有効化されている場合、CA 証明書ファイルのパスを OTLP_EXPORTER_SSL_CACERT_PATH フィールドに指定してください。 この証明書ファイルは、対象の OTLPgRPC エンドポイントの証明書を検証します。 - OTLP HTTP レシーバーを使用する場合は、 OTLP_EXPORTER_HTTP_URL フィールドに OTLP HTTP エンドポイントの URL を指定してください。 例えば、
http://localhost:4318/v1/tracesです。 - オプション: OTLP のスパンデータとともにカスタムヘッダーを送信するには、 OTEL_EXPORTER_OTLP_HEADERS フィールドに、カンマ区切りのキーと値のペアとして指定してください。 例えば、
Authorization=Bearer token123,X-Custom-Header=valueです。 このパラメータは、認証を行う場合や、 OTLP コレクターにメタデータを渡す場合に使用します。 - オプション:すべての OTLP スパンにリソース属性を付与するには、 OTEL_RESOURCE_ATTRIBUTES フィールドに、カンマ区切りのキーと値のペアとしてそれらを指定してください。 例えば、
service.name=my-mq-service,service.version=1.0.0,deployment.environment=productionです。 これらの属性は、テレメトリデータの出所に関するコンテキスト情報を提供します。 - キューマネージャインスタンスを再起動してください。
Red Hat OpenShift クラスタ上の IBM MQ に対して、キューマネージャポッドに同等の環境変数を設定することで、この機能を構成できます。 キューマネージャープッドへの環境変数の設定方法の詳細については、 「 Red Hat OpenShift クラスタでの IBM MQ トレースの設定」 を参照してください。
IBM MQ トレースのアップグレード
IBM MQ Tracing user exit の新バージョンがリリースされた場合、以下の手順でアップグレードできます:
Linux または AIX でのアップグレード
IBM MQ のトレース機能を Linux または AIX でアップグレードするには、以下の手順を完了してください:
- Instana エージェントが IBM MQ サーバー上で実行されている場合、キューマネージャインスタンスと Instana エージェントを停止してください。
- IBM MQ の構成ファイルをバックアップします。 IBM MQ/var/mqm/exits64 サーバー上のディレクトリにあるユーザー・エグジットのトレースを実行します。
- ダウンロードした IBM MQ トレースユーザー終了ファイルを解凍し、ディレクトリ /var/mqm/exits64 内の対応するファイルと置き換えてください。
- ディレクトリ /opt/instana/tracing/ibmmq/lib 内で、依存
libopentelemetry関係を更新されたlibopentelemetry依存関係に置き換えてください。 - ステップ1で Instana エージェントが停止した場合は、キューマネージャインスタンスと Instana エージェントを再起動してください。
Windows でのアップグレード
Windows で IBM MQ のトレース機能をアップグレードするには、次の手順を完了してください:
- Instana エージェントが IBM MQ サーバー上で実行されている場合、キューマネージャインスタンス、 IBM MQ Explorer、および Instana エージェントを停止してください。
- IBM MQ の構成ファイルをバックアップします。 IBM MQC:\ProgramData\IBM\MQ\exits64 サーバー上のディレクトリにあるユーザー・エグジットのトレースを実行します。
- ダウンロードした IBM MQ トレースユーザー終了ファイルを抽出し、ディレクトリ C:\ProgramData\IBM\MQ\exits64 内の対応するファイルと置き換えてください。
- ステップ1で Instana エージェントが停止した場合は、キューマネージャインスタンス、 IBM MQ Explorer、および Instana エージェントを再起動してください。
IBM MQ トレースの無効化
IBM MQ でのトレースデータの収集を無効にするには、設定 mqtracingexit.con ファイルで `` を `` off に MONITOR_LEVEL 設定します。 IBM MQ トレースの設定を参照してください。
IBM MQ トレースユーザー終了を無効化するには、 IBM MQ ホストで次の手順を完了してください:
- 設定
C:\ProgramData\IBM\MQ\mqs.ini/var/mqm/mqs.iniファイルまたは設定ファイルで設定した およびApiExitLocalのApiExitCommonスタンザを削除してください。 - IBM MQ トレースが有効になっている IBM MQ ホストから、または
C:\ProgramData\IBM\MQ\qmgrs\<QMNAME>\qm.ini/var/mqm/qmgrs/<QMNAME>/qm.iniファイルを削除してください。 - Instana エージェントが IBM MQ サーバー上で実行されている場合は、キュー マネージャー インスタンス、 IBM MQ エクスプローラー、および Instana エージェントを再起動します。