Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/couchbaselabs/cmos-prometheus-exporter

Prometheus exporter for the Couchbase Monitoring and Observability Stack
https://github.com/couchbaselabs/cmos-prometheus-exporter

Last synced: 2 days ago
JSON representation

Prometheus exporter for the Couchbase Monitoring and Observability Stack

Awesome Lists containing this project

README

        

# CMOS Prometheus Exporter

This is an **experimental** Prometheus exporter for Couchbase Server.

## Motivation

Couchbase Server 7.0 adds a built-in Prometheus statistics system for [gathering stats](https://docs.couchbase.com/server/current/learn/security/roles.html#external-stats-reader) from a Couchbase Server instance. CMOS Prometheus Exporter is an experiment to determine whether it is possible to create an exporter for Couchbase Server 6.x (and possibly below) exposing the metrics in the same format as 7.x does.

## Supported Metrics

- [x] KV
- [x] Indexing
- [x] Query
- [x] Search
- [x] Eventing
- [ ] Analytics
- [x] XDCR
- Only supported when running on the node being monitored (`host: localhost`)
- [x] System

## Installation

Build it from source using [Go](https://golang.org/doc/install). To run it, clone this repository and run `go run ./cmd/cmos-exporter/main.go`.

## Configuration

The exporter is configured using a `cmos-exporter.yml` file. The configuration options are enumerated in [`pkg/config/config.go`](pkg/config/config.go).

```yaml
couchbase_host: 10.112.208.101 # IP address or hostname of the Couchbase Server instance
couchbase_username: Administrator # Username
couchbase_password: password # Password
bind: 0.0.0.0:9091 # host:port to bind the HTTP server on
fake_collections: true # whether to add `scope` and `collection` labels (with a value of `_default`) to all metrics that have them in 7.x
```