第9章 ログの可視化
9.1. ログの可視化について
デプロイされたログストレージソリューションに応じて、OpenShift Container Platform Web コンソールまたは Kibana Web コンソールで、ログデータを可視化できます。Kibana コンソールは ElasticSearch ログストアで使用でき、OpenShift Container Platform Web コンソールは ElasticSearch ログストアまたは LokiStack で使用できます。
Kibana Web コンソールは現在非推奨となっており、将来のログリリースで削除される予定です。
9.1.1. ログビジュアライザーの設定
ClusterLogging
カスタムリソース (CR) を変更することで、ロギングで使用するログビジュアライザーのタイプを設定できます。
前提条件
- 管理者権限がある。
-
OpenShift CLI (
oc
) がインストールされている。 - Red Hat OpenShift Logging Operator がインストールされている。
-
ClusterLogging
CR が作成されている。
可視化に OpenShift Container Platform Web コンソールを使用する場合は、ロギングコンソールプラグインを有効にする必要があります。「Web コンソールによるログの可視化」に関するドキュメントを参照してください。
手順
ClusterLogging
CR のvisualization
仕様を変更します。ClusterLogging
CR の例apiVersion: logging.openshift.io/v1 kind: ClusterLogging metadata: # ... spec: # ... visualization: type: <visualizer_type> 1 kibana: 2 resources: {} nodeSelector: {} proxy: {} replicas: {} tolerations: {} ocpConsole: 3 logsLimit: {} timeout: {} # ...
次のコマンドを実行して、
ClusterLogging
CR を適用します。$ oc apply -f <filename>.yaml
9.1.2. リソースのログの表示
リソースログは、制限されたログ表示機能を提供するデフォルトの機能です。OpenShift CLI (oc
) および Web コンソールを使用して、ビルド、デプロイメント、および Pod などの各種リソースのログを表示できます。
ログの取得と表示のエクスペリエンスを強化するには、ロギングをインストールします。ロギングは、ノードシステムの監査ログ、アプリケーションコンテナーログ、およびインフラストラクチャーログなどの OpenShift Container Platform クラスターからのすべてのログを専用のログストアに集約します。その後、Kibana コンソールまたは OpenShift Container Platform Web コンソールを介してログデータをクエリー、検出、可視化できます。リソースログはロギングのログストアにアクセスしません。
9.1.2.1. リソースログの表示
OpenShift CLI (oc
) および Web コンソールでさまざまなリソースのログを表示できます。ログの末尾から読み取られるログ。
前提条件
-
OpenShift CLI (
oc
) へのアクセスがある。
手順 (UI)
OpenShift Container Platform コンソールで Workloads
Pods に移動するか、調査するリソースから Pod に移動します。 注記ビルドなどの一部のリソースには、直接クエリーする Pod がありません。このような場合は、リソースの Details ページで Logs リンクを特定できます。
- ドロップダウンメニューからプロジェクトを選択します。
- 調査する Pod の名前をクリックします。
- Logs をクリックします。
手順 (CLI)
特定の Pod のログを表示します。
$ oc logs -f <pod_name> -c <container_name>
ここでは、以下のようになります。
-f
- オプション: ログに書き込まれている内容に沿って出力することを指定します。
<pod_name>
- Pod の名前を指定します。
<container_name>
- オプション: コンテナーの名前を指定します。Pod に複数のコンテナーがある場合は、コンテナー名を指定する必要があります。
以下に例を示します。
$ oc logs ruby-58cd97df55-mww7r
$ oc logs -f ruby-57f7f4855b-znl92 -c ruby
ログファイルの内容が出力されます。
特定のリソースのログを表示します。
$ oc logs <object_type>/<resource_name> 1
- 1
- リソースタイプおよび名前を指定します。
以下に例を示します。
$ oc logs deployment/ruby
ログファイルの内容が出力されます。