Prometheus Settings and Configurations

The Prometheus integration can be adjusted based on the specific platform needs using the dedicated settings and component’s configuration files:

Prometheus Monitoring Settings

All the Prometheus-related monitoring settings can be found in the Virtuozzo Application Management admin panel. Go to the System Settings section and activate Expert Mode at the top-right corner. You can find all the related parameters by entering “prometheus” to the search bar:

Prometheus settings

Note: To receive notifications from Prometheus, you need to specify at least one of the notification channels (email or Slack) via the corresponding prometheus.alerting.email.* or prometheus.alerting.slack.* settings. However, we recommend reviewing all the available settings to ensure that the monitoring is configured according to your needs.

SettingDescription
PROMETHEUS_ENABLEDDisplays/hides the Prometheus links in the admin panel
prometheus.alerting.emailEnables/disables email notifications via Alertmanager
prometheus.alerting.email.addressesA semicolon-separated list of email addresses to receive notifications via Alertmanager
prometheus.alerting.repeat.intervalSets a delay (minutes) before sending a repeat notification via Alertmanager for a firing (ongoing) alert
prometheus.alerting.report.resolvedEnables/disables notifications about resolved alerts
prometheus.alerting.resolve.timeoutSets the time (minutes) after which an alert is declared resolved if it has not been updated
prometheus.alerting.severity.levelSelects minimal severity level of the reported alerts: INFO - all alerts (critical, warning, info); WARNING – critical and warning alerts; CRITICAL – only critical alerts
prometheus.alerting.slackEnables/disables Slack notifications via Alertmanager
prometheus.alerting.slack.channelSlack channel name for reporting alerts
prometheus.alerting.slack.urlSlack webhook URL.
prometheus.alerting.statusEnables/disables all alerting notifications. Automatically disabled when maintenance mode is enabled for the admin panel.
prometheus.data.retention.periodSets a period (days) to keep Prometheus monitoring data. After applying this setting, all outdated data will be removed immediately
prometheus.data.retention.sizeSets the maximum size (GB) of the Prometheus monitoring data to keep. If exceeded, the oldest data will be deleted first. Set as “0” to disable

Monitoring Components Configurations

Below, we prepared parameters descriptions for the main configuration files of the Prometheus monitoring components:

  • Prometheus
SectionPropertyDescription
Defaultjelastic_settingsPath to the Virtuozzo Application Management configuration file (/etc/jelastic/settings.conf).
Defaultupdate_intervalTime in seconds after which the service will start a new cycle of internal checks, config generations, etc.
Defaultalertmanager_prefixA prefix added to the Alertmanager web path (alertmanager by default). E.g., Prometheus accesses Alertmanager with the http://127.0.0.1/alertmanager URL.
Databasesmysql_connection_timeoutTimeout in seconds for prometheus-monitor to connect to Virtuozzo Application Management databases.
Databasesvap_general_dbOptions for the hivext_jelastic Virtuozzo Application Management database.
Databasesvap_config_dbOptions for the hivext_configuration Virtuozzo Application Management database.
Databasesalerts_databasePath to the internal sqlite3 database, used by prometheus-monitor to store some triggers’ information, hosts and custom hosts data.
Exporterexporter_label_filterA list of metrics from the Prometheus exporters (App-Management-Exporter) required to generate alerts. If a label specified in the current option is found in the exporter - data from the metric will be processed and a trigger generated.
Exporterexporter_get_timeoutTimeout in seconds to get data from App-Management-Exporter.
Exportervap_exporter_portThe App-Management-Exporter port.
Exporteradditional_exporter_portsComma-separated string of additional Prometheus exporter ports. Only App-Management-Exporter is used for trigger generation, but for targets generation the platform needs to know all exporters.
Templatesalert_templateTemplate for Prometheus alert generation.
Templatestarget_templateTemplate for Prometheus target generation.
Templatesprometheus_templateTemplate for Prometheus main configuration file.
Templatesweb_templateTemplate for Prometheus basic auth.
Templatesprometheus_service_templateTemplate for the prometheus.service systemd service.
Configsprometheus_service_confPath to the prometheus.service systemd service (required for template generation).
Configsprometheus_confPath to the prometheus.yaml main configuration file (required for template generation).
Configsweb_confPath the web.yaml configuration file (required for template generation).
Configstargets_dirPath to the directory where Prometheus will generate targets
Configsalerts_dirPath to the directory where Prometheus will generate alerts
Logginglog_levelMinimal severity level for issues logging. Supported values: INFO, WARNING, ERROR.
LogginglogfilePath to the log file location.
  • Alertmanager
