Skip to content
This repository has been archived by the owner on Jul 19, 2023. It is now read-only.

Multi-value counter support plus bug fixes. #14

Merged
merged 1 commit into from
Apr 3, 2019

Conversation

bismarck
Copy link
Contributor

@bismarck bismarck commented Apr 2, 2019

This PR adds support for multi-value counter. _max is being appended to metrics that are derived from base counter types (making them unique). Counter types are also being explicitly mapped to prometheus metric types. Finally, limiting which counter types are being exposed as metrics (e.g. it doesn't make sense to expose counter types like PERF_AVERAGE_BULK ). This addresses issues #1, #10.

This PR also fixes the following bug:

Unfortunately, I had to comment out the label merging code because it causes a panic when the 230 (Process) object is enabled (see #7).

I'm currently running this across ~600 Windows nodes, a mix of Windows Server 2016 and 2019.

@leoluk
Copy link
Owner

leoluk commented Apr 3, 2019

Thanks! This is awesome.

Removing label merging is reasonable, it was a WIP.

@leoluk leoluk merged commit 50015b8 into leoluk:master Apr 3, 2019
leoluk pushed a commit that referenced this pull request Apr 3, 2019
This PR adds support for multi-value counter.  `_max` is being appended to metrics that are derived from base counter types (making them unique).  Counter types are also being explicitly mapped to prometheus metric types.  Finally, limiting which counter types are being exposed as metrics (e.g. it doesn't make sense to expose counter types like `PERF_AVERAGE_BULK` ).  This addresses issues #1, #10.

This PR also fixes the following bug:
- `perflib_system_system_up_time` converted to UNIX time (fixes #6)
- Single instance counters should not have labels
- Remove commas when mangling metric names
- Remove `Total` instances

Unfortunately, I had to comment out the label merging code because it causes a panic when the 230 (Process) object is enabled (see #7).

I'm currently running this across ~600 Windows nodes, a mix of Windows Server 2016 and 2019.
leoluk pushed a commit that referenced this pull request Apr 3, 2019
This PR adds support for multi-value counter.  `_max` is being appended to metrics that are derived from base counter types (making them unique).  Counter types are also being explicitly mapped to prometheus metric types.  Finally, limiting which counter types are being exposed as metrics (e.g. it doesn't make sense to expose counter types like `PERF_AVERAGE_BULK` ).  This addresses issues #1, #10.

This PR also fixes the following bug:
- `perflib_system_system_up_time` converted to UNIX time (fixes #6)
- Single instance counters should not have labels
- Remove commas when mangling metric names
- Remove `Total` instances

Unfortunately, I had to comment out the label merging code because it causes a panic when the 230 (Process) object is enabled (see #7).

I'm currently running this across ~600 Windows nodes, a mix of Windows Server 2016 and 2019.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

perflib_system_system_up_time_total vs \System\System Up Time value
2 participants