Search Shortcut cmd + k | ctrl + k
prometheus

Query Prometheus-compatible HTTP APIs directly from DuckDB

Maintainer(s): botan

Installing and Loading

INSTALL prometheus FROM community;
LOAD prometheus;

Example

-- Replace localhost:9090 with your Prometheus-compatible endpoint.
SELECT timestamp, job, instance, value
FROM prometheus_scan(
    'up',
    current_timestamp - INTERVAL '15 minutes',
    current_timestamp,
    endpoint := 'http://localhost:9090',
    step := INTERVAL '1 minute',
    labels := ['job', 'instance']
)
ORDER BY timestamp DESC, job, instance;

About prometheus

Run instant PromQL queries with prometheus_query and range queries with prometheus_scan; their _many variants accept multiple expressions. Each sample contains labels MAP(VARCHAR, VARCHAR), timestamp TIMESTAMPTZ, and value DOUBLE. Pass labels := [...] to expose selected labels as columns.

Discovery functions list labels, label values, series, and metric metadata. Requests are unauthenticated. See the README for function signatures and limitations.

Added Functions

function_name function_type description comment examples
prometheus_label_values table NULL NULL  
prometheus_labels table NULL NULL  
prometheus_metadata table NULL NULL  
prometheus_query table NULL NULL  
prometheus_query_many table NULL NULL  
prometheus_scan table NULL NULL  
prometheus_scan_many table NULL NULL  
prometheus_series table NULL NULL  

Overloaded Functions

This extension does not add any function overloads.

Added Types

This extension does not add any types.

Added Settings

This extension does not add any settings.