fix: Correct worker metrics to provide metrics across all dimensions #136
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.
We currently have
datetime
andstatus
as dimensions for the CloudFlare Worker invocation metrics GraphQL query.This causes CloudFlare workers to output a number of datapoints for each unique tuple of dimensions, i.e. across several
datetime
s andstatus
es.For worker requests and errors this is fine as we
.Add(...)
to those counters, but for quantiles we use.Set(...)
which causes us to only export the last datapoint quantiles, which may not representative of the entire dataset.Removing the
datetime
for the query provides pre-aggregated datapoints for us to process.Further to this,
datetime
is not currently being captured in the response data structure.status
is a useful dimension to disambiguate internal errors and the impact on performance across them. This change addsstatus
to all of the worker metrics exported to reflect that, and to ensure we're not only using a single datapoint.