Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/prometheus/client_model
Data model artifacts for Prometheus.
https://github.com/prometheus/client_model
Last synced: about 1 month ago
JSON representation
Data model artifacts for Prometheus.
- Host: GitHub
- URL: https://github.com/prometheus/client_model
- Owner: prometheus
- License: apache-2.0
- Created: 2013-05-27T18:20:43.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2024-10-08T15:30:25.000Z (2 months ago)
- Last Synced: 2024-10-29T20:32:03.437Z (about 2 months ago)
- Language: Makefile
- Homepage: http://prometheus.io
- Size: 254 KB
- Stars: 74
- Watchers: 12
- Forks: 74
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-ccamel - prometheus/client_model - Data model artifacts for Prometheus. (Makefile)
README
_(If you are reading this because you are interested in Prometheus's native
histograms, pay special attention to the last paragraph below.)_# Deprecation note
This repository used to contain the [protocol
buffer](https://developers.google.com/protocol-buffers) code that defined both
the data model and the exposition format of Prometheus metrics.Starting with v2.0.0, the [Prometheus
server](https://github.com/prometheus/prometheus) does not ingest the
protobuf-based exposition format anymore. Currently, all but one of the
[official instrumentation
libraries](https://prometheus.io/docs/instrumenting/clientlibs/) do not expose
the protobuf-based exposition format. The [Go instrumentation
library](https://github.com/prometheus/client_golang), however, has been built
around the protobuf-based data model. As a byproduct thereof, it is still able
to expose the protobuf-based exposition format. The Go instrumentation library
is the only remaining repository within the [Prometheus GitHub
org](https://github.com/prometheus) directly using the prometheus/client_model
repository.Therefore, formerly existing support for languages other than Go (namely C++,
Java, Python, Ruby) has been removed from this repository. If you are a 3rd
party user of those languages, you can go back to [commit
14fe0d1](https://github.com/prometheus/client_model/commit/14fe0d1b01d4d5fc031dd4bec1823bd3ebbe8016)
to keep using the old code, or you can consume
[`metrics.proto`](https://github.com/prometheus/client_model/blob/master/metrics.proto)
directly with your own protobuf tooling. Note, however, that changes of
`metrics.proto` after [commit
14fe0d1](https://github.com/prometheus/client_model/commit/14fe0d1b01d4d5fc031dd4bec1823bd3ebbe8016)
are solely informed by requirements of the Go instrumentation library and will
not take into account any requirements of other languages or stability concerns
for the protobuf-based exposition format.Check out the [OpenMetrics project](https://openmetrics.io/) for the future of
the data model and exposition format used by Prometheus and others.Note, though, that in an ironic twist of fate, the protobuf-based exposition
format got revived to ease the implementation of experimental support for
native histograms in Prometheus. Therefore, starting with v2.40.0, the
Prometheus server is again capable of ingesting the protobuf-based exposition
format (if the respective feature flag is enabled). Eventually, native
histogram support will be added in some form to OpenMetrics, too.