Observability in WebRTC

From Genesys Documentation
Jump to: navigation, search
This topic is part of the manual WebRTC Private Edition Guide for version Current of WebRTC.

Learn about the logs, metrics, and alerts you should monitor for WebRTC.

Related documentation:

Monitoring

Private edition services expose metrics that can be scraped by Prometheus, to support monitoring operations and alerting.

  • As described on Monitoring overview and approach, you can use a tool like Grafana to create dashboards that query the Prometheus metrics to visualize operational status.
  • As described on Customizing Alertmanager configuration, you can configure Alertmanager to send notifications to notification providers such as PagerDuty, to notify you when an alert is triggered because a metric has exceeded a defined threshold.

The services expose a number of Genesys-defined and third-party metrics. The metrics that are defined in third-party software used by private edition services are available for you to use as long as the third-party provider still supports them. For descriptions of available WebRTC metrics, see:

See also System metrics.

Enable monitoring

The WebRTC service uses a PodMonitor custom resource definition (CRD). Monitoring is not enabled in the WebRTC service by default. To enable monitoring and expose WebRTC metrics and alerts, you must modify the Helm chart values. Set the following parameters in the values.yaml file to true:

  • monitoring.enabled
  • monitoring.prometheusMetrics
  • monitoring.prometheusAlerts

For information about overriding Helm chart values before deployment, see Overriding Helm chart values.

Service CRD or annotations? Port Endpoint/Selector Metrics update interval
WebRTC Gateway Service PodMonitor 10052 /metrics 30s

Configure metrics

No further configuration is required in order to define or expose these metrics.

Alerting

Private edition services define a number of alerts based on Prometheus metrics thresholds.

Important
While you can use general third-party functionality to create rules to trigger alerts based on metrics values you specify, private edition does not enable you to create custom alerts, and Genesys does not provide support for custom alerting.

For descriptions of available WebRTC alerts, see:


Configure alerts

Private edition services define a number of alerts by default (for WebRTC, see the pages linked to above). No further configuration is required.

The alerts are defined as PrometheusRule objects in a prometheus-rule.yaml file in the Helm charts. As described above, WebRTC does not support customizing the alerts or defining additional PrometheusRule objects to create alerts based on the service-provided metrics.

Logging

Refer to the Logging topic for information on configuring logging for WebRTC.