How to create Kibana panel with network metrics

Hi Team,

We are working on creating Application Networking Kibana Panels based on the following raw data:

# HELP http_request_duration_seconds Request duration histogram  
# TYPE http_request_duration_seconds histogram  
http_request_duration_seconds_bucket{le="0.1"} 2    
http_request_duration_seconds_bucket{le="0.5"} 5    
http_request_duration_seconds_bucket{le="1"} 8      
http_request_duration_seconds_bucket{le="5"} 9      
http_request_duration_seconds_bucket{le="+Inf"} 10  
http_request_duration_seconds_sum 23.8              
http_request_duration_seconds_count 10              

In Grafana, using PromQL, we calculate the 99th percentile of request durations (for successful requests with status code 200) using the following query:

histogram_quantile(0.99, sum(rate(http_request_duration_seconds_bucket{status="200"}[5m])) by (le))  

In Kibana, I attempted the following configuration:

  • Vertical axis: percentile(prometheus.istio_request_duration_milliseconds.histogram, percentile=95)
  • Time interval: @timestamp bucketed to 5 minutes

However, the data results do not align with what we observe in Grafana.

Questions:

  1. What is the equivalent KQL query or approach in Kibana to replicate the above Grafana PromQL functionality?
  2. Are there additional steps or configurations required to ensure data alignment between Kibana and Grafana results?
  3. Is there any elastic reference documentation similar to this guide?

Your guidance on these points will be greatly appreciated.

Thanks

Hi @Aditya_Choudhari, Welcome to the Elastic community. Since it is the prometheus integration, you can use -

  1. You can use Prometheus Elastic integration to scrape the same metrics from Prometheus agent to Elastic.
  2. You can use percentile aggregation to achieve the same. Same you can replicate on kibana while creating the visualizations.