Support explicit monitored resource for Metrics #299
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.
This PR adds the option to pass in a MonitoredResource object when creating an exporter instance, which is then used for all export calls. If not passed, it will fallback to the current behavior of parsing a resource out of the Otel Resource object
The main intention is to allow users to pass in additional monitored_resource types, but it also has performance benefits, using a cached object instead of re-constructing it from scratch for each metric.
It may also make sense to make changes to gcp_resource_detector.get_monitored_resource to parse arbitrary monitored resource types out of the Otel Resource, but I left that off for now for simplicity.
If this change seems reasonable, I can add tests
Fixes #298