Schedule demo

Prometheus Integration


Overview

Prometheus is an open-source software application that is used for systems/event monitoring and alerting. It records, collects, and stores real-time data in the form of time series using HTTP pull model, and aids in discovering and monitoring various resources using flexible queries and real-time alerting.

With Prometheus integration, you can automatically fetch scrape jobs configured from Prometheus server and categorize it into various monitor types supported in Applications Manager. Integrating Prometheus with Applications Manager enables you to achieve the following:

  • Automatic categorization of monitor type based on scrape job.
  • Data visualization within the product without the need for third-party tools.
  • Configuration of alerts, actions and reports for all the collected metrics.

Note: Currently, Applications Manager supports only basic authentication for Prometheus API Data collection.

Prerequisites

Prometheus server should be reachable to the system where Applications Manager is installed. If Prometheus server is deployed as a Pod/Container, the option cURL through SSH can be used for discovery and data collection, for which, the server should be accessible with localhost IP address or Pod IP address.

Supported Monitor Types

Monitor typePrerequisites
OpenshiftRefer here
Tomcat ServerRefer here
Kubernetes-
Nginx Server-
RabbitMQRefer here
Docker SwarmRefer here
ClickHouseRefer here

Steps to add integration

Follow the steps given below to integrate Prometheus with Applications Manager:

  1. After logging into Applications Manager, navigate to Settings → Product Settings → Add-On Settings.
  2. Click on Add icon shown in the Prometheus section. This will take you to the Prometheus integration page.
  3. Enter the Display Name of the add-on integration.
  4. Specify the Polling Interval time for discovery, in minutes.
  5. Choose Mode of data collection. Select Exposed Prometheus API if Prometheus server/pod is exposed over the network. Select cURL through SSH if Prometheus is accessible only on deployed server.
  6. Specify the Prometheus Server Details such as Host, API Port, Endpoint and the Protocol to be used while accessing Prometheus API.
  7. Choose Authentication to be either No Authentication, Basic Authentication or Service Account Token.
  8. Follow the given steps according to the type of authentication you prefer:
    • No Authentication: Select if Prometheus Endpoint URL is unauthenticated.
    • Basic Authentication: Select if Prometheus Endpoint URL is authenticated with Basic Authentication. Once selected, specify the Username and Password of the Prometheus server.
    • Service Account Token: Select if Prometheus Endpoint URL is authenticated with Service account from OpenShift. Once selected, enter the Service Account API token to be used for Service account based authentication.

      Note: Service account-based authentication is applicable only for Openshift-based Prometheus deployments.

  9. Enter the required SSH Connection Details if the Mode of data collection is selected as cURL through SSH.
  10. Select the Monitor Types required to be discovered from Prometheus server.
  11. In the Data Collection Filter Label textbox, specify the Prometheus label that Applications Manager should use to filter and identify instances during discovery and data collection. By default, the label apm_filter is used. If your Prometheus setup uses a different label to tag scrape targets, enter that label name here.

    Note: The label name must start with a letter or underscore and can contain only letters, numbers, and underscores (maximum 100 characters).

  12. Choose the Discovery Options based on which discovery needs to be performed on Prometheus server.
  13. Under Action on monitor if data not available dropdown, select the action to be performed in case of data unavailability during monitor discovery or data collection.
  14. Click Save.

After performing the above steps, you can view the list of discovered and monitors in the Integrations (Add-On Settings) page. A button named Show Monitors will be present at the top right corner of each added integration thumbnail, clicking which will display the list of monitors added for that integration.

In addition, you can use various options to handle the monitor addition while performing the discovery. Use the Specific Instances option to customize the discoveries based on specific instances. Also, there are options to auto delete, un-manage monitors, and alert users if data is not available on Prometheus server.

Loved by customers all over the world

"Standout Tool With Extensive Monitoring Capabilities"

It allows us to track crucial metrics such as response times, resource utilization, error rates, and transaction performance. The real-time monitoring alerts promptly notify us of any issues or anomalies, enabling us to take immediate action.

Reviewer Role: Research and Development

carlos-rivero
"I like Applications Manager because it helps us to detect issues present in our servers and SQL databases."
Carlos Rivero

Tech Support Manager, Lexmark

Trusted by thousands of leading businesses globally