Provisioning Gateway KPIs and Metrics

In this section, you will learn about KPIs and Metrics of Provisioning Gateway.

Ingress API Gateway Metrics

Metric Metric Details Service Operation Response Code Notes
Total Ingress Requests oc_ingressgateway_http_requests_total All Not Applicable oc_ingressgateway_http_requests_total
Total Ingress Responses oc_ingressgateway_http_responses_total All Not Applicable oc_ingressgateway_http_responses_total
Request with 2xx Responses Total no of success response with status code as 2xx Get,Put & Delete Operations 2xx

oc_ingressgateway_http_responses_total{Status=~"2.*"}

(If you want method specific 2xx response count, then pass the method value as one of the parameter. Sample to get 2xx GET response count is: oc_ingressgateway_http_responses_total{Status=~"2.*",Method="GET"})

Request with 4xx Responses Total no of success response with status code as 4xx Get,Put & Delete Operations 4xx

oc_ingressgateway_http_responses_total{Status=~"4.*"}

(If you want method specific 4xx response count, then pass the method value as one of the parameter. Sample to get 4xx GET response count is: oc_ingressgateway_http_responses_total{Status=~"4.*",Method="GET"})

Request with 5xx Responses Total no of success response with status code as 5xx Get,Put & Delete Operations 5xx

oc_ingressgateway_http_responses_total{Status=~"5.*"}

(If you want method specific 4xx response count, then pass the method value as one of the parameter. Sample to get 4xx GET response count is: oc_ingressgateway_http_responses_total{Status=~"5.*",Method="GET"})

Egress API Gateway Metrics

Metric Metric details service operation response code notes
Total Egress Requests oc_egressgateway_http_requests_total      
Total Egress Responses oc_egressgateway_http_responses_total      
Number of Requests sent by Provgw with PUT towards other NF's Total number of PUT requests sent by provgw PutRequests 201 oc_egressgateway_http_requests_total{Method="PUT"}
Number of Requests sent by provgw with GET towards other NF's Total number of GET requests sent by provgw GetRequests 200 oc_egressgateway_http_requests_total{Method="GET"}
Number of Requests sent by provgw with DELETE towards other NF's Total number of DELETE requests sent by provgw DeleteRequests 204 oc_egressgateway_http_requests_total{Method="DELETE"}
PutRequests with 2xx Total number of success PUT response with status as 2xx PutRequests 2xx oc_egressgateway_http_responses_total{Method="PUT",Status=~"2.*"}
GetRequests with 2xx Total number of success GET response with status as 2xx GetRequests 2xx oc_egressgateway_http_responses_total{Method="GET",Status=~"2.*"}
DeleteRequests with 2xx Total number of success DELETE response with status as 2xx DeleteRequests 2xx oc_egressgateway_http_responses_total{Method="DELETE",Status=~"2.*"}
PutRequests with 4xx Total number of failure PUT response with status as 4xx PutRequests 4xx oc_egressgateway_http_responses_total{Method="PUT",Status=~"4.*"}
GetRequests with 4xx Total number of failure GET response with status as 4xx GetRequests 4xx oc_egressgateway_http_responses_total{Method="GET",Status=~"4.*"}
DeleteRequests with 4xx Total number of failure DELETE response with status as 4xx DeleteRequests 4xx oc_egressgateway_http_responses_total{Method="DELETE",Status=~"4.*"}
No of HTTP request sent by provgw Total number of HTTP requests sent by provgw. If you want a method specific, then add a method as one more tag as a comma-separated. All Not Applicable oc_egressgateway_http_requests_total{Scheme="HTTP"}

Provisioning Gateway Metrics

Category Sub-Category Description Metrics Name Notes

Rest Controller

ProvGw

Ingress provGwRestRequestTotal provGw_rest_request{Method=""}

Gives total number of request received by the ProvGw when you pass the Method value as blank. If you want to get the total number of GET or PUT or DELETE request recieved then pass the same as the value of the Method.

