mirror of
https://github.com/prometheus/prometheus.git
synced 2025-03-05 20:59:13 -08:00
It is the case with the benchmark tool that we thought that we generated multiple series and saved them to the disk as such, when in reality, we overwrote the fields of the outgoing metrics via Go map reference behavior. This was accidental. In the course of diagnosing this, a few errors were found: 1. ``newSeriesFrontier`` should check to see if the candidate fingerprint is within the given domain of the ``diskFrontier``. If not, as the contract in the docstring stipulates, a ``nil`` ``seriesFrontier`` should be emitted. 2. In the interests of aiding debugging, the raw LevelDB ``levigoIterator`` type now includes a helpful forensics ``String()`` method. This work produced additional cleanups: 1. ``Close() error`` with the storage stack is technically incorrect, since nowhere in the bowels of it does an error actually occur. The interface has been simplified to remove this for now. |
||
---|---|---|
appstate | ||
coding | ||
config | ||
documentation | ||
model | ||
retrieval | ||
rules | ||
storage | ||
utility | ||
web | ||
.gitignore | ||
.travis.yml | ||
CONTRIBUTORS.md | ||
LICENSE | ||
main.go | ||
Makefile | ||
Makefile.TRAVIS | ||
README.md |
Prometheus
Bedecke deinen Himmel, Zeus! A new kid is in town.
Prometheus is a generic time series collection and computation server that is useful in the following fields:
- Industrial Experimentation / Real-Time Behavioral Validation / Software Release Qualification
- Econometric and Natural Sciences
- Operational Concerns and Monitoring
The system is designed to collect telemetry from named targets on given intervals, evaluate rule expressions, display the results, and trigger an action if some condition is observed to be true.
Prerequisites
- Go 1.0.X. GVM is highly recommended as well.
- LevelDB: (https://code.google.com/p/leveldb/).
- Protocol Buffers Compiler: (http://code.google.com/p/protobuf/).
- goprotobuf: the code generator and runtime library: (http://code.google.com/p/goprotobuf/).
- Levigo, a Go-wrapper around LevelDB's C library: (https://github.com/jmhodges/levigo).
- GoRest, a RESTful style web-services framework: (http://code.google.com/p/gorest/).
- Prometheus Client, Prometheus in Prometheus (https://github.com/prometheus/client_golang).
- Snappy, a compression library for LevelDB and Levigo (http://code.google.com/p/snappy/).
Getting Started
For basic help how to get started:
- The source code is periodically indexed: Prometheus Core.
- For Linux users, please consult the Travis CI configuration in .travis.yml and Makefile.TRAVIS.
- Getting started on Mac OSX
- All of the core developers are accessible via the Prometheus Developers Mailinglist.
Testing
License
Apache License 2.0