Ingress controllers of Container Service for Kubernetes (ACK) allow you to stream all HTTP request log to standard outputs. ACK is also integrated with Log Service. You can create dashboards to monitor and analyze log data. This topic describes how to use Ingress Dashboard with Application Real-Time Monitoring Service (ARMS) to monitor applications.

Prerequisites

You must install the Log Service component before you can use Ingress Dashboard to monitor applications. You can use the following methods to install the component:
  • When you create an ACK cluster, select Enable Log Service, Install Ingress Controllers, and Create Ingress Dashboard.
  • To install the component for an existing ACK cluster, go to the Add-ons page. For more information, see Collect log data from containers by using Log Service.

Step 1: View the Ingress access log on dashboards

  1. Log on to the Log Service console.
  2. In the Projects section, click the name of the project that you specified when you created the ACK cluster. The details page of the project appears. By default, a project that is named in the format of k8s-log-{cluster-id} is created for the ACK cluster.
  3. On the page that appears, click the Dashboard icon on the left side of nginx-ingress on the Logstores tag.
    Note All of the Ingress access logs are stored in the nginx-ingress Logstore.
  4. Click Visual Dashboard below nginx-ingress to view the dashboards of all Ingresses.
    Ingress Dashboard contains five preset charts: Ingress Overview, Ingress Exceptions Center, Ingress Access Center, Ingress Monitoring Center for Blue/Green Deployment, and Ingress Monitoring Center. The following section introduces the Ingress Overview and Ingress Monitoring Center for Blue/Green Deployment charts. For more information about other preset charts, see Analyze and monitor the access log of nginx-ingress.

    Ingress Overview

    The Ingress Overview dashboard displays the data of a website that is monitored by nginx-ingress. You can view the following information:

    • Website data of the last 24 hours, including the number of page views (PVs), the number of unique visitors (UVs), inbound and outbound traffic, the average latency, the proportion of mobile users, and the proportions of 5xx errors and 404 errors.
    • Website data of the last one minute, including the number of PVs, the number of UVs, the success rate of requests, the proportion of 5xx errors, the average latency, the P95 latency, and the P99 latency.
    • Detailed information about requests in the last 24 hours, including the PV trend (compared with the PV trend in the last seven days), regional distribution of request sources, the top 10 source areas and cities, the proportion of mobile users, and the proportions of Android users and iOS users.
    • Top 10 URLs in the last one hour, including the 10 URLs of the highest PVs, the 10 URLs of the highest latencies, the 10 URLs that return the most 5xx errors, and the 10 URLs that return the most 404 errors.
    Ingress Overview

    Ingress Monitoring Center for Blue/Green Deployment

    The Ingress monitoring center for blue/green deployment dashboard displays the real-time status of a service version release and compares the specified service versions. This allows you to identify exceptions and roll back the service at the earliest opportunity. You must set ServiceA and ServiceB for monitoring and comparison. The dashboard displays the following dynamic monitoring data of each service: the number of PVs, the proportion of 5xx errors, the success rate of requests, the average latency, the P95, P99, and P9999 latencies, and the traffic data.

    Monitoring Center

Step 2: Enable ARMS for Java applications

To enable ARMS for Java applications, for details, see Enable ARMS to monitor Java applications.

Step 3: Create an Ingress for the application

  1. Log on to the ACK console.
  2. In the left-side navigation pane of the ACK console, click Clusters.
  3. On the Clusters page, find the cluster that you want to manage and click the name of the cluster or click Details in the Actions column. The details page of the cluster appears.
  4. In the left-side navigation pane of the details page, choose Network > Ingresses.
  5. On the Ingresses page, click Create in the upper-right corner.
  6. In the Create dialog box, configure the Ingress and click Create.
    For more information about how to configure an Ingress, see Create an Ingress.

Step 4: Use Ingress Dashboard with ARMS

  1. Log on to the Log Service console.
  2. In the Projects section, click the name of the project that you specified when you created the ACK cluster. The details page of the project appears. By default, a project that is named in the format of k8s-log-{cluster-id} is created for the ACK cluster.
  3. On the details page of the project, you are redirected to the Logstores tab. All of the Ingress access logs are stored in the nginx-ingress Logstore. In the left-side navigation pane, click Visual Dashboards.
  4. In the dashboard list, click Ingress Overview V1.2.
  5. On the Ingress Overview V1.2 page, click Top 10 Request URLs by Latency to view the top 10 URLs with the highest latency.
  6. On the Ingress Overview V1.2 page, click URL (ARMS) to view the monitoring data about the corresponding Service. You can view the trace details of a specific Service in the ARMS console.