Prometheus Query
Overview Copied
The Prometheus Query plugin is a Netprobe plugin that allows you to query metrics from existing Prometheus deployments using PromQL and ingest the results directly into Geneos. This enables you to bring selected Prometheus metrics into Geneos.
The plugin executes PromQL queries against a Prometheus server via the standard Prometheus HTTP API. Prometheus remains the single source of metrics, while Geneos processes only the required subset via PromQL. The plugin is designed to be lightweight, allowing for configurable PromQL queries.
The Prometheus Query plugin is compatible with Prometheus servers that support the /api/v1/query endpoint.
Note
This plugin is ideal for querying specific metrics from existing Prometheus deployments. For full integration with Remote Write, Alert Manager, and direct collection capabilities, see the Prometheus Collection Agent plugin.
Configuration Copied
Basic tab Copied
This tab contains the following configurable fields:
| Field | Description |
|---|---|
| Queries > Query name | Descriptive name of the query. This will also be used as the name of the dataview. Mandatory: Yes |
| Queries > Prometheus Query | The PromQL query expression that will be executed. Each row in the configuration represents one query, and the result of each query will be mapped to a dataview. Queries can be for:
Entering an invalid query will result in an empty dataview. For more information about PromQL querying, refer to Querying basics. Mandatory: Yes |
| Queries > Key column labels | The metric labels from the PromQL response which will form the key column of the dataview. Multiple labels are joined with For example, in the metric below, you can define All defined labels must exist in every query result. If a label is missing, the resulting row is skipped and a warning is logged. If no labels are defined in the Key column labels, all labels will be concatenated with Mandatory: No |
| Queries > Metric column name | The header name for the metric data column. By default, the header name of the metric data column is derived from the Prometheus Mandatory: No |
| Queries > Max rows | The maximum number of rows to publish in the dataview. This limit applies per query. Default: 200 Mandatory: No |
| Host | Hostname of the Prometheus server. Mandatory: Yes |
| Port | Port number of the Prometheus server. Mandatory: Yes |
| Protocol | Determine whether to use Mandatory: No Default: |
| Protocol > https > certificate | Certificate file to use for SSL authentication.
|
| Protocol > https > certificate > verify | Specify what to verify in the certificate.
When verifying the certificate against a Certificate Authority, a CA bundle in PEM format must be used. This file specifies the Certificate Authorities that are to be trusted. If the operating system does not include a CA bundle or it is out of date, a CA bundle should be specified. You can either create your own CA bundle (useful when using self-signed certificates) or download a standard CA bundle containing trusted Certificate Authorities. Mandatory: No Default: None |
| Protocol > https > tlsVersions > minTLSVersion | Minimum TLS Protocol version to be used. Mandatory: No Default: None |
| Protocol > https > tlsVersions > maxTLSVersion | Maximum TLS Protocol version to be used. Mandatory: No Default: None |
Advanced tab Copied
This tab contains the following configurable fields:
| Field | Description |
|---|---|
| Query timeout | Timeout for query execution in seconds. Mandatory: No Default: 30 seconds |
| Max columns | The maximum number of columns (excluding the key column) to publish in the dataview. Mandatory: No Default: 50 |
Dataview Copied
The metrics retrieved via PromQL queries are displayed in the Geneos dataview format. Each configured query produces a separate dataview, with the dataview name matching the query name specified in the configuration.
Headline legend Copied
| Name | Description |
|---|---|
| Query status | The query execution status. Possible values:
|
| Server base URL | The URL of the Prometheus server. |
| Result count | The total number of metrics. |
Table legend Copied
| Name | Description |
|---|---|
| Key column | The metric labels from the PromQL response. Multiple labels are joined with _. |
| Metric columns | The metrics queried and their corresponding values. |
Show Query command Copied
The Show Query command displays the PromQL query executed for the dataview, as specified in the query configuration. Right-click any headline, including samplingStatus, to execute this command.
Example output: