Commit Graph

9 Commits

Author SHA1 Message Date
beorn7 a9bdd32c71 Reduce allocations during fingerprinting.
Also, add a test to expose
https://github.com/prometheus/client_golang/issues/74 .

benchmark           old ns/op     new ns/op     delta
BenchmarkMetric     7034          6272          -10.83%

benchmark           old allocs     new allocs     delta
BenchmarkMetric     52             32             -38.46%

benchmark           old bytes     new bytes     delta
BenchmarkMetric     1976          1800          -8.91%
2015-02-12 15:28:31 +01:00
Bjoern Rabenstein d7f8eb1083 Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
Julius Volz c7779ab9ec Add COWMetric and do some code cleanups. 2014-12-12 20:57:05 +01:00
Julius Volz 87a585def8 Adjust various things required for the new storage backend.
- Change Fingerprints to be simple uint64s.
- Deal sensibly with missing metric names.
- Enable finer-grained time resolution.

Merge this concurrently with the merge of the new storage backend into
prometheus/prometheus.

Change-Id: Idd82f137aa0c4286df422c53ce3c62e0de285360
2014-11-24 19:56:40 +01:00
Bjoern Rabenstein 9da2fbcce3 Eliminate a number of style-guide violations.
Change-Id: Iedcd611e5c7ad24c84c004d8d6c551d1734e443c
2014-04-25 21:18:04 +02:00
Julius Volz 9b9a115f95 Add method to merge a LabelSet into a Metric with collision avoidance.
Colliding labels can happen e.g. when an exporter job is scraped and already
includes "job" labels for its samples in /metrics. In this case, a
collisionPrefix of "exporter_" is added to the colliding target labels, but the
specifics (the collision prefix) are managed by Prometheus, not the client
library.
2013-08-12 15:46:42 +02:00
Matt T. Proud 6b26678f98 Fix: Metric sorting comparators.
There was an oversight that resulted in indefinite recursion.
2013-06-22 13:28:15 +02:00
Julius Volz 2c8b7cc19b Update LabelSet and Metric String() methods from server. 2013-06-12 18:47:30 +02:00
Matt T. Proud 10dae5d108 Include relevant server model artifacts.
This commit introduces all relevant server-side artifacts such that the
Result streams can be used by external parties for one-off tools and
such.  This will ultimately better enable us to support additional
wireformats with much more ease.
2013-06-11 11:45:21 +02:00