Skip to content

Monitoring Functions

The Gateway component exposes several metrics to help you monitor the health and behavior of your functions

Metric Type Description Labels
gateway_functions_seconds histogram Function invocation time taken function_name
gateway_function_invocation_total counter Function invocation count function_name, code
gateway_service_count counter Number of function replicas function_name
http_request_duration_seconds histogram Seconds spent serving HTTP requests method, path, status
http_requests_total counter The total number of HTTP requests method, path, status

The http_request* metrics record the latency and statistics of /system/* routes to monitor the OpenFaaS gateway and its provider. The /async-function route is also recorded in these metrics to observe asynchronous ingestion rate and latency.


These basic metrics can be used to track the health of your functions as well a general usage patterns. See the Prometheus documentation and examples for more details about the available options and query functions. Below are several queries you might want to include in a basic Grafana dashboard for observing your OpenFaaS functions

Function invocation rate

Return the per-second rate of invocation as measured over the previous 20 seconds:

rate ( gateway_function_invocation_total [20s])

Function replica count / scaling

Return the total function replicas:


Total OK Function Invocation

Return the total number of successful function invocations:

sum( gateway_function_invocation_total {  code=\"200\"}

Function execution time

Return the average function execution time, as measure over the previous 20 seconds:

(rate(gateway_functions_seconds_sum[20s]) / rate(gateway_functions_seconds_count[20s]))

Metrics for a single function

Each of the metrics generated by the Gateway are labeled with and can be filtered by the function name, For example The invocation rate for just a single function (e.g. if the function name is echo) is given by

rate ( gateway_function_invocation_total{function_name='echo'} [20s])