Skip to main content
For Grafana Installation and Prometheus Integration as Data Source, you can check our relevant documentation.

Dashboard Panels

The panel examples below are configurations you can use in Grafana to visualize Apinizer Gateway metrics.

Panel 1: Total API Request Volume by Request Type

Timeseries Visualization

Shows total, successful, and failed API requests as a time series.
PromQL Queries:
  • A (Total Requests): sum(rate(apinizer_api_traffic_total_count_total[5m]))
  • B (Successful Requests): sum(rate(apinizer_api_traffic_success_count_total[5m]))
  • C (Failed Requests): sum(rate(apinizer_api_traffic_error_count_total[5m]))
Visualization Type: Timeseries Panel Settings:
  • Use different colors for each query (e.g., Total=blue, Successful=green, Failed=red)
  • Enable legend
  • Use “req/s” as Y-axis unit

Panel 2: APIs with Highest Traffic Volume

Bar Chart Visualization

Shows the top 5 APIs with the highest traffic volume in the last 100 minutes.
PromQL Query:
topk(5, sum by (api_name) (increase(apinizer_api_traffic_total_count_tagged_total[100m])))
Visualization Type: Bar gauge or Bar chart Panel Settings:
  • Direction: Horizontal
  • Sorting: High to low
  • Enable legend and show API names

Panel 3: API Processing Time Details

Timeseries Visualization

Shows request pipeline, routing, and response pipeline times separately.
PromQL Queries:
  • A (Request Pipeline Time): sum(rate(apinizer_api_traffic_request_pipeline_time_seconds_sum[5m])) / sum(rate(apinizer_api_traffic_request_pipeline_time_seconds_count[5m])) * 1000
  • B (Routing Time): sum(rate(apinizer_api_traffic_routing_time_seconds_sum[5m])) / sum(rate(apinizer_api_traffic_routing_time_seconds_count[5m])) * 1000
  • C (Response Pipeline Time): sum(rate(apinizer_api_traffic_response_pipeline_time_seconds_sum[5m])) / sum(rate(apinizer_api_traffic_response_pipeline_time_seconds_count[5m])) * 1000
Visualization Type: Timeseries Panel Settings:
  • Use “ms” (milliseconds) as Y-axis unit
  • Use different colors and styles for each query
  • Enable legend

Panel 4: Average Request / Response Size

Timeseries Visualization

Shows average sizes of request and response messages.
PromQL Queries:
  • A (Average Request Size): sum(rate(apinizer_api_traffic_request_size_bytes_sum[5m])) / sum(rate(apinizer_api_traffic_request_size_bytes_count[5m]))
  • B (Average Response Size): sum(rate(apinizer_api_traffic_response_size_bytes_sum[5m])) / sum(rate(apinizer_api_traffic_response_size_bytes_count[5m]))
Visualization Type: Timeseries Panel Settings:
  • Use “bytes” or “decbytes” as Y-axis unit
  • Use different colors for each query
  • Enable legend

Panel 5: CPU Usage of Pods

Gauge Visualization

Shows CPU usage percentage of each Gateway pod.
PromQL Query:
sum(system_cpu_usage{pod=~".*"}) by (pod) * 100
Visualization Type: Gauge Panel Settings:
  • Set thresholds (e.g., Green: 0-70%, Yellow: 70-90%, Red: 90-100%)
  • Min: 0, Max: 100
  • Use ”%” as Y-axis unit
  • Show pod names in legend

Dashboard Creation Tips

Panel Layout

Organize panels in logical groups. API traffic metrics can be at the top, system metrics at the bottom.

Color Scheme

Use a consistent color scheme. Use green for successful operations, red for errors, yellow for warnings.

Time Range

Set the default time range for the dashboard. Usually the last 1 hour or last 24 hours is useful.

Refresh Interval

Set the automatic refresh time of the dashboard. 30 seconds is suitable for high-traffic systems, 1-5 minutes for low-traffic systems.
These panel examples are sufficient to create a basic dashboard. You can add additional panels or customize existing panels according to your needs.