2.7. カスタム Grafana ダッシュボードでの Fuse on OpenShift の監視
OpenShift Container Platform 4.6 は、クラスターコンポーネントおよびユーザー定義のワークロードの状態を理解するのに役立つモニタリングダッシュボードを提供します。
前提条件
- クラスターに Prometheus をインストールおよびデプロイしておく必要があります。OpenShift 4 に Grafana をインストールする方法の詳細は https://github.com/jboss-fuse/application-templates/blob/master/monitoring/prometheus.md を参照してください。
- Grafana がインストールおよび設定されている必要があります。
Fuse on OpenShift のカスタムダッシュボード
Fuse on OpenShift に使用できるカスタムダッシュボードは 2 つあります。これらのダッシュボードを使用するには、クラスターに Grafana と Prometheus をインストールおよび設定しておく必要があります。Fuse on OpenShift には 2 種類のダッシュボードサンプルが用意されています。これらのダッシュボードは Fuse Grafana dashboards からインポートできます。
Fuse Pod / インスタンスメトリックダッシュボード
このダッシュボードは、単一の Fuse アプリケーション Pod / インスタンスからメトリックを収集します。
fuse-grafana-dashboard.yml
を使用してダッシュボードをインポートできます。OpenShift の Fuse Pod メトリックダッシュボードのパネルには以下が含まれます。表2.5 Fuse Pod メトリックダッシュボード タイトル 凡例 クエリー 説明 Process Start Time
-
process_start_time_seconds{pod="$pod"}*1000
処理が開始された時間
Current Memory HEAP
-
sum(jvm_memory_bytes_used{pod="$pod", area="heap"})*100/sum(jvm_memory_bytes_max{pod="$pod", area="heap"})
Fuse によって現在使用されているメモリー
Memory Usage
committed
sum(jvm_memory_bytes_committed{pod="$pod"})
コミットされたメモリー
used
sum(jvm_memory_bytes_used{pod="$pod"})
使用されているメモリー
max
sum(jvm_memory_bytes_max{pod="$pod"})
最大メモリー
Threads
current?
jvm_threads_current{pod="$pod"}
現在のスレッド数
daemon
jvm_threads_daemon{pod="$pod"}
デーモンスレッドの数
peak
jvm_threads_peak{pod="$pod"}
ピークスレッドの数
Camel Exchanges / 1m
Exchanges Completed / 1m
sum(increase(org_apache_camel_ExchangesCompleted{pod="$pod"}[1m]))
1 分あたりの完了した Camel エクスチェンジ
Exchanges Failed / 1m
sum(increase(org_apache_camel_ExchangesFailed{pod="$pod"}[1m]))
1 分あたりの失敗した Camel エクスチェンジ
Exchanges Total / 1m
sum(increase(org_apache_camel_ExchangesTotal{pod="$pod"}[1m]))
1 分あたりの Camel エクスチェンジの合計
Exchanges Inflight
sum(org_apache_camel_ExchangesInflight{pod="$pod"})
現在処理中の Camel エクスチェンジ
Camel Processing Time
Delta Processing Time
sum(org_apache_camel_DeltaProcessingTime{pod="$pod"})
Camel 処理時間のデルタ
Last Processing Time
sum(org_apache_camel_LastProcessingTime{pod="$pod"})
最後の Camel 処理時間
Max Processing Time
sum(org_apache_camel_MaxProcessingTime{pod="$pod"})
Camel の最大処理時間
Min Processing Time
sum(org_apache_camel_MinProcessingTime{pod="$pod"})
Camel の最小処理時間
Mean Processing Time
sum(org_apache_camel_MeanProcessingTime{pod="$pod"})
Camel の平均処理時間
Camel Service Durations
Maximum Duration
sum(org_apache_camel_MaxDuration{pod="$pod"})
Camel のサービス期間
Minimum Duration
sum(org_apache_camel_MinDuration{pod="$pod"})
Camel の最小サービス期間
Mean Duration
sum(org_apache_camel_MeanDuration{pod="$pod"})
Camel の平均サービス期間
Camel Failures & Redeliveries
Redeliveries
sum(org_apache_camel_Redeliveries{pod="$pod"})
再配信の数
Last Processing Time
sum(org_apache_camel_LastProcessingTime{pod="$pod"})
最後の Camel 処理時間
External Redeliveries
sum(org_apache_camel_ExternalRedeliveries{pod="$pod"})
外部再配信の数
Fuse Camel ルートメトリックダッシュボード
このダッシュボードは、Fuse アプリケーションで単一の Camel ルートからメトリックを収集します。
fuse-grafana-dashboard-routes.yml
を使用してダッシュボードをインポートできます。OpenShift の Fuse Camel Route メトリックダッシュボードのパネルには以下が含まれます。表2.6 Fuse Camel ルートメトリックダッシュボード タイトル 凡例 クエリー 説明 Exchanges per second
-
rate(org_apache_camel_ExchangesTotal{route="\"$route\""}[5m])
1 秒あたりの Camel エクスチェンジの合計
Exchanges Inflight
-
max(org_apache_camel_ExchangesInflight{route="\"$route\""})
現在処理中の Camel エクスチェンジの数
Exchanges failure rate
-
sum(org_apache_camel_ExchangesFailed{route="\"$route\""}) / sum(org_apache_camel_ExchangesTotal{route="\"$route\""})
失敗した Camel エクスチェンジの割合 (パーセント)
Mean processing time
-
org_apache_camel_MeanProcessingTime{route="\"$route\""}
Camel の平均処理時間
Exchanges per second
Failed
rate(org_apache_camel_ExchangesFailed{route="\"$route\""}[5m])
1 秒あたりの失敗したエクスチェンジ
Completed
rate(org_apache_camel_ExchangesCompleted{route="\"$route\""}[5m])
1 秒あたりの完了したエクスチェンジ
Exchanges Inflight
Exchanges Inflight
org_apache_camel_ExchangesInflight{route="\"$route\""}
現在処理中の Camel エクスチェンジ
Processing time
Max
org_apache_camel_MaxProcessingTime{route="\"$route\""}
Camel の最大処理時間
Mean
org_apache_camel_MeanProcessingTime{route="\"$route\""}
Camel の平均処理時間
Min
org_apache_camel_MinProcessingTime{route="\"$route\""}
Camel の最小処理時間
External Redeliveries per second
-
rate(org_apache_camel_ExternalRedeliveries{route="\"$route\""}[5m])
1 秒あたりの外部再配信
Redeliveries per second
-
rate(org_apache_camel_Redeliveries{route="\"$route\""}[5m])
1 秒あたりの再配信
Failures handled per second
-
rate(org_apache_camel_FailuresHandled{route="\"$route\""}[5m])
1 秒あたりに処理された失敗