Whenever the real limits values are not available, the default values are used as a fallback
The count of dropped attributes due to number of attributes exceeding AttributeCountLimit is incremented with every attempt to add an attribute over limit
The count of dropped attributes that are dropped due to the name length exceeding the limit is calculated when the span is converted to json. The two counts are then added and set as the total droppedAttributesCount for a span. Thanks of that, calling toJson() multiple times on the same span will yield the same result every time.
Changeset
Added setAttribute method to BugsnagPerformanceSpan
Added onSpanEnd callbacks
Ensured span immutability after the span was closed
Added Lists of primitives to supported attribute types
Implemented non-configurable attribute name length limit and configurable limits: AttributeStringValueLimit, AttributeArrayLengthLimit, AttributeCountLimit
Goal
Allow users to add custom span attributes.
Design
Changeset
Testing
E2E Tests