All Projects → blakelead → couchbase_exporter

blakelead / couchbase_exporter

Licence: other
Export metrics from Couchbase Server for Prometheus consumption

Programming Languages

go
31211 projects - #10 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to couchbase exporter

xenstats exporter
Prometheus exporter for xen (Storage, Host CPUs, Memory usage)
Stars: ✭ 20 (-37.5%)
Mutual labels:  exporter
couchmove
Java data migration tool for Couchbase
Stars: ✭ 36 (+12.5%)
Mutual labels:  couchbase
yoda
GitHub extension for agile project management, using the issues subsystem.
Stars: ✭ 86 (+168.75%)
Mutual labels:  exporter
yarn-prometheus-exporter
Export Hadoop YARN (resource-manager) metrics in prometheus format
Stars: ✭ 44 (+37.5%)
Mutual labels:  exporter
ox-ssh
SSH config export for org-mode
Stars: ✭ 33 (+3.13%)
Mutual labels:  exporter
genshin-audio-exporter
Export audio files from Genshin Impact game data into different audio formats.
Stars: ✭ 83 (+159.38%)
Mutual labels:  exporter
couchbase-java-importer
This is a pluggable importer for Couchbase
Stars: ✭ 13 (-59.37%)
Mutual labels:  couchbase
ping-exporter
Prometheus Ping exporter
Stars: ✭ 60 (+87.5%)
Mutual labels:  exporter
blendmaxwell
Maxwell Render exporter for Blender
Stars: ✭ 23 (-28.12%)
Mutual labels:  exporter
daru-io
daru-io is a plugin gem to the existing daru gem, which aims to add support to Importing DataFrames from / Exporting DataFrames to multiple formats.
Stars: ✭ 21 (-34.37%)
Mutual labels:  exporter
sidecache
Sidecar cache for kubernetes applications.
Stars: ✭ 38 (+18.75%)
Mutual labels:  couchbase
shelly-plug-prometheus
Shelly Plug Prometheus exporter.
Stars: ✭ 40 (+25%)
Mutual labels:  exporter
draftjs exporter
Library to convert Draft.js ContentState to HTML
Stars: ✭ 77 (+140.63%)
Mutual labels:  exporter
speedtest-exporter
Speedtest Exporter made in python using the official speedtest bin
Stars: ✭ 118 (+268.75%)
Mutual labels:  exporter
tracboat
Trac to GitLab migration toolbox
Stars: ✭ 32 (+0%)
Mutual labels:  exporter
lustre exporter
Prometheus exporter for use with the Lustre parallel filesystem
Stars: ✭ 25 (-21.87%)
Mutual labels:  exporter
network exporter
ICMP & MTR & TCP Port & HTTP Get - Network Prometheus exporter
Stars: ✭ 162 (+406.25%)
Mutual labels:  exporter
nvidia smi exporter
nvidia-smi exporter for Prometheus
Stars: ✭ 66 (+106.25%)
Mutual labels:  exporter
extractors
Data extractors for import demo-date to the api
Stars: ✭ 44 (+37.5%)
Mutual labels:  exporter
prometheus exporter base
Base library for Rust Prometheus exporters
Stars: ✭ 30 (-6.25%)
Mutual labels:  exporter

Couchbase Exporter

Build Status Coverage Status License

Expose metrics from Couchbase cluster for consumption by Prometheus.

News

Couchbase has released an official exporter: couchbase-exporter.

Getting Started

Run from command-line:

./couchbase_exporter [flags]

The exporter supports various configuration ways: command-line arguments takes precedence over environment variables that take precedence over configuration file.

Configuration file can be provided on the command line. It must be written in json or yaml. If none is provided using the command line --config.file option, it will look for a file named config.json or config.yml in the same directory that the exporter binary. You can find complete examples of configuation files in the sources (directory examples).

As for available flags and equivalent environment variables, here is a list:

environment variable argument description default
-config.file Configuration file to load data from
CB_EXPORTER_LISTEN_ADDR -web.listen-address Address to listen on for HTTP requests :9191
CB_EXPORTER_TELEMETRY_PATH -web.telemetry-path Path under which to expose metrics /metrics
CB_EXPORTER_SERVER_TIMEOUT -web.timeout Server read timeout in seconds 10s
CB_EXPORTER_DB_URI -db.uri Address of Couchbase cluster http://127.0.0.1:8091
CB_EXPORTER_DB_TIMEOUT -db.timeout Couchbase client timeout in seconds 10s
CB_EXPORTER_TLS_ENABLED -tls.enabled If true, enable TLS communication with the cluster false
CB_EXPORTER_TLS_SKIP_INSECURE -tls.skip-insecure If true, certificate won't be verified false
CB_EXPORTER_TLS_CA_CERT -tls.ca-cert Root certificate of the cluster
CB_EXPORTER_TLS_CLIENT_CERT -tls.client-cert Client certificate
CB_EXPORTER_TLS_CLIENT_KEY -tls.client-key Client private key
CB_EXPORTER_DB_USER not allowed Administrator username
CB_EXPORTER_DB_PASSWORD not allowed Administrator password
CB_EXPORTER_LOG_LEVEL -log.level Log level: info,debug,warn,error,fatal error
CB_EXPORTER_LOG_FORMAT -log.format Log format: text, json text
CB_EXPORTER_SCRAPE_CLUSTER -scrape.cluster If false, wont scrape cluster metrics true
CB_EXPORTER_SCRAPE_NODE -scrape.node If false, wont scrape node metrics true
CB_EXPORTER_SCRAPE_BUCKET -scrape.bucket If false, wont scrape bucket metrics true
CB_EXPORTER_SCRAPE_XDCR -scrape.xdcr If false, wont scrape xdcr metrics false
-help Command line help

Important: for security reasons credentials cannot be set with command line arguments.

Metrics

All metrics are listed in resources/metrics.md.

Docker

Use it like this:

docker run --name cbexporter -p 9191:9191 -e CB_EXPORTER_DB_USER=admin -e CB_EXPORTER_DB_PASSWORD=complicatedpassword blakelead/couchbase-exporter:latest

Examples

You can find example files in resources directory.

Prometheus

Some simple alerting rules: resources/prometheus-alerts.yaml.

Grafana

Minimal dashboard (resources/grafana-dashboard.json):

Systemd

You can adapt and use the provided service template to run the exporter with systemd (resources/couchbase-exporter.service):

sudo mv couchbase-exporter.service /etc/systemd/system/couchbase-exporter.service
sudo systemctl enable couchbase-exporter.service
sudo systemctl start couchbase-exporter.service

Contributors

Special thanks to:

  • @Berchiche
  • @bitdba88
  • @CharlesRaymond1
  • @pandrieux
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].