Paul "LeoNerd" Evans
2938a00825
Rename the python-specific metrics now the docs claim that we have done
2016-11-03 17:03:52 +00:00
Paul "LeoNerd" Evans
1cc22da600
Set up the process collector during metrics __init__; that way all split-process workers have it
2016-10-27 18:09:34 +01:00
Paul "LeoNerd" Evans
ccc1a3d54d
Allow creation of a 'subspace' within a Metrics object, returning another one
2016-10-27 18:07:34 +01:00
Paul "LeoNerd" Evans
3ae48a1f99
Move the process metrics collector code into its own file
2016-10-19 18:10:24 +01:00
Paul "LeoNerd" Evans
4cedd53224
A slightly neater way to manage metric collector functions
2016-10-19 17:54:09 +01:00
Paul "LeoNerd" Evans
5663137e03
appease pep8
2016-10-19 16:09:42 +01:00
Paul "LeoNerd" Evans
b202531be6
Also guard /proc/self/fds-related code with a suitable psuedoconstant
2016-10-19 15:37:41 +01:00
Paul "LeoNerd" Evans
1b179455fc
Guard registration of process-wide metrics by existence of the requisite /proc entries
2016-10-19 15:34:38 +01:00
Paul "LeoNerd" Evans
981f852d54
Add standard process_start_time_seconds metric
2016-10-19 15:05:22 +01:00
Paul "LeoNerd" Evans
def63649df
Add standard process_max_fds metric
2016-10-19 15:05:21 +01:00
Paul "LeoNerd" Evans
06f1ad1625
Add standard process_open_fds metric
2016-10-19 15:05:21 +01:00
Paul "LeoNerd" Evans
95fc70216d
Add standard process_*_memory_bytes metrics
2016-10-19 15:05:21 +01:00
Paul "LeoNerd" Evans
9b0316c75a
Use /proc/self/stat to generate the new process_cpu_*_seconds_total metrics
2016-10-19 15:05:21 +01:00
Paul "LeoNerd" Evans
03c2720940
Export CPU usage metrics also under prometheus-standard metric name
2016-10-19 15:05:21 +01:00
Erik Johnston
7c1a92274c
Make psutil optional
2016-08-08 11:12:21 +01:00
Erik Johnston
66868119dc
Add metrics for psutil derived memory usage
2016-07-20 16:00:21 +01:00
Erik Johnston
0f2165ccf4
Don't track total objects as its too expensive to calculate
2016-06-07 17:00:45 +01:00
Erik Johnston
18f0cc7d99
Record some more GC metrics
2016-06-07 16:55:49 +01:00
Erik Johnston
48e65099b5
Also record number of unreachable objects
2016-06-07 13:40:22 +01:00
Erik Johnston
75331c5fca
Change the way we do stats
2016-06-07 13:33:13 +01:00
Erik Johnston
8c966fbd51
Merge pull request #771 from matrix-org/erikj/gc_tick
...
Manually run GC on reactor tick.
2016-06-07 13:18:36 +01:00
Erik Johnston
73c7112433
Change CacheMetrics to be quicker
...
We change it so that each cache has an individual CacheMetric, instead
of having one global CacheMetric. This means that when a cache tries to
increment a counter it does not need to go through so many indirections.
2016-06-03 11:26:52 +01:00
Erik Johnston
60d53f9e95
Count number of GC collects
2016-05-16 09:34:42 +01:00
Erik Johnston
7d6e89ed22
Add a comment
2016-05-13 16:31:08 +01:00
Erik Johnston
1f1dee94f6
Manually run GC on reactor tick.
...
This also adds a metric for amount of time spent in GC.
2016-05-09 10:13:25 +01:00
Matthew Hodgson
6c28ac260c
copyrights
2016-01-07 04:26:29 +00:00
Mark Haines
709ba99afd
Check that /proc/self/fd exists before listing it
2015-09-07 16:45:55 +01:00
Mark Haines
9e4dacd5e7
The maxrss reported by getrusage is in kilobytes, not pages
2015-09-07 16:45:48 +01:00
Erik Johnston
6e7d36a72c
Also check for presence of 'threadCallQueue' in reactor
2015-08-18 11:51:08 +01:00
Erik Johnston
d3da63f766
Use more helpful variable names
2015-08-18 11:47:00 +01:00
Erik Johnston
891dfd90bd
Fix pending_calls metric to not lie
2015-08-14 15:43:11 +01:00
Erik Johnston
a6c27de1aa
Don't time getDelayedCalls
2015-08-13 11:41:57 +01:00
Erik Johnston
ba5d34a832
Add some metrics about the reactor
2015-08-13 11:38:59 +01:00
Paul "LeoNerd" Evans
ef1e019840
Appease pep8
2015-04-01 19:17:38 +01:00
Paul "LeoNerd" Evans
5583e29513
Report process open filehandles in metrics
2015-04-01 19:15:23 +01:00
Paul "LeoNerd" Evans
05a056a409
Appease pyflakes
2015-03-12 16:45:05 +00:00
Paul "LeoNerd" Evans
128cf2daf7
Appease pep8
2015-03-12 16:24:51 +00:00
Paul "LeoNerd" Evans
2e4f0b2bd7
Replace the @metrics.counted annotations in federation with specifically-written counters and distributions
2015-03-12 16:24:51 +00:00
Paul "LeoNerd" Evans
493e3fa0ca
Don't forbid '_' in metric basenames any more, to allow things like foo_time
2015-03-12 16:24:51 +00:00
Paul "LeoNerd" Evans
f1fbe3e09f
Rename TimerMetric to DistributionMetric; as it could count more than just time
2015-03-12 16:24:51 +00:00
Paul "LeoNerd" Evans
4d661ec0f3
Remember to emit final linefeed from /metrics page, or Prometheus gets upset
2015-03-12 16:24:51 +00:00
Paul "LeoNerd" Evans
b0cf867319
Use _ instead of . as a metric namespacing separator, for Prometheus
2015-03-12 16:24:51 +00:00
Paul "LeoNerd" Evans
0b96bb793e
Have all @metrics.counted use a single metric name vectored on the method name, rather than a brand new scalar counter per counted method
2015-03-12 16:24:51 +00:00
Paul "LeoNerd" Evans
399689dcc7
Provide some process resource usage metrics
2015-03-12 16:24:51 +00:00
Paul "LeoNerd" Evans
f52acf3b12
Neater register_* methods on overall Metrics container
2015-03-12 16:24:50 +00:00
Paul "LeoNerd" Evans
8664599af7
Rename CacheCounterMetric to just CacheMetric; add a CallbackMetric component to give the size of the cache
2015-03-12 16:24:50 +00:00
Paul "LeoNerd" Evans
e02cc249da
Ensure that exceptions while rendering individual metrics don't stop others from being rendered anyway - especially useful for CallbackMetric
2015-03-12 16:24:50 +00:00
Paul "LeoNerd" Evans
d8caa5454d
Initial attempt at a scalar callback-based metric to give instantaneous snapshot gauges
2015-03-12 16:24:50 +00:00
Paul "LeoNerd" Evans
ce8b5769f7
Create the concept of a cachecounter metric; generating two counters specific to caches
2015-03-12 16:24:50 +00:00
Paul "LeoNerd" Evans
74bc42cfdd
An initial implementation of a 'metrics' instance, similar to a 'logger' for keeping counter stats on method calls
2015-03-12 16:24:50 +00:00