Matt T. Proud
c10780c966
Introduce telemetry for rule evaluator durations.
...
This commit adds telemetry for the Prometheus expression rule
evaluator, which will enable meta-Prometheus monitoring of customers
to ensure that no instance is falling behind in answering routine
queries.
A few other sundry simplifications are introduced, too.
2013-05-23 21:29:27 +02:00
Johannes 'fish' Ziemke
8507c58bf2
Fix filename in Makefile.
2013-05-23 16:54:21 +02:00
Matt T. Proud
fe5c70fc61
Merge pull request #270 from prometheus/fix/expression/index-error
...
Revert "Ensure that all extracted samples are added to view."
2013-05-23 06:27:27 -07:00
Matt T. Proud
4b30fb86b4
Revert "Ensure that all extracted samples are added to view."
...
This reverts commit 008314b5a8
. By
running an automated git bisection described in
https://gist.github.com/matttproud-soundcloud/22a371a8d2cba382ea64
this commit was found.
2013-05-23 13:36:22 +02:00
Matt T. Proud
9553971239
Merge pull request #267 from prometheus/fix/delta-boundaries
...
Use GetBoundaryValues() for non-counter deltas.
2013-05-22 10:23:54 -07:00
Julius Volz
750f862d9a
Use GetBoundaryValues() for non-counter deltas.
2013-05-22 19:13:47 +02:00
juliusv
cc07b9ce74
Merge pull request #268 from prometheus/fix/value-extraction
...
Interval value extraction fixes and optimizations.
2013-05-22 09:24:46 -07:00
Julius Volz
f2b48b8c4a
Make getValuesAtIntervalOp consume all chunk data in one pass.
...
This is mainly a small performance improvement, since we skip past the last
extracted time immediately if it was also the last sample in the chunk, instead
of trying to extract non-existent values before the chunk end again and again
and only gradually approaching the end of the chunk.
2013-05-22 18:14:45 +02:00
Julius Volz
83d60bed89
extractValuesAroundTime() code simplification.
2013-05-22 18:14:45 +02:00
Julius Volz
008314b5a8
Ensure that all extracted samples are added to view.
...
The current behavior only adds those samples to the view that are extracted by
the last pass of the last processed op and throws other ones away. This is a
bug. We need to append all samples that are extracted by each op pass.
This also makes view.appendSamples() take an array of samples.
2013-05-22 18:14:37 +02:00
Matt T. Proud
556be84c73
Merge pull request #265 from prometheus/feature/memory-arena-simplification
...
Move In-Memory Arena Away from Skiplist
2013-05-22 09:10:52 -07:00
Matt T. Proud
93da3f684a
Instruct ``make binary`` to build binary file.
2013-05-22 17:59:53 +02:00
Matt T. Proud
b586801830
Code Review: Fix to-disk queue infinite growth.
...
We discovered a bug while manually testing this branch on a live
instance, whereby the to-disk queue was never actually dumped to
disk.
2013-05-22 17:59:53 +02:00
Matt T. Proud
285a8b701b
Code Review: Extend lock.
2013-05-22 17:59:53 +02:00
Matt T. Proud
2526ab8c81
Code Review: Extend lock scope for appending.
2013-05-22 17:59:53 +02:00
Matt T. Proud
f994482d15
Code Review: Avenues for future improvemnet noted.
2013-05-22 17:59:53 +02:00
Matt T. Proud
298a90c143
Code Review: Initial arena size name.
2013-05-22 17:59:53 +02:00
Matt T. Proud
c07abf8521
Initial move away from skiplist.
2013-05-22 17:59:53 +02:00
Matt T. Proud
d8259cd10d
Merge pull request #266 from prometheus/tool/dumper
...
Simple LevelDB sample dumper tool.
2013-05-22 07:18:53 -07:00
Julius Volz
6d68626125
Simple LevelDB sample dumper tool.
...
This very simple tool dumps all samples in a LevelDB metrics storage
together with their chunk information. This is very crude for now - I
just whipped it up because I needed to debug something. We should add
printf-style formatting support for it in the future to indicate what
information to output for each sample in the database. We could also
support inspecting the index databases.
2013-05-22 16:12:39 +02:00
Matt T. Proud
39a3e69779
Merge pull request #263 from prometheus/ui/negative-graph-values
...
Support negative graph values.
2013-05-21 07:59:52 -07:00
Julius Volz
8586c7520c
Support negative graph values.
...
Currently graph Y-Axes were hardcoded to start at 0. Choose the Y-scale
automatically based on the graph data instead.
2013-05-21 16:54:33 +02:00
juliusv
1958063cc7
Merge pull request #262 from prometheus/feature/storage/fix-grouping
...
Spawn grouping of fingerprints with free semaphore.
2013-05-21 07:17:51 -07:00
Matt T. Proud
74a66fd938
Spawn grouping of fingerprints with free semaphore.
...
The previous implementation spawned N goroutines to group samples
together and would not start work until the semaphore unblocked.
While this didn't leak, it polluted the scheduling space. Thusly,
the routine only starts after a semaphore has been acquired.
2013-05-21 16:11:35 +02:00
Matt T. Proud
053f4296d0
Merge pull request #260 from prometheus/feature/show-scrape-errors
...
Remember and display last scrape errors in web UI.
2013-05-21 06:40:39 -07:00
Julius Volz
081191afb8
Remember and display last scrape errors in web UI.
2013-05-21 15:31:27 +02:00
Matt T. Proud
32c3510e66
Merge pull request #259 from prometheus/optimize/fingerprinting-time
...
Optimize fingerprinting time and repointerize fingerprint usage
2013-05-21 05:44:33 -07:00
Julius Volz
5b105c77fc
Repointerize fingerprints.
2013-05-21 14:28:14 +02:00
Julius Volz
259a0ea467
Optimize fingerprint comparison time.
2013-05-21 14:00:52 +02:00
Matt T. Proud
da0257bb0e
Merge pull request #258 from prometheus/feature/fingerprint-indexing
...
Benchmark memory arena; simplify map generation.
2013-05-21 00:50:36 -07:00
Matt T. Proud
ec5b5bae28
Fuck you, Travis.
2013-05-21 09:42:00 +02:00
Matt T. Proud
e5ac91222b
Benchmark memory arena; simplify map generation.
...
The one-off keys have been replaced with ``model.LabelPair``, which is
indexable. The performance impact is negligible, but it represents
a cognitive simplification.
2013-05-21 09:39:12 +02:00
juliusv
360477f66c
Merge pull request #257 from prometheus/feature/better-memory-behaviors
...
Pointerize memorySeriesArena.
2013-05-16 07:36:40 -07:00
Matt T. Proud
e1f20de2e9
Pointerize memorySeriesArena.
2013-05-16 17:09:28 +03:00
juliusv
e5d077e146
Merge pull request #254 from prometheus/feature/refactor/serialization
...
Several Refactorings: Simplified Encoder / Reduction of Naked Return Values
2013-05-16 07:01:27 -07:00
Matt T. Proud
8f4c7ece92
Destroy naked returns in half of corpus.
...
The use of naked return values is frowned upon. This is the first
of two bulk updates to remove them.
2013-05-16 10:53:25 +03:00
Matt T. Proud
4e0c932a4f
Simplify Encoder's encoding signature.
...
The reality is that if we ever try to encode a Protocol Buffer and it
fails, it's likely that such an error is ultimately not a runtime error
and should be fixed forthwith. Thusly, we should rename
``Encoder.Encode`` to ``Encoder.MustEncode`` and drop the error return
value.
2013-05-16 00:54:18 +03:00
juliusv
e54edb16a5
Merge pull request #252 from prometheus/feature/larger-in-memory-arena
...
Expand the in-memory arena size.
2013-05-14 09:00:56 -07:00
Matt T. Proud
b063338ae6
Expand the in-memory arena size.
...
We need to exercise this code path sooner versus later. This will
be a cheap way of doing so.
2013-05-14 17:59:52 +02:00
juliusv
516101f015
Merge pull request #250 from prometheus/refactor/drop-unused-storage-setting
...
Drop unused writeMemoryInterval
2013-05-14 08:45:59 -07:00
juliusv
9ff00b651d
Merge pull request #251 from prometheus/fix/memory-metric-mutability
...
Fix GetMetricForFingerprint() metric mutability.
2013-05-14 08:12:45 -07:00
Bernerd Schaefer
63d9988b9c
Drop unused writeMemoryInterval
2013-05-14 17:03:03 +02:00
Bernerd Schaefer
aa96c7d141
Fix rules_test.go
...
This is smelly, but for now we copy a helper method from the metric
tests into rules.
2013-05-14 16:55:18 +02:00
Julius Volz
83c60ad43a
Fix GetMetricForFingerprint() metric mutability.
...
Some users of GetMetricForFingerprint() end up modifying the returned metric
labelset. Since the memory storage's implementation of
GetMetricForFingerprint() returned a pointer to the metric (and maps are
reference types anyways), the external mutation propagated back into the memory
storage.
The fix is to make a copy of the metric before returning it.
2013-05-14 16:46:30 +02:00
Matt T. Proud
dab017e8cf
Merge pull request #249 from prometheus/fix/test-flag-pollution
...
Rename test helper files to helpers_test.go
2013-05-14 07:33:03 -07:00
Bernerd Schaefer
428d91c86f
Rename test helper files to helpers_test.go
...
This ensures that these files are properly included only in testing.
2013-05-14 16:30:47 +02:00
juliusv
98e512d755
Merge pull request #246 from prometheus/fix/interval-value-extraction
...
Fix and optimize getValuesAtIntervalOp data extraction.
2013-05-14 05:55:22 -07:00
Matt T. Proud
23a85654c7
Merge pull request #247 from prometheus/feature/database-statistics-exposition
...
Include forgotten databases.html.
2013-05-14 05:54:32 -07:00
Matt T. Proud
1a95406b81
Include forgotten databases.html.
2013-05-14 14:50:54 +02:00
Matt T. Proud
9a8fb58fa6
Merge pull request #245 from prometheus/feature/runtime/go1.1
...
¡ DONOTMERGE — Update to go1.1. !
2013-05-14 05:37:18 -07:00