SectionPropertyDescription
Defaultjelastic_settingsPath to the Virtuozzo Application Management configuration file (/etc/jelastic/settings.conf).
Defaultupdate_intervalTime in seconds after which the service will start a new cycle of internal checks, config generations, etc.
Defaultdashboard_url_prefixA prefix added to the Alertmanager web path (alertmanager by default). E.g., Prometheus accesses Alertmanager with the http://127.0.0.1/alertmanager URL.
Databasesmysql_connection_timeoutTimeout in seconds for prometheus-monitor to connect to Virtuozzo Application Management databases.
Databasesvap_general_dbOptions for the hivext_jelastic Virtuozzo Application Management database.
Databasesvap_config_dbOptions for the hivext_configuration Virtuozzo Application Management database.
Databasesalerts_databasePath to the internal sqlite3 database, used by prometheus-monitor to store some triggers’ information, hosts and custom hosts data.
Templatesalertmanager_temlateTemplate for Alertmanager main configuration file generation.
Templatesalertmanager_service_temlateTemplate for Alertmanager systemd service generation.
Configsalertmanager_confPath to the alertmanager.yaml main configuration file (required for template generation).
Configshtpasswd_filePath to the .alertmanager-htpasswd configuration file (required for template generation).
Configsalertmanager_service_confPath to the alertmanager.service configuration file (required for template generation).
Logginglog_levelMinimal severity level for issues logging. Supported values: INFO, WARNING, ERROR.
LogginglogfilePath to the log file location.
  • Grafana
SectionPropertyDescription
Defaultjelastic_settingsPath to the Virtuozzo Application Management configuration file (/etc/jelastic/settings.conf).
Defaultupdate_intervalTime in seconds after which the service will start a new cycle of internal checks, config generations, etc.
Defaultdashboards_dirPath to the directory, where Grafana infrastructure dashboard templates are stored.
Defaultuser_dashboards_dirPath to the directory, where Grafana user dashboard templates are stored (preserved during the redeploy process).
Databasesmysql_connection_timeoutTimeout in seconds for prometheus-monitor to connect to Virtuozzo Application Management databases.
Databasesvap_general_dbOptions for the hivext_jelastic Virtuozzo Application Management database.
Databasesvap_config_dbOptions for the hivext_configuration Virtuozzo Application Management database.
Databasesalerts_databasePath to the internal sqlite3 database, used by prometheus-monitor to store some triggers’ information, hosts and custom hosts data.
Grafanagrafana_url_prefixA prefix added to the Grafana web path (grafana by default). E.g., Prometheus accesses Grafana with the http://127.0.0.1/grafana URL.
Grafanagrafana_loginGrafana administration account login (admin by default).
Grafanagrafana_portThe grafana-server service port (3000 by default).
Grafanagrafana_hostThe grafana-server service host (127.0.0.1 by default).
Configsalertmanager_service_confPath to the alertmanager.service configuration file (required for template generation).
Prometheusprometheus_url_prefixUsed to specify a prefix that is prepended to prometheus web paths. Default value - prometheus.
Prometheusprometheus_loginThe Prometheus administration account login (admin by default).
Prometheusprometheus_portThe Prometheus service port (9090 by default).
Prometheusprometheus_hostThe Prometheus service host (127.0.0.1 by default).
Prometheusprometheus_datasourceThe name for the Prometheus datastore in Grafana (Prometheus by default).
Logginglog_levelMinimal severity level for issues logging. Supported values: INFO, WARNING, ERROR.
LogginglogfilePath to the log file location.

What’s next?