Sample to check total no. of GET request: provGw_rest_request{Method="GET"}

    provGwRestResponseTotal provGw_rest_response{Method=""} Gives total number of response send from the ProvGw when you pass the Method value as blank. If you want to get the total number of GET or PUT or DELETE response sent then you have to pass the same as the value of the Method.

Sample to check total no. of GET request: provGw_rest_response{Method="GET"}

    provGwRestSuccessResponse provGw_rest_successResponse{Method=""}

Gives total number of successful response send from ProvGw when you pass the Method value as blank. If you want the total number of GET or PUT or DELETE success response then pass the same as the value of the Method.

Sample to check total number of GET success response is: provGw_rest_successResponse{Method="GET"}

    provGwRestFailureResponse provGw_rest_failureResponse{Method=""}

Gives total number of failure response send from ProvGw when you pass the Method value as blank. If you want the total number of GET or PUT or DELETE failure response then pass the same as the value of the Method.

Sample to check the total number of GET failure response: provGw_rest_failureResponse{Method="GET"}

  Egress udrRestRequestTotal udr_rest_request{Method="", udrSegment="SEG NAME"}

Gives the total number of request send to the UDR (segment-1) when you pass the Method value as blank and the udrSegment value as- name of UDR segment-1. Similarly if you want to check the same for UDR segment-2, pass the udrSegment value as- name of UDR segment-2.

If you want to check the total number of GET or PUT or DELETE request send to udr segment-1 or udr segment-2, then pass the same as the value of the Method and udrSegment as SEG-1 NAME/SEG-2 NAME.

Sample to check total number of GET request sent to udr segment 1 is: udr_rest_request{Method="GET", udrSegment="SEG-1 NAME"}

Sample to check total number of GET request sent to udr segment 2 is: udr_rest_request{Method="GET", udrSegment="SEG-2 NAME"}

    udrRestResponseTotal udr_rest_response{Method="", udrSegment = "SEG NAME"}

Gives the total number of response received from UDR(segment-1) when you pass the udrSgement value as- name of UDR segment-1. Similarly if you want to check the same for UDR segment-2, then pass the udrSegment value as- name of UDR segment-2.

If you want to check the total number of GET or PUT or DELETE response received from udr segment-1 or udr segment-2 , you have to pass the same, as the value of the Method and udrSegment as SEG-1 NAME/SEG-2 NAME.

Sample to check total number of GET response received from udr segment 1: udr_rest_response{Method="GET", udrSegment="SEG-1 NAME"}

Sample to check total number of GET response received from udr segment 2: udr_rest_response{Method="GET", udrSegment="SEG-2 NAME"}
    udrRestSuccessResponse udr_rest_successResponse{Method="", udrSegment="SEG NAME"}

Gives the total number of success response received from the UDR (segment-1) when you pass the Method value as blank and the udrSegment value as- name of the udr segment-1. Similarly if you want to check the same for UDR segment-2, pass the udrSegment value as- name of udr segment-2.

If you want to check the total number of GET or PUT or DELETE success response received from udr segment-1 or udr segment-2, then pass the same as the value of the Method and udrSegment as SEG-1 NAME/SEG-2 NAME.

Sample to check total number of GET success response received from udr segment 1 is: udr_rest_successResponse{Method="GET", udrSegment="SEG-1 NAME"}

Sample to check the total number of GET success response received from udr segment 2 is: udr_rest_successResponse{Method="GET", udrSegment="SEG-2 NAME"}

    udrRestFailureResponse udr_rest_failureResponse{Method="", udrSegment="SEG-1 NAME"}

Gives the total number of failure response received from the UDR (segment-1), when you pass the Method value as blank and the udrSegment value as name of the udr segment-1. Similarly if you want to check the same for UDR segment-2, you have to pass the udrSegment value as name of udr segment-2.

