GoogleCloudPlatform/opentelemetry-operations-js

Update resource detection mapping to be compliant with metric exporter spec

psx95 opened this issue · 4 comments

psx95 commented

For MR types cloud_run_revision and cloud_function, the metric exporter spec currently falls back to either generic_task or generic_node.

This is currently being violated here. These explicit mappings need to be removed in order to be compliant with the spec.

The resource detector is in a weird state because the upstream one is much older and needs to be updated to wrap this. This should probably happen before that.

After taking another look at the code, I believe we have the same behavior as Java already for the metrics exporter. It uses generic_task/generic_node for Cloud Run and Cloud Functions because includeUnsupportedResources is false

here

const resource = mapOtelResourceToMonitoredResource(
resourceMetrics.resource
);

Does that sound good @psx95?


However, for the Trace exporter we still send the old monitored resource as span labels (g.co/r/cloud_run_revision/... labels). I think we decided to no longer do that. I will send a PR to stop doing that.

psx95 commented

I see, I did not notice the flag variable.

It is fine in that case.

Thanks, I will send a PR in any event to stop sending cloud_run_revision and cloud_function unsupported MRs for the trace exporter, so this is in line with what Java and Go do.