Example PromQL Queries for Apinizer Gateway
bilgi
Below are example PromQL queries you can use to analyze Apinizer Gateway metrics. These queries can be used in Grafana dashboards or Prometheus Query UI.
API Traffic Analyses
Total Request Count
Calculates total API request count for a specific time range
Requests Per API
Shows request count separately for each API
Success Rate
Calculates the ratio of successful requests to total requests
Error Analysis
Detects APIs with highest error rates
1. Total API Request Count (for 1 hour)
sum(increase(apinizer_api_traffic_total_count_total[1h]))
2. Request Count Per API (for 5 minutes)
sum by (api_name) (increase(apinizer_api_traffic_total_count_tagged_total[5m]))
3. API Success Rate (%) (for 10 minutes)
(sum(increase(apinizer_api_traffic_success_count_total[10m])) / sum(increase(apinizer_api_traffic_total_count_total[10m]))) * 100
4. APIs with Highest Error Rate (for 5 minutes)
topk(5, sum by (api_name) (increase(apinizer_api_traffic_error_count_tagged_total[15m])) / sum by (api_name) (increase(apinizer_api_traffic_total_count_tagged_total[15m])))
5. Average Response Time Per API (for 5 minutes)
sum by (api_name) (rate(apinizer_api_traffic_total_time_tagged_seconds_sum[5m])) / sum by (api_name) (rate(apinizer_api_traffic_total_time_tagged_seconds_count[5m]))
External Connection Analyses
bilgi
These queries are used to analyze the performance of external service calls made through Apinizer Gateway.
1. Error Rate Per Target URL
sum by (url) (increase(apinizer_external_requests_total_count_tagged_total[5m])) / sum by (url) (increase(apinizer_external_requests_total_count_tagged_total[5m]))
2. Slowest Services (Average Response Time)
topk(5, sum by (url) (rate(apinizer_external_response_time_seconds_sum[5m])) / sum by (url) (rate(apinizer_external_response_time_seconds_count[5m])))
Cache Analyses
bilgi
These queries are used to analyze cache performance and cache hit rates.
1. Cache Hit Rate (%)
(sum(increase(apinizer_api_traffic_cache_hits_count_total[5m])) / sum(increase(apinizer_api_traffic_total_count_total[5m]))) * 100
2. Cache Hit Rate Per API (%)
sum by (api_name) (increase(apinizer_api_traffic_cache_hits_count_tagged_total[5m])) / sum by (api_name) (increase(apinizer_api_traffic_total_count_tagged_total[5m])) * 100
JVM Analyses
bilgi
These queries are used to monitor JVM performance and resource usage in the worker (gateway) pod.
1. Memory Usage Percentage
sum(jvm_memory_used_bytes) / sum(jvm_memory_max_bytes) * 100
2. Garbage Collection Duration
sum(rate(jvm_gc_pause_seconds_sum[5m]))
3. Thread Count
sum(jvm_threads_live_threads)