Prometheus Integration
Prometheus is a powerful monitoring and alerting toolkit, often used for collecting and querying various system metrics. This guide outlines the steps required to integrate Prometheus with an self-hosted instance.
Prometheus is a powerful monitoring and alerting toolkit, often used for collecting and querying various system metrics. This guide outlines the steps required to integrate Prometheus with an self-hosted instance.
Deepgram supports self-hosted deployments on Kubernetes via the deepgram-self-hosted Helm chart. Prometheus will be installed and automatically configured if either scaling.auto.enabled or kube-prometheus-stack.includeDependency is set to true.
If you would like to add additional configuration, see the kube-prometheus-stack Helm chart for available values. See the Overriding Values from a Parent Chart documentation for details on setting these values in the kube-prometheus-stack subchart from the deepgram-self-hosted parent chart.
Self-hosted deployments utilizing Docker or Podman will need to manually install and manage Prometheus.
Before proceeding, ensure that you have the following:
HOST_PORT.prometheus.yml)Add the target to the Prometheus configuration file in the prometheus.yml file. Locate the scrape_configs section, and add a new job with the Engine container instance as a target:
Replace <ENGINE_INSTANCE_URI> with the IP address or hostname of the Engine container. Save the configuration file.
To apply the changes made to the prometheus.yml file, you need to reload the Prometheus configuration. You can do this by restarting the Prometheus service:
Open the Prometheus web interface, usually accessible at http://localhost:9090, and navigate to the “Targets” page (under the “Status” menu). You should see the dg_self_hosted_instance job listed with a status of “UP”, indicating that Prometheus is successfully scraping metrics from the Engine container.
With the integration complete, you can now query the collected metrics using the Prometheus web interface or API. You may consider using a tool like Grafana for handling visualization and alerting. Deepgram provides an open-source Grafana dashboard template for customers to begin monitoring self-hosted metrics.