If you want to check the total number of GET or PUT or DELETE failure response received from udr segment-1 or udr segment-2 , then pass the same as the value of the Method and udrSegment as SEG-1 NAME/SEG-2 NAME.

Sample to check total number of GET failure response received from udr segment 1 is: udr_rest_failureResponse{Method="GET", udrSegment="SEG-1 NAME"}

Sample to check total number of GET success response received from udr segment 2 is: udr_rest_failureResponse{Method="GET", udrSegment="SEG-2 NAME"}

  Egress Transient error metrics udr_rest_transient_error Gives the total number of transient errors received. Currently, only 5xx errors are considered as transient errors. This does not need any parameter.
  Egress Service not available/ segment down udr_rest_service_unavailable Gives the total number of messages that have failed even with retries to a segment. This is a potential indication of a segment becoming unavailable. This does not need any parameter.

Auditor Metrics

Category Sub-Category Description Metrics Name Notes
  Egress Successful audit with same content in both segments provgw_audit_success Total number of successful auditing where the responses received from both the SLFs matches.
    Successful audit with different content in both segments provgw_audit_responsemismatch Total number of successful auditing where the responses received from both the SLFs does not match.
    total failure count provgw_auditor_failure Total number of audit failures where auditor failed to validate/audit the responses.
    total number of subscriber audited provgw_audit_total Total number of subscriber audits carried out by auditor microservice.
  Egress Transient error metrics provgw_audit_transient_error Gives the total number of transient errors received. currently. Only 5xx errors are considered as transient errors. This does not need any parameter.
  Egress Service not available/ segment down provgw_audit_service_unavailable Gives the total number of messages that have failed even with retries to a segment. This is a potential indication of a segment becoming unavailable. This does not need any parameter.

KPIs - provgw-ingress-gateway

KPI Details Service Operation KPI Response Code Notes
No of Requests/sec All ProvGw Ingress Request Rate Not Applicable sum(irate(oc_ingressgateway_http_requests_total[5m]))
No of Responses/sec All ProvGw Ingress Response Rate Not Applicable sum(irate(oc_ingressgateway_http_responses_total[5m]))
No of 2xx responses per second GET,PUT & DELETE Request rate of Requests with 2xx response code 200/201/204

sum(irate(oc_ingressgateway_http_responses_total{Status=~"2.*"}[5m]))/sum(irate(oc_ingressgateway_http_responses_total[5m]))

(If you want method specific 2xx response rate, then pass it as one of the parameters,

Sample to check the rate of GET requests with 2xx response is:

sum(irate(oc_ingressgateway_http_responses_total{Method="GET",Status=~"2.*"}[5m]))/sum(irate(oc_ingressgateway_http_responses_total[5m])))

No of 4xx responses per second GET,PUT & DELETE Request rate of Requests with 4xx response code 400/404

sum(irate(oc_ingressgateway_http_responses_total{Status=~"4.*"}[5m]))/sum(irate(oc_ingressgateway_http_responses_total[5m]))

(If you want method specific 4xx response rate, then pass it as one of the parameters,

Sample to check the rate of GET requests with 4xx response is:

sum(irate(oc_ingressgateway_http_responses_total{Method="GET",Status=~"4.*"}[5m]))/sum(irate(oc_ingressgateway_http_responses_total[5m])))

No of 5xx responses per second GET,PUT & DELETE Request rate of Requests with 5xx response code 500/503

sum(irate(oc_ingressgateway_http_responses_total{Status=~"5.*"}[5m]))/sum(irate(oc_ingressgateway_http_responses_total[5m]))

(If you want method specific 5xx response rate, then pass it as one of the parameters,

Sample to check the rate of GET requests with 5xx response is:

sum(irate(oc_ingressgateway_http_responses_total{Method="GET",Status=~"5.*"}[5m]))/sum(irate(oc_ingressgateway_http_responses_total[5m])))