[feature request] [Exporter.Geneva] Handle all-numeric attribute names without corruption #2717
Labels
comp:exporter.geneva
Things related to OpenTelemetry.Exporter.Geneva
enhancement
New feature or request
Component
OpenTelemetry.Exporter.Geneva
Is your feature request related to a problem?
Yes:
We've recently migrated over to using OpenTelemetry/Geneva Exporter in Linux containers from a much older system using MonAgent in windows containers. We started seeing periods in our logs where DGREP reported "Found corrupted logs in storage", making logs during those times unavailable.
After a lengthy investigation we discovered that one of the external components was using positional parameters in the ILogger format string instead of named parameters. For example
This caused the attributes to be named "0", "1", "2", etc. When attributes with these names are sent to Geneva, they cause the "Found corrupted logs in storage" message for the entire block of logs in the blob.
I wrote a Processor that will rename any attributes who's name can convert to an int to a standard alpha-numeric name, so we have a workaround, but it would be great if the Geneva Exporter could do one of the following:
Totally open to other ideas as well
What is the expected behavior?
Numeric attribute names don't cause the 'Found corrupted logs in storage"
Which alternative solutions or features have you considered?
I've built a custom otel Processor that renames the attributes when they are convertible to an int.
This works for us, but trying to troubleshoot this issue was very time consuming and it would be helpful to other users to either have not be a problem or to warn them what is going on.
Additional context
No response
The text was updated successfully, but these errors were encountered: