prompt

command module
v0.0.0-...-5f09ad6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 26, 2016 License: MIT Imports: 17 Imported by: 0

README

Prompt

Prompt is an exporter for Prometheus that spawns a set of registered exporters on demand as subprocesses.

It exposes two endpoints:

  • /metrics will spawn all exporters concurrently and return their results as a single text document.
  • /metrics/<name> will spawn a single exporter.

A subprocess is expected to write the Prometheus text file format to standard output. If a subprocess fails, its output is not included in the merged output.

Installation

$ go get github.com/atombender/prompt

Configuration

Example YAML configuration:

exporters:
- name: elasticsearch
  command: /opt/exporters/elasticsearch localhost:9200
  minInterval: 10

The minInterval specifies an optional interval during which the output will be cached in memory. This allows per-command caching without requiring that scrapeInterval be tuned centrally in the Prometheus configuration.

The command is wrapped with sh -c "<command>" and will inherit the environment and user context of the parent process. It's recommended that you use sudo -u nobody or similar whenever possible.

Running

Example invocation:

$ prompt -l localhost:9100 -c prompt.conf

The -c option can be specified multiple times, and supports directories: -c conf.d will read all .conf files inside that directory.

To daemonize, run using a process manager such as Systemd, Upstart, Debian's start-stop-process or similar.

License

MIT license. See the LICENSE file.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL