Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerRuntime Fabric では、次に関するログファイルが生成されます。
デプロイされた Mule アプリケーション
デプロイされた API プロキシ
Runtime Fabric サービス
Kubernetes サービス
Runtime Fabric では、ログファイルに書き込まれるメッセージの重要度レベルを指定できます。
Runtime Fabric では、カスタムログカテゴリがサポートされていません。
値 | 説明 | コマンド |
---|---|---|
すべての優先度 |
すべてのメッセージをリストします。 |
なし |
ERROR |
例外が発生した場合のエラーメッセージのみをリストします。 |
priority:ERROR |
FATAL |
アプリケーションが失敗した場合に致命的なメッセージのみをリストします。 |
priority:FATAL |
INFO |
有益情報のメッセージをリストします。 |
priority:INFO |
SYSTEM |
アプリケーションとワーカーのスタートアップに関するメッセージをリストします。 |
priority:SYSTEM |
CONSOLE |
オブジェクトストアの設定など、コンソールイベントに関するメッセージをリストします。 |
priority:CONSOLE |
WARN |
警告メッセージをリストします。 |
priority:WARN |
DEBUG |
デバッグメッセージをリストします。 |
priority:DEBUG |
ログレベルは、デプロイ中に Mule アプリケーションまたは API プロキシごとに指定します。
アプリケーションのログレベルを変更するには、Anypoint Runtime Manager を使用して logging.level.<PACKAGE>=LEVEL
プロパティを設定します。
Runtime Manager で、アプリケーションの [Settings (設定)] ページに移動します。
[Properties (プロパティ)] タブをクリックします。
[Table view (テーブルビュー)] を選択します。
[New Key (新しいキー)] 項目で、logging.level.<PACKAGE>
プロパティを追加します。
[New Value (新しい値)] 項目で、目的のログレベルを追加します。
たとえば、キー logging.level.org.mule.service.http.impl.service.HttpMessageLogger
と DEBUG
の値を追加した場合、DEBUG
レベルのログ情報が HttpMessageLogger
から生成されます。
オペレーションセンターには、VM/ベアメタルの Runtime Fabric で実行されているアプリケーションとサービスから生成されたログのストリームが表示されます。これは、ログ転送を設定していない場合に便利です。
オペレーションセンターから [Logging (ログ)] に移動します。
[Kubernetes] を選択します。
[Pods (ポッド)] タブを選択します。
検索入力領域の横にあるドロップダウンリストで、アプリケーションがデプロイされている環境の ID を選択します。
対象のアプリケーションの名前で始まるポッド名を見つけます。
そのポッド名を選択して、[Logs (ログ)] を選択します。
対象のアプリケーションに検索条件が適用された [Logs (ログ)] タブが表示されます。
最新のログを表示するには、[Refresh (更新)] を選択します。 |
VM/ベアメタルの Runtime Fabric は、次の場所へのログ転送をサポートします。
Anypoint Monitoring
ログ転送出力プラグインを使用するサードパーティのログソリューション。
Azure Log Analytics
Elasticsearch
Graylog Extended Log Format (GELF)
Splunk
CloudWatch
Syslog
Datadog
rsyslog
クライアントサービスを使用する外部サービス。
Log4j アペンダーと外部ログ転送を同時に使用すると、ログコレクションが重複する可能性もあります。どちらか一方を使用してください。
一度に 1 つの外部ログ転送設定のみがサポートされます。ただし、Anypoint Platform ログ転送と外部ログ転送サービスは同時に有効化できます。
現在、外部ログ転送では、Runtime Fabric クラスター用に設定されたプロキシはサポートされていません。外部ログ転送サービスのアウトバウンド IP アドレスとポートを許可するファイアウォールルールを明示的に設定する必要があります。
現在、外部ログ転送では、複数行のログエントリが結合されません。
Runtime Fabric では、一方向の TLS (クライアントからサーバー) 検証のみがサポートされています。
外部ログ転送は Syslog プロトコル RFC5424 に準拠するため、ホスト名、アプリケーション名、プロセス ID が自動的にログエントリにマッピングされません。これらの項目は、ログを他の外部サービスに転送するときにマッピングされます。
適用可能なサードパーティログソリューションをインストールおよび設定します。必要なリソースを割り当てていることを確認します。詳細は、サードパーティログソリューションのドキュメントを参照してください。
Anypoint Platform から [Runtime Manager] を選択します。
サイドバーナビゲーションで [Runtime Fabric] を選択します。
インストール中に使用された名前に基づいて、適用可能な Runtime Fabric を選択します。
[Logs (ログ)] タブを選択します。
Titanium サブスクリプションがあり、ログを Anypoint Monitoring に転送する場合、[Forward application logs to Anypoint Monitoring (Requires Titanium) (Anypoint Monitoring にアプリケーションログを転送 (Titanium が必要))] チェックボックスを選択します。
ログ転送出力プラグインを使用してログを転送するには、[Forward application logs to an external service (外部サービスにアプリケーションログを転送)] チェックボックスを選択します。
[Connects to (接続先)] ドロップダウンリストで、適用可能なサードパーティログ転送ソリューションを選択します。
次のセクションに示すように、サードパーティログソリューションの設定情報を入力します。
ログレベルを選択します。
INFO (情報): 有益情報のメッセージ
DEBUG (デバッグ): デバッグメッセージ
WARNING (重要): 警告メッセージ
ERROR (エラー): 例外が発生した場合などのエラーメッセージ
FATAL (致命的): アプリケーションが失敗した場合の致命的なメッセージ
必要に応じて、ログレベルを選択し、package.name
を入力して Enter キーを押すことで、特定の Java パッケージクラスのログレベルを設定します。
[Apply changes (変更を適用)] を選択します。
正常にログ転送されたことを確認するには、外部ログ転送サービスを使用してログを手動で確認します。
キー | 説明 | 必須 | デフォルト値 |
---|---|---|---|
Customer ID (顧客 ID) |
顧客 ID またはワークスペース ID の文字列を指定します。 |
はい |
|
Shared Key (共有キー) |
プライマリとセカンダリの接続元クライアント認証キーを指定します。 |
はい |
|
Log Type (ログ種別) |
イベント種別名を指定します。 |
いいえ |
|
出力プラグインの設定の例:
[OUTPUT]
Name azure
Customer_ID id
Shared_Key key
Runtime Fabric 1.10.26 以降では外部ログ転送に Fluent Bit 1.8.3 を使用します。ログを Elasticsearch に転送する場合、設定パラメーター |
キー | 説明 | 必須 | デフォルト値 |
---|---|---|---|
Host (ホスト) |
対象の Elasticsearch インスタンスの IP アドレスまたはホスト名を指定します。 |
はい |
127.0.0.1 |
Port (ポート) |
対象の Elasticsearch インスタンスの TCP ポートを指定します。 |
はい |
9200 |
Index (インデックス) |
インデックス名を指定します。 |
はい |
runtime_fabric |
Path (パス) |
Elasticsearch は HTTP クエリパス |
いいえ |
空の文字列 |
Buffer Size (バッファサイズ) |
Elasticsearch HTTP サービスからの応答を読み取るために使用するバッファサイズを指定します。このオプションは、デバッグ目的で完全な応答の読み取りが必要な場合に役立ちます。応答のサイズは、挿入されたレコード数に応じて増大します。無制限のメモリ量を指定するには、この値を |
いいえ |
4 KB |
HTTP User (HTTP ユーザー) |
Elastic X-Pack アクセス用の省略可能なユーザー名ログイン情報を指定します。 |
いいえ |
|
HTTP Passwd (HTTP パスワード) |
|
いいえ |
|
Type (型) |
種別名を指定します。 |
いいえ |
runtime_fabric |
Logstash Format (Logstash 形式) |
Logstash 形式互換を有効にします。このオプションはブール値 ( |
いいえ |
|
Logstash Prefix (Logstash プレフィックス) |
|
いいえ |
logstash |
Logstash DateFormat (Logstash 日付形式) |
|
いいえ |
%Y.%m.%d |
Time Key (時間キー) |
|
いいえ |
@timestamp |
Time Key Format (時間キー形式) |
|
いいえ |
%Y-%m-%dT%H:%M:%S |
Include Tag Key (タグキーを含む) |
有効になっている場合、レコードにタグ名が追加されます。 |
いいえ |
Off (オフ) |
Tag Key (タグキー) |
|
いいえ |
|
Generate ID (ID を生成) |
有効になっている場合、送信レコードの |
いいえ |
Off (オフ) |
Replace Dots (ドットを置換) |
有効になっている場合、項目名のドット (「.」) をアンダースコア (「_」) に置き換えます。アンダースコアは Elasticsearch 2.0 ~ 2.3 では必須です。 |
いいえ |
Off (オフ) |
Trace Output (出力をトレース) |
有効になっている場合、Elasticsearch API コールを stdout に出力します (診断用)。 |
いいえ |
Off (オフ) |
Trace Error (エラーをトレース) |
有効になっている場合、Elasticsearch でエラーが返されたときに Elasticsearch API コールを stdout に出力します。 |
いいえ |
Off (オフ) |
Current Time Index (現在時刻のインデックス) |
メッセージレコードの情報ではなく現在時刻をインデックスの生成で使用することを指定します。 |
いいえ |
Off (オフ) |
Logstash Prefix Key (Logstash プレフィックスキー) |
この文字列を使用してキーにプレフィックスを付けます。 |
いいえ |
|
TLS |
TLS サポートを有効または無効にします。 |
いいえ |
Off (オフ) |
CA Path Certificate File (CA パス証明書ファイル) |
アップロードする CA 証明書ファイルを指定します。このオプションは、TLS が有効になっている場合のみ使用できます。 |
いいえ |
出力プラグインの設定の例:
[OUTPUT]
Name es
Host 192.168.2.3
Port 9200
Index my_index
Type my_type
キー | 説明 | 必須 | デフォルト値 |
---|---|---|---|
Match (一致) |
このプラグインで出力するログタグに一致するパターンを指定します。 |
はい |
|
Host (ホスト) |
対象の Graylog サーバーの IP アドレスまたはホスト名を指定します。 |
はい |
127.0.0.1 |
Port (ポート) |
Graylog GELF 入力がリスンするポートを指定します。 |
はい |
12201 |
Mode (モード) |
使用するプロトコルを指定します ( |
はい |
udp |
Gelf Short_Message Key (Gelf Short_Message キー) |
短い説明メッセージを指定します (これを GELF で設定する必要があります)。 |
はい |
log |
Gelf Timestamp Key (Gelf タイムスタンプキー) |
ログのタイムスタンプを指定します (これを GELF で設定する必要があります)。 |
いいえ |
timestamp (タイムスタンプ) |
Gelf Host Key (Gelf ホストキー) |
メッセージを送信するホスト、送信元、またはアプリケーションの名前として使用する値のキーを指定します。(これを GELF で設定する必要があります)。 |
いいえ |
host (ホスト) |
Gelf Full Message Key (Gelf 完全メッセージキー) |
バックトレースを含むことができる長いメッセージとして使用するキーを指定します。(これは GELF では省略可能です)。 |
いいえ |
full_message |
Gelf Level Key (Gelf レベルキー) |
ログレベルとして使用するキーを指定します。この値は標準の syslog レベル (0 ~ 7) である必要があります。 |
いいえ |
level (レベル) |
Packet Size (パケットサイズ) |
トランスポートプロトコルが |
いいえ |
1420 |
Compress (圧縮) |
トランスポートプロトコルが |
いいえ |
true |
TLS |
TLS サポートを有効または無効にします。 |
いいえ |
Off (オフ) |
CA Path Certificate File (CA パス証明書ファイル) |
アップロードする CA 証明書ファイルを指定します。このオプションは、TLS が有効になっている場合のみ使用できます。 |
いいえ |
出力プラグインの設定の例:
[OUTPUT]
Name gelf
Match kube.*
Host <your-graylog-server>
Port 12201
Mode tcp
Gelf_Short_Message_Key log
キー | 説明 | 必須 | デフォルト値 |
---|---|---|---|
Host (ホスト) |
対象の Splunk サービスの IP アドレスまたはホスト名を指定します。 |
はい |
127.0.0.1 |
Port (ポート) |
対象の Splunk サービスの TCP ポートを指定します。 |
はい |
8088 |
Splunk Token (Splunk トークン) |
HTTP イベントコレクターインターフェースの認証トークンを指定します。 |
はい |
|
HTTP User (HTTP ユーザー) |
HTTP イベントコレクターの基本認証用の省略可能なユーザー名を指定します。 |
いいえ |
|
HTTP Passwd (HTTP パスワード) |
|
いいえ |
|
TLS |
TLS サポートを有効または無効にします。 |
いいえ |
Off (オフ) |
CA Path Certificate File (CA パス証明書ファイル) |
アップロードする CA 証明書ファイルを指定します。このオプションは、TLS が有効になっている場合のみ使用できます。 |
いいえ |
出力プラグインの設定の例:
[OUTPUT]
Name splunk
Host 127.0.0.1
Port 8088
Splunk_Token xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx
Tls On
キー | 説明 | 必須 | デフォルト値 |
---|---|---|---|
Region (リージョン) |
AWS リージョンを指定します。 |
はい |
|
Aws Access Key Id (AWS アクセスキー ID) |
IAM ユーザーのアクセスキー ID を指定します。 |
はい |
|
Aws Secret Access Key (AWS シークレットアクセスキー) |
IAM ユーザーの AWS シークレットアクセスキーを指定します。 |
はい |
|
Log Group Name (ロググループ名) |
ログレコードを送信する CloudWatch ロググループの名前を指定します。 |
はい |
runtime_fabric_cloudwatch |
Log Stream Name (ログストリーム名) |
ログレコードを送信する CloudWatch ログストリームの名前を指定します。 |
はい |
|
Log Stream Prefix (ログストリームプレフィックス) |
ログストリーム名のプレフィックスを指定します。プレフィックスにタグが付加されて、完全なログストリーム名が作成されます。 |
いいえ |
|
Role Arn (ロール ARN) |
想定する IAM ロールの ARN を指定します (クロスアカウントアクセス用)。 |
いいえ |
|
Auto Create Group (グループの自動作成) |
ロググループを自動的に作成します。有効な値は「On (オン)」または「Off (オフ)」です (大文字と小文字が区別されます)。 |
いいえ |
Off (オフ) |
注意: Log Stream Name
または Log Stream Prefix
のどちらかを指定する必要がありますが、両方は指定できません。
出力プラグインの設定の例:
[OUTPUT]
Name cloudwatch_logs
region us-east-1
aws_access_key_id <your_AWS_access_key_ID>
aws_secret_access_key <your_AWS_secret_access_key>
log_group_name runtime_fabric_cloudwatch
log_stream_prefix my_stream
auto_create_group On
キー | 説明 | 必須 | デフォルト値 |
---|---|---|---|
Host (ホスト) |
リモート Syslog サーバーのホスト名または IP アドレス |
はい |
|
Port (ポート) |
リモート Syslog サーバーの TCP または UDP ポート |
はい |
514 |
Mode (モード) |
トランスポート種別のモード |
はい |
udp |
Syslog format (Syslog 形式) |
Syslog プロトコル形式 |
いいえ |
rfc5424 |
Syslog Maxsize (Syslog 最大サイズ) |
メッセージあたりの最大バイト数を設定する整数値 |
いいえ |
rfc3164 の場合は 1024、rfc5424 の場合は 2048 |
出力プラグインの設定の例:
[OUTPUT]
Name syslog
Host 127.0.0.1
Port 514
Mode udp
Syslog_Format rfc5424
Syslog_Maxsize 2048
キー | 説明 | 必須 | デフォルト値 |
---|---|---|---|
Host (ホスト) |
リモート Datadog サーバーのホスト名。 |
はい |
|
Api Key (API キー) |
Datadog API キー。 |
はい |
|
Compress (圧縮) |
ペイロードを GZIP 形式で圧縮します。Datadog では、これを |
いいえ |
|
Datadog Service (Datadog サービス) |
ログを生成するサービスの名前。(例: |
いいえ |
|
Datadog Source (Datadog ソース) |
サービスの種別。例: |
いいえ |
|
Datadog Tags (Datadog タグ) |
Datadog のログに割り当てられたタグ。 |
いいえ |
|
TLS |
エンドツーエンドでセキュアな通信プロトコルサポート。DataDog では CA 証明書ファイルはサポートされていません。 |
いいえ |
Off (オフ) |
出力プラグインの設定の例:
[OUTPUT]
Name datadog
Host http-intake.logs.datadoghq.com
apikey <your-datadog-api-key>
TLS on
compress gzip
dd_service <your-app-service>
dd_source <your-app-source>
dd_tags team:logs,foo:bar
次の設定オプションがあります。
Mule Applications (Mule アプリケーション): Mule アプリケーションからログを転送します。
Internal load balancer and components (内部ロードバランサーおよびコンポーネント): Runtime Fabric コンポーネントと内部ロードバランサーからログを転送します。
Runtime Fabric appliance (Runtime Fabric アプライアンス): 監視およびアプライアンスサービスからログを転送します。
|
ログを外部サービスに転送する場合、一部のプロバイダーでは追加のメタデータを使用できることがあります。検索を実行する場合、ユーザーは次のメタデータの表示ラベルを活用することで、検索結果を絞り込み、重要なコンテナからのログのみに集中できます。
キー | 説明 | サンプル値 |
---|---|---|
container_name |
コンテナの名前を指定します。 |
アプリケーション |
container_image |
コンテナ画像の完全名を指定します。 |
000.dkr.ecr.us-east-1.amazonaws.com/mulesoft/poseidon-runtime-4.3.0:v1.0.0 |
container_hash |
コンテナ画像の名前を指定し、不変の識別子 (SHA256 値) を含めます。 |
000.dkr.ecr.us-east-1.amazonaws.com/mulesoft/poseidon-runtime-4.3.0@sha256:866daf14a55da1db21c562ddc09487bbb8ffae1dd4cc80b4dc5c64e0ac9c124b |
docker_id |
Docker 内のコンテナの ID を指定します。 |
a54a0bf80400b6cd44cae53b9705f5b6330ce4e8efb85c92b3f9c1709829c6fa |
host (ホスト) |
ポッドが実行されているノードの IP を指定します。 |
10.0.178.87 |
namespace_name |
ポッドの Kubernetes 名前空間を指定します。 |
rtf |
pod_id |
ポッドの ID を指定します。 |
118cff63-a5ac-11ea-8414-0e281fcb2861 |
pod_name |
ポッドの名前を指定します。 |
testapp-5789f9774-6lxv7 |
labels_app |
ポッドがサポートしているアプリケーションの表示ラベルを指定します。 |
testapp |
labels_environment |
アプリケーションがデプロイされている環境の Anypoint 環境 ID を指定します。 |
24166311-4e5e-4091-b417-42307747267e |
labels_organization |
アプリケーションがデプロイされている組織の Anypoint 組織 ID を指定します。 |
24166311-4e5e-4091-b417-42307747267e |
labels_rtf_mulesoft_com_id |
Anypoint Platform のアプリケーションデプロイメントの ID を指定します。 |
194a32bf-bf7e-4c91-aa4e-44132e5aa76d |
labels_rtf_mulesoft_com_version |
Anypoint Platform のアプリケーションデプロイメントの仕様バージョン ID を指定します。 |
194a32bf-bf7e-4c91-aa4e-44132e5aa76d |
labels_type |
ポッドが実行されているデプロイメントの種別を指定します。 |
MuleApplication |
テストメッセージを送信して、VM/ベアメタルの Runtime Fabric と外部ログ転送ソリューション間の接続を検証できます。
Runtime Manager のサイドバーナビゲーションで [Runtime Fabric] を選択します。
インストール中に使用された名前に基づいて、適用可能な Runtime Fabric を選択します。
[Log Forwarding (ログ転送)] タブを選択します。
[Forward application logs to an external service (外部サービスにアプリケーションログを転送)] を選択します。
サービスを選択し、ログ転送ソリューションで必要とされる項目を設定します。
変更を保存して、設定を Runtime Fabric クラスターに適用します。
ログ転送ソリューションの設定とログ転送ソリューションへのアクセスをテストする手順は、次のとおりです。
選択したサービスのテストメッセージをトリガーします。
ログ転送ソリューションに転送されたテキストを確認します。
[Runtime Manager] に移動し、[Applications (アプリケーション)] を選択します。
ログ転送の無効化の対象であるアプリケーションを選択します。
[Logs (ログ)] タブを選択します。
該当するログ転送オプションを選択解除します。
Forward logs to Anypoint Monitoring (Anypoint Monitoring にログを転送)
Forward logs to <third-party service> (<サードパーティサービス> にログを転送)
[Deploy (デプロイ)] を選択してアプリケーションを再デプロイします。
VM/ベアメタルの Anypoint Runtime Fabric では、ログ転送出力プラグインを使用して、サポートされるサードパーティソリューション以外の外部のログソリューションにアプリケーションとクラスターのログを転送することもできます。Runtime Fabric に組み込まれたログ転送機能 (rsyslog
クライアントサービス) を使用すると、ログデータを TCP または UDP 経由で rsyslog
サーバーに送信し、その場所で一元的にログの参照、保持、アラートの受信ができます。Logstash などのログソリューションでは、rsyslog
クライアントからログデータを受信するためのメソッドが提供されます。
複数行のログを有効にするには、ログエントリを左角括弧 |
ターミナルを使用して、コントローラー VM へのシェル/SSH 接続を開きます。
log-forwarder.yaml
という名前のファイルを作成します。
以下の表に基づいてカスタマイズした後、このファイルに次のコンテンツを追加します。
kind: logforwarder version: v2 metadata: name: log-forwarder spec: address: 192.168.100.1:514 protocol: udp
環境に応じて次の値を使用します。
キー | 説明 |
---|---|
|
ログ転送ルールの名前を指定します。 |
|
ログデータを転送するエンドポイントとポートを指定します。 |
|
データの送信先のプロトコルを指定します。サポートされるプロトコルは TCP または UDP です。 |
コントローラー VM で次のコマンドを実行し、以前に作成したファイルを参照します。
gravity resource create log-forwarder.yaml
ログが外部のログソリューションに転送されます。
ログ転送の問題が発生した場合、次の手順を実行します。
ログ転送設定でホストとポートの正しい情報が指定されていることを確認します。
サーバー側の設定 (ネットワークなど) が正しいこと、およびサーバーにアクセスできることを確認します。
ログ転送状況を確認します。
[Runtime Manager] に移動し、[Runtime Fabric] を選択します。
Runtime Fabric の名前を選択して、管理ページを開きます。
[Health Details (健全性の詳細)] タブを選択します。
必要に応じて、次の情報を確認します。
[Forwarding Logs To External Provider (外部プロバイダーにログを転送)] の状況が Healthy
である。
[Forwarding Logs to Anypoint Monitoring (Anypoint Monitoring にログを転送)] の状況が Healthy
である。
RTF クラスター内で次のコマンドを実行します。
kubectl -nrtf get pods -lapp=external-log-forwarder
: すべての外部ログ転送ポッドのリストを確認します。これらのポッドの状態が Running
であることを確認します。
kubectl -nrtf logs -l app=external-log-forwarder
: 外部ログ転送ポッドのログを参照します。