ACK clusters integrate with Managed Service for Prometheus and Grafana, providing pre-built dashboards for Knative workloads without requiring a self-managed monitoring stack. After deploying applications in Knative, ingest monitoring data into Managed Service for Prometheus to track response latency, concurrent requests, and CPU and memory usage in Grafana dashboards.
Prerequisites
Before you begin, ensure that you have:
-
Knative deployed in the ACS cluster. See Deploy Knative
Billing
After ingesting Knative monitoring data into Managed Service for Prometheus, Knative components automatically push monitoring metrics to the service. These metrics are billed as custom metrics.
Read the Billing overview before enabling this feature — fees vary based on cluster size and number of applications. To monitor ongoing usage, see View resource usage.
Enable Managed Service for Prometheus
-
Log on to the ACS console. In the left-side navigation pane, click Clusters.
-
On the Clusters page, find the cluster you want to manage and click its ID. In the left-side navigation pane, choose Applications > Knative.
-
On the Knative page, click the Monitoring Dashboards tab and click Enable Prometheus Dashboard.
View the Knative dashboard
After enabling Managed Service for Prometheus, open the Monitoring Dashboards tab to view monitoring data. The dashboard is organized into four sections.
| Section | What you can see |
|---|---|
| Overview (average over the selected time range) | Request Volume (ops/sec), Success Rate, client errors (4xx), server errors (5xx), and pod scaling trend |
| Response Time | P50, P90, P95, and P99 response latency |
| Autoscaler | Detailed request concurrency information |
| Resource Usages | CPU and memory usage |
The vertical axis ops/sec on the Request Volume, 4xx, and 5xx charts shows the number of requests processed per second.
View Knative service discovery metrics
To view the raw metrics scraped from Knative pods, navigate to the ARMS console: Integration Management > Integrated Environments tab > Container Service > click the Prometheus instance name > Container Service page > Metric Scraping tab.
When a Knative application scales to zero pods, Managed Service for Prometheus cannot scrape metrics such as request concurrency and requests per second. These metrics reappear only after traffic is routed to the pods.
When the number of pods for a Knative application is not zero, you can directly view the metrics, such as the request concurrency and the number of requests sent to a pod per second, in the console. You do not need to access the pods of the Knative application.
The following table lists the key service discovery metrics for Knative.
| Metric | Description |
|---|---|
queue_average_concurrent_requests |
Number of concurrent requests sent to the pod |
queue_requests_per_second |
Number of requests sent to the pod per second |
revision_request_latencies |
Response latency |
revision_request_count |
Number of Revision requests |