Nacos¶
Nacos の性能メトリクスの表示。Nacos の稼働時間、Nacos Config の長接続数、Nacos Config の設定数、Service Count、HTTP リクエスト数などを含みます。
インストールと設定¶
対応バージョン¶
- 対応 OS: Linux / Windows
- Nacos バージョン: >= 0.8.0
注記: サンプルの Nacos バージョンは 1.4.1 です。
( Linux / Windows 環境は同じです)
メトリクス収集 (必須)¶
application.propertiesファイルを設定し、metrics データを公開する
- Nacos を再起動する
クラスタ方式とシングルインスタンスモードでは起動パラメータが異なります。詳細は Nacos 公式ドキュメント を参照してください。
- 確認
{ip}:8848/nacos/actuator/prometheus にアクセスし、metrics データにアクセスできるか確認します
- DataKit Prometheus プラグインを有効化する
nacos-prom.conf設定ファイルを修正する
主要パラメータの説明
- urls:
prometheusメトリクスのアドレス。ここには Nacos が公開しているメトリクスの URL を入力します - source: 収集器の別名。
nacosと書くことを推奨します - interval: 収集間隔
- measurement_prefix: メトリクスのプレフィックス。メトリクスを分類して検索しやすくします
- tls_open: TLS 設定
- metric_types: メトリクスの種類。未設定の場合はすべてのメトリクスを収集します
[[inputs.prom]]
urls = ["http://192.168.0.189:8848/nacos/actuator/prometheus"]
## url へのリクエストエラーを無視する
ignore_req_err = false
## 収集器の別名
source = "nacos"
metric_types = []
measurement_prefix = "nacos_"
## 収集間隔 "ns", "us" (or "µs"), "ms", "s", "m", "h"
interval = "10s"
## TLS 設定
tls_open = false
## カスタム Tags
[inputs.prom.tags]
# some_tag = "some_value"
# more_tag = "some_other_value"
- DataKit を再起動する
メトリクス詳細¶
JVM metrics¶
| 指標 | 意味 |
|---|---|
| system_cpu_usage | CPU 使用率 |
| system_load_average_1m | load |
| jvm_memory_used_bytes | メモリ使用バイト数。各メモリ領域を含みます |
| jvm_memory_max_bytes | メモリ最大バイト数。各メモリ領域を含みます |
| jvm_gc_pause_seconds_count | gc 回数。各種 gc を含みます |
| jvm_gc_pause_seconds_sum | gc 所要時間。各種 gc を含みます |
| jvm_threads_daemon | スレッド数 |
Nacos 監視メトリクス¶
| 指標 | 意味 |
|---|---|
| http_server_requests_seconds_count | http リクエスト数。複数の要素 (url, method, code) を含みます |
| http_server_requests_seconds_sum | http リクエスト総所要時間。複数の要素 (url, method, code) を含みます |
nacos_timer_seconds_sum |
Nacos config の水平通知所要時間 |
nacos_timer_seconds_count |
Nacos config の水平通知回数 |
nacos_monitor{name='longPolling'} |
Nacos config の長接続数 |
nacos_monitor{name='configCount'} |
Nacos config の設定数 |
nacos_monitor{name='dumpTask'} |
Nacos config 設定のディスク書き込みタスク滞留数 |
nacos_monitor{name='notifyTask'} |
Nacos config 設定の水平通知タスク滞留数 |
nacos_monitor{name='getConfig'} |
Nacos config の設定読み取り統計数 |
nacos_monitor{name='publish'} |
Nacos config の設定書き込み統計数 |
nacos_monitor{name='ipCount'} |
Nacos naming の IP 数 |
nacos_monitor{name='domCount'} |
Nacos naming のドメイン数 (1.x バージョン) |
nacos_monitor{name='serviceCount'} |
Nacos naming のドメイン数 (2.x バージョン) |
nacos_monitor{name='failedPush'} |
Nacos naming の配信失敗数 |
nacos_monitor{name='avgPushCost'} |
Nacos naming の平均配信所要時間 |
nacos_monitor{name='leaderStatus'} |
Nacos naming のロール状態 |
nacos_monitor{name='maxPushCost'} |
Nacos naming の最大配信所要時間 |
nacos_monitor{name='mysqlhealthCheck'} |
Nacos naming の mysql ヘルスチェック回数 |
nacos_monitor{name='httpHealthCheck'} |
Nacos naming の http ヘルスチェック回数 |
nacos_monitor{name='tcpHealthCheck'} |
Nacos naming の tcp ヘルスチェック回数 |
Nacos 異常メトリクス¶
| 指標 | 意味 |
|---|---|
nacos_exception_total{name='db'} |
データベース例外 |
nacos_exception_total{name='configNotify'} |
Nacos config の水平通知失敗 |
nacos_exception_total{name='unhealth'} |
Nacos config server 間のヘルスチェック例外 |
nacos_exception_total{name='disk'} |
Nacos naming のディスク書き込み例外 |
nacos_exception_total{name='leaderSendBeatFailed'} |
Nacos naming の leader からのハートビート送信例外 |
nacos_exception_total{name='illegalArgument'} |
リクエストパラメータが不正 |
nacos_exception_total{name='nacos'} |
Nacos リクエスト応答の内部エラー例外(読み書き失敗、権限なし、パラメータエラー) |
Nacos のその他のメトリクスについては、Nacos 公式サイト - 監視 を参照してください