

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# CloudWatch 代理程式收集的 Prometheus 指標
<a name="ContainerInsights-Prometheus-metrics"></a>

具有 Prometheus 支援的 CloudWatch 代理程式會自動從多個服務和工作負載收集指標。預設收集的指標列於下列各節中。您也可以將代理程式設定為從這些服務收集更多指標，以及從其他應用程式和服務收集 Prometheus 指標。如需更多有關收集其他指標詳細資訊，請參閱 [Prometheus 的 CloudWatch 代理程式組態](ContainerInsights-Prometheus-Setup-configure-ECS.md#ContainerInsights-Prometheus-Setup-cw-agent-config)。

從 Amazon EKS 和 Kubernetes 叢集收集的所有 Prometheus 指標，均收集在 **ContainerInsights/Prometheus** 命名空間中。從 Amazon ECS 叢集收集的所有 Prometheus 指標，均收集在 **ECS/ContainerInsights/Prometheus** 命名空間中。

**Topics**
+ [App Mesh 的 Prometheus 指標](#ContainerInsights-Prometheus-metrics-appmesh)
+ [NGINX 的 Prometheus 指標](#ContainerInsights-Prometheus-metrics-nginx)
+ [memcached 的 Prometheus 指標](#ContainerInsights-Prometheus-metrics-memcached)
+ [Java/JMX 的 Prometheus 指標](#ContainerInsights-Prometheus-metrics-jmx)
+ [HAProxy 的 Prometheus 指標](#ContainerInsights-Prometheus-metrics-haproxy)

## App Mesh 的 Prometheus 指標
<a name="ContainerInsights-Prometheus-metrics-appmesh"></a>

系統會從 App Mesh 自動收集下列指標。

**Amazon EKS 和 Kubernetes 叢集上 App Mesh 的 Prometheus 指標**


| 指標名稱 | 維度 | 
| --- | --- | 
| `envoy_http_downstream_rq_total` | ClusterName、`Namespace` | 
| `envoy_http_downstream_rq_xx` | ClusterName、`Namespace`<br />ClusterName、`Namespace`、envoy\_http\_conn\_manager\_prefix、envoy\_response\_code\_class | 
| `envoy_cluster_upstream_cx_rx_bytes_total` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_cx_tx_bytes_total` | ClusterName、`Namespace` | 
| `envoy_cluster_membership_healthy` | ClusterName、`Namespace` | 
| `envoy_cluster_membership_total` | ClusterName、`Namespace` | 
| `envoy_server_memory_heap_size` | ClusterName、`Namespace` | 
| `envoy_server_memory_allocated` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_cx_connect_timeout` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_rq_pending_failure_eject` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_rq_pending_overflow` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_rq_timeout` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_rq_try_per_timeout` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_rq_rx_reset` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_cx_destroy_local_with_active_rq` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_cx_destroy_remote_active_rq` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_rq_maintenance_mode` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_flow_control_paused_reading_total` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_flow_control_resumed_reading_total` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_flow_control_backed_up_total` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_flow_control_drained_total` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_rq_retry` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_rq_retry_success` | ClusterName、`Namespace` | 
| `envoy_cluster_upstream_rq_retry_overflow` | ClusterName、`Namespace` | 
| `envoy_server_live` | ClusterName、`Namespace` | 
| `envoy_server_uptime` | ClusterName、`Namespace` | 

**Amazon ECS 叢集上 App Mesh 的 Prometheus 指標**


| 指標名稱 | 維度 | 
| --- | --- | 
| `envoy_http_downstream_rq_total` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_http_downstream_rq_xx` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_cx_rx_bytes_total` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_cx_tx_bytes_total` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_membership_healthy` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_membership_total` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_server_memory_heap_size` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_server_memory_allocated` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_cx_connect_timeout` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_rq_pending_failure_eject` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_rq_pending_overflow` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_rq_timeout` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_rq_try_per_timeout` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_rq_rx_reset` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_cx_destroy_local_with_active_rq` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_cx_destroy_remote_active_rq` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_rq_maintenance_mode` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_flow_control_paused_reading_total` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_flow_control_resumed_reading_total` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_flow_control_backed_up_total` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_flow_control_drained_total` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_rq_retry` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_rq_retry_success` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_cluster_upstream_rq_retry_overflow` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_server_live` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_server_uptime` | ClusterName、`TaskDefinitionFamily` | 
| `envoy_http_downstream_rq_xx` | ClusterName、TaskDefinitionFamily、envoy\_http\_conn\_manager\_prefix、envoy\_response\_code\_class<br />ClusterName、TaskDefinitionFamily、envoy\_response\_code\_class | 

**注意**  
`TaskDefinitionFamily` 是 mesh 的 Kubernetes 命名空間。  
`envoy_http_conn_manager_prefix` 的值可以是 `ingress`、`egress` 或 `admin`。  
`envoy_response_code_class` 的值可以是 `1` (代表 `1xx`)、`2` 代表 (`2xx`)、`3` (代表 `3xx`)、`4` (代表 `4xx`) 或 `5` (代表`5xx`)。

## NGINX 的 Prometheus 指標
<a name="ContainerInsights-Prometheus-metrics-nginx"></a>

系統會 Amazon EKS 和 Kubernetes 叢集上的 NGINX 自動收集下列指標。


| 指標名稱 | 維度 | 
| --- | --- | 
| `nginx_ingress_controller_nginx_process_cpu_seconds_total` | ClusterName、`Namespace`、服務 | 
| `nginx_ingress_controller_success` | ClusterName、`Namespace`、服務 | 
| `nginx_ingress_controller_requests` | ClusterName、`Namespace`、服務 | 
| `nginx_ingress_controller_nginx_process_connections` | ClusterName、`Namespace`、服務 | 
| `nginx_ingress_controller_nginx_process_connections_total` | ClusterName、`Namespace`、服務 | 
| `nginx_ingress_controller_nginx_process_resident_memory_bytes` | ClusterName、`Namespace`、服務 | 
| `nginx_ingress_controller_config_last_reload_successful` | ClusterName、`Namespace`、服務 | 
| `nginx_ingress_controller_requests` | ClusterName、`Namespace`、服務、狀態 | 

## memcached 的 Prometheus 指標
<a name="ContainerInsights-Prometheus-metrics-memcached"></a>

系統會 Amazon EKS 和 Kubernetes 叢集上的 Memcached 自動收集下列指標。


| 指標名稱 | 維度 | 
| --- | --- | 
| `memcached_current_items` | ClusterName、`Namespace`、服務 | 
| `memcached_current_connections` | ClusterName、`Namespace`、服務 | 
| `memcached_limit_bytes` | ClusterName、`Namespace`、服務 | 
| `memcached_current_bytes` | ClusterName、`Namespace`、服務 | 
| `memcached_written_bytes_total` | ClusterName、`Namespace`、服務 | 
| `memcached_read_bytes_total` | ClusterName、`Namespace`、服務 | 
| `memcached_items_evicted_total` | ClusterName、`Namespace`、服務 | 
| `memcached_items_reclaimed_total` | ClusterName、`Namespace`、服務 | 
| `memcached_commands_total` | ClusterName、`Namespace`、服務<br />ClusterName、`Namespace`、服務、命令<br />ClusterName、`Namespace`、服務、狀態、命令 | 

## Java/JMX 的 Prometheus 指標
<a name="ContainerInsights-Prometheus-metrics-jmx"></a>

**在 Amazon EKS 和 Kubernetes 叢集上收集的指標**

在 Amazon EKS 和 Kubernetes 叢集上，Container Insights 可以使用 JMX Exporter，從 Java 虛擬機器 (JVM)、Java 和 Tomcat (Catalina) 收集下列預先定義的 Prometheus 指標。如需詳細資訊，請參閱 Github 上的 [prometheus/jmx\_exporter](https://github.com/prometheus/jmx_exporter)。

**Amazon EKS 和 Kubernetes 叢集上的 Java/JMX**


| 指標名稱 | 維度 | 
| --- | --- | 
| `jvm_classes_loaded` | `ClusterName`, `Namespace` | 
| `jvm_threads_current` | `ClusterName`, `Namespace` | 
| `jvm_threads_daemon` | `ClusterName`, `Namespace` | 
| `java_lang_operatingsystem_totalswapspacesize` | `ClusterName`, `Namespace` | 
| `java_lang_operatingsystem_systemcpuload` | `ClusterName`, `Namespace` | 
| `java_lang_operatingsystem_processcpuload` | `ClusterName`, `Namespace` | 
| `java_lang_operatingsystem_freeswapspacesize` | `ClusterName`, `Namespace` | 
| `java_lang_operatingsystem_totalphysicalmemorysize` | `ClusterName`, `Namespace` | 
| `java_lang_operatingsystem_freephysicalmemorysize` | `ClusterName`, `Namespace` | 
| `java_lang_operatingsystem_openfiledescriptorcount` | `ClusterName`, `Namespace` | 
| `java_lang_operatingsystem_availableprocessors` | `ClusterName`, `Namespace` | 
| `jvm_memory_bytes_used` | `ClusterName`、`Namespace`、區域 | 
| `jvm_memory_pool_bytes_used` | `ClusterName`、`Namespace`、集區 | 

**注意**  
`area` 維度的數值可以是 `heap` 或 `nonheap`。  
`pool` 維度的數值可以是 `Tenured Gen`、`Compress Class Space`、`Survivor Space`、`Eden Space`、`Code Cache` 或 `Metaspace`。

**Amazon EKS 和 Kubernetes 叢集上的 Tomcat/JMX**

除了上表中的 Java/JMX 指標之外，也會收集 Tomcat 工作負載的下列指標。


| 指標名稱 | 維度 | 
| --- | --- | 
| `catalina_manager_activesessions` | `ClusterName`, `Namespace` | 
| `catalina_manager_rejectedsessions` | `ClusterName`, `Namespace` | 
| `catalina_globalrequestprocessor_bytesreceived` | `ClusterName`, `Namespace` | 
| `catalina_globalrequestprocessor_bytessent` | `ClusterName`, `Namespace` | 
| `catalina_globalrequestprocessor_requestcount` | `ClusterName`, `Namespace` | 
| `catalina_globalrequestprocessor_errorcount` | `ClusterName`, `Namespace` | 
| `catalina_globalrequestprocessor_processingtime` | `ClusterName`, `Namespace` | 

**Amazon ECS 叢集上的 Java/JMX**


| 指標名稱 | 維度 | 
| --- | --- | 
| `jvm_classes_loaded` | `ClusterName`, `TaskDefinitionFamily` | 
| `jvm_threads_current` | `ClusterName`, `TaskDefinitionFamily` | 
| `jvm_threads_daemon` | `ClusterName`, `TaskDefinitionFamily` | 
| `java_lang_operatingsystem_totalswapspacesize` | `ClusterName`, `TaskDefinitionFamily` | 
| `java_lang_operatingsystem_systemcpuload` | `ClusterName`, `TaskDefinitionFamily` | 
| `java_lang_operatingsystem_processcpuload` | `ClusterName`, `TaskDefinitionFamily` | 
| `java_lang_operatingsystem_freeswapspacesize` | `ClusterName`, `TaskDefinitionFamily` | 
| `java_lang_operatingsystem_totalphysicalmemorysize` | `ClusterName`, `TaskDefinitionFamily` | 
| `java_lang_operatingsystem_freephysicalmemorysize` | `ClusterName`, `TaskDefinitionFamily` | 
| `java_lang_operatingsystem_openfiledescriptorcount` | `ClusterName`, `TaskDefinitionFamily` | 
| `java_lang_operatingsystem_availableprocessors` | `ClusterName`, `TaskDefinitionFamily` | 
| `jvm_memory_bytes_used` | `ClusterName`、TaskDefinitionFamily、區域 | 
| `jvm_memory_pool_bytes_used` | `ClusterName`、TaskDefinitionFamily、集區 | 

**注意**  
`area` 維度的數值可以是 `heap` 或 `nonheap`。  
`pool` 維度的數值可以是 `Tenured Gen`、`Compress Class Space`、`Survivor Space`、`Eden Space`、`Code Cache` 或 `Metaspace`。

**Amazon ECS 叢集上的 Tomcat/JMX**

除了上表中的 Java/JMX 指標之外，也會收集 Amazon ECS 叢集上的 Tomcat 工作負載的下列指標。


| 指標名稱 | 維度 | 
| --- | --- | 
| `catalina_manager_activesessions` | `ClusterName`, `TaskDefinitionFamily` | 
| `catalina_manager_rejectedsessions` | `ClusterName`, `TaskDefinitionFamily` | 
| `catalina_globalrequestprocessor_bytesreceived` | `ClusterName`, `TaskDefinitionFamily` | 
| `catalina_globalrequestprocessor_bytessent` | `ClusterName`, `TaskDefinitionFamily` | 
| `catalina_globalrequestprocessor_requestcount` | `ClusterName`, `TaskDefinitionFamily` | 
| `catalina_globalrequestprocessor_errorcount` | `ClusterName`, `TaskDefinitionFamily` | 
| `catalina_globalrequestprocessor_processingtime` | `ClusterName`, `TaskDefinitionFamily` | 

## HAProxy 的 Prometheus 指標
<a name="ContainerInsights-Prometheus-metrics-haproxy"></a>

系統會從 Amazon EKS 和 Kubernetes 叢集 上的 HAProxy 自動收集下列指標。

收集的指標取決於您所使用的 HAProxy Ingress 的版本。如需 HAProxy Ingress 及其版本的詳細資訊，請參閱 [haproxy-ingress](https://artifacthub.io/packages/helm/haproxy-ingress/haproxy-ingress)。


| 指標名稱 | 維度 | 可用性 | 
| --- | --- | --- | 
| `haproxy_backend_bytes_in_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_backend_bytes_out_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_backend_connection_errors_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_backend_connections_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_backend_current_sessions` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_backend_http_responses_total` | `ClusterName`、`Namespace`、服務、程式碼、後端 | HAProxy Ingress 的所有版本 | 
| `haproxy_backend_status` | `ClusterName`、`Namespace`、服務 | 只有 HAProxy Ingress 的 0.10 版或更新版本 | 
| `haproxy_backend_up` | `ClusterName`、`Namespace`、服務 | 只有 HAProxy Ingress 的 0.10 版 | 
| `haproxy_frontend_bytes_in_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_frontend_bytes_out_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_frontend_connections_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_frontend_current_sessions` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_frontend_http_requests_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_frontend_http_responses_total` | `ClusterName`、`Namespace`、服務、程式碼、前端 | HAProxy Ingress 的所有版本 | 
| `haproxy_frontend_request_errors_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 
| `haproxy_frontend_requests_denied_total` | `ClusterName`、`Namespace`、服務 | HAProxy Ingress 的所有版本 | 

**注意**  
`code` 維度的數值可以是 `1xx`、`2xx`、`3xx`、`4xx`、`5xx` 或 `other`。  
`backend` 維度的數值可以是：  
適用於 HAProxy Ingress 0.0.27 版或更早版本的 `http-default-backend`、`http-shared-backend` 或 `httpsback-shared-backend`。
適用於 HAProxy Ingress 0.0.27 以上版本的 `_default_backend`。
`frontend` 維度的數值可以是：  
適用於 HAProxy Ingress 0.0.27 版或更早版本的 `httpfront-default-backend`、`httpfront-shared-frontend` 或 `httpfronts`。
適用於 HAProxy Ingress 0.0.27 以上版本的 `_front_http` 或 `_front_https`。