Skip to main content

Extend Override Observability

Last updated on October 24, 2024

Overview

You can use Grafana Cloud with AccelByte Gaming Services (AGS) to:

  • use Grafana's query editor that allows you to specify the exact logs, and metrics data you want to retrieve. You can pick the data source for logs or metrics by accessing the dropdown on the top.

    tip

    Data sources for your application usually follow the pattern log-<your studio name> or metrics-<your studio name>.

  • use Grafana's logging, and metrics capabilities to enable effective debugging of the Overridable Features.

Prerequisite

Dashboard overview

You can access the Grafana Cloud dashboard for your Extend app from the AGS Admin Portal. For more information, see the Access Grafana Cloud dashboards guide.

The Grafana Cloud dashboards for Extend Override apps have various tabs and panels that will become visible. One important feature to note is the hamburger button (three horizontal lines) located in the top-left corner of the screen. This menu allows you to access the following important components:

Home: the starting point that offers a quick overview of various dashboards and settings.

Dashboard: displays pre-configured panels displaying data for logs and metrics. Accessible through the hamburger button.

Explore: this is where logs and metrics can be queried manually. To access this, click on the hamburger button and select Explore. In the Explore tab, the Data Sources dropdown allows you to select specific data sources, such as Loki for logs, Tempo for traces, and others for metrics. You can use these data sources for debugging purposes.

Work with logs

  1. To initiate work with logs, select the source.

    Grafana Cloud dropdown with AccelByte logs selected

  2. Include or remove multiple queries as required. With the source selected, click the Add query button. Additionally, Grafana can also display the query history through the Query history button.

    Add queries to Grafana Cloud for logs

  3. Choose the dropdown for label filters and the corresponding value to filter the log. Adjust labels as needed and use the Line contains field to define a specific error message.

Following the image below, start by selecting the source (1). Then, select the time frame to query (2). For simplicity, filter the logs by "app_name" and "namespace" (3). Lastly, append the Line contains criteria to isolate specific errors (4). The logs will be visible upon clicking the Run query button.

Grafana Cloud query with labeled steps for logs

The image below demonstrates the result of the example debugging. The logs will be presented as depicted above (with the query and logs volume section minimized). Additionally, the Extended Override app info and the displayed error will be accessible to assist in the debugging process. Grafana also provides a viewing feature that allows logs to be prettified or lines to be wrapped by toggling the Prettify JSON or Wrap lines options, if needed.

Lastly, there is a trace button located adjacent to the "traceID" that can be clicked to access the source of the trace for more detailed information.

Annotated example debug from Grafana Cloud

Work with metrics

  1. To initiate work with metrics, select the source.

    Grafana Cloud dropdown with AccelByte metrics selected

  2. Include or remove multiple queries as required. With the source selected, click the Add query button. Additionally, Grafana can also display the query history through the Query history button.

    Add queries to Grafana Cloud for metrics

  3. Choose the dropdown for label filters and the corresponding value to filter the metrics. Adjust labels as needed and use the Line contains field to define a specific metrics data.

Following the image below, start by selecting the source (1). Then, select the time frame to query (2). Choose the values in the Metric dropdown and Label filters (3). Lastly, append more Label filters to isolate a specific "app_name" for the Extend Override app (4). The metrics will be visible upon clicking the Run query button.

Grafana Cloud query with labeled steps for metrics

There are numerous pieces of data containing metrics from the Justice Service and the Extend Override app itself. One way to sum up the metrics is to go the Metric Dashboard.

Metrics dashboard

note

The dashboard will be updated over time.

In the dashboard, there are sections for CPU Utilization and Memory Utilization, each displaying data from requests and from limits. Additionally, the dashboard includes an Inbound Request Total for both gRPC and HTTP, complete with their trace IDs.

The Inbound Request Total (gRPC & HTTP) and Request Total (gRPC) will show the total number of requests for the Extend Override app (ab-12345), categorized by either gRPC or HTTP requests.

Grafana Cloud metrics dashboard