Skip to content

KxSystems/prometheus-kdb-exporter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Prometheus Exporter Prometheus Exporter for kdb+

GitHub release (latest by date)

This interface provides a method by which to expose metrics from a kdb+ process or multiple processes to Prometheus for monitoring. This is done via the script q/exporter.q which exposes kdb+ process metrics which can be consumed by Prometheus.

This interface is part of the Fusion for kdb+ project.

New to kdb+ ?

Kdb+ is the world's fastest time-series database, optimized for ingesting, analyzing and storing massive amounts of structured data. To get started with kdb+, visit https://code.kx.com/q/learn/ for downloads and developer information. For general information, visit https://kx.com/

What is Prometheus ?

Prometheus is an open source monitoring solution which facilitates metrics gathering, querying and alerting for a wealth of different 3rd-party languages and applications. It also provides integration with Kubernetes for automatic discovery of supported applications.

Visualization and querying can be done through the Prometheus built in expression browser, or more commonly via Grafana. The repo includes an example of this using Docker.

Quick start

Install the appropriate q scripts to $QHOME/%QHOME% using the install.sh/install.bat files

## Linux/MacOS
chmod +x install.sh && ./install.sh

## Windows
install.bat

Run kdb+ with the supplied q script. This script will expose metrics on port 8080 which can be monitored by Prometheus

q q/exporter.q -p 8080

Once running, use your web browser to view the currently exposed statistics on the metrics URL e.g. http://localhost:8080/metrics. The metrics exposed will be the metric values at the time at which the URL is requested.

Unsupported functionality

This interface does not provide service discovery. Prometheus itself has support for multiple mechanisms such as DNS, Kubernetes, EC2, file based config, etc., to discover all the kdb+ instances within your environment.

Documentation

📂 docs

Status

The prometheus-kdb-exporter interface is provided here under an Apache 2.0 license.

If you find issues with the interface or have feature requests please raise an issue.

To contribute to this project, please follow the contribution guide.