timeseries RUM-13949: Add CPU timeseries data-point reader and serializer#3433
Draft
satween wants to merge 4 commits into
Conversation
3 tasks
Contributor
Author
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
This was referenced May 12, 2026
timeseries RUM-13949: Add CPU timeseries data-point reader and serializer
4406481 to
3c4b02d
Compare
cacd357 to
1a6f200
Compare
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## tvaleev/feature/RUM-13949/timeseries-pipeline-infrastructure #3433 +/- ##
================================================================================================
- Coverage 72.12% 72.11% -0.00%
================================================================================================
Files 969 971 +2
Lines 35515 35588 +73
Branches 5905 5920 +15
================================================================================================
+ Hits 25613 25664 +51
- Misses 8282 8286 +4
- Partials 1620 1638 +18
🚀 New features to boost your workflow:
|
1a6f200 to
7bb00bc
Compare
3c4b02d to
98b83f2
Compare
7bb00bc to
f1063fa
Compare
118d5ec to
431b419
Compare
This comment has been minimized.
This comment has been minimized.
2b03f75 to
5e8be62
Compare
### What does this PR do? Adds `CpuDatapointReader`, which reads CPU-usage metrics from the existing `CpuVitalReader` vital and wraps them as `DataPoint` values; and `CpuEventSerializer`, which converts a batch of CPU `DataPoint`s into a `RumTimeseriesCpuEvent` JSON object ready for ingestion. ### Motivation Implements CPU metric collection as the first concrete timeseries type, exercising the pipeline infrastructure introduced in the previous commit. ### Additional Notes `CpuDatapointReader` normalises the raw MHz value to a 0–100 percent scale and clamps it with `coerceIn`. `CpuEventSerializer` maps `RumSessionType` to `RumTimeseriesCpuEvent.Session.Type` via the `toTimeseriesCpuSessionType()` extension. Both classes are fully covered by unit tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
fa10624 to
5968d81
Compare
5e8be62 to
558a3fa
Compare
…ions Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

What does this PR do?
Adds
CpuDatapointReader, which reads CPU-usage metrics from the existingCpuVitalReadervital and wraps them asDataPointvalues; andCpuEventSerializer, which converts a batch of CPUDataPoints into aRumTimeseriesCpuEventJSON object ready for ingestion.Motivation
Implements CPU metric collection as the first concrete timeseries type, exercising the pipeline infrastructure introduced in the previous commit.
Review checklist (to be filled by reviewers)