You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, the project has the following modules/folders related to network attributes:
Network Change Instrumentation Module - Hosts files related to the instrumentation itself (instrumenter creation, attribute extraction, registering network change listener in CurrentNetworkProvider service etc)
CurrentNetworkProvider Service (folder in services module)- Hosts files related to the service that keeps track of the CurrentNetwork and notifies all listeners onNetworkchange.
NetworkAttributesSpanAppender (folder in core module) - Internal to opentelemetry-android. Provides a custom span processor for adding network attributes to all spans.
The above division of separate work in separate folders/modules makes sense and is also needed to have a clean dependency graph among them all. There are a few minor things I think we should refactor to make it more readable/usable:
Rename instrumentation module to something better than what it currently is - "network". It can be confused for network request interception. Can we rename it to something like - "networkchange"?
Can we drop "internal/features" or just drop "features" if we still want to keep it internal from /common/main/java/io/opentelemetry/android/common/internal/features/networkattributes/?
Extract NetworkAttributesSpanAppender and all other span processors like ScreenAttributesSpanProcessor, SessionIdSpanAppender and GlobalAtributesSpanAppender in their own module to allow for reusability? (Contrary to the span processors, all log processors do have a house at a single place. They can perhaps be extracted in the same new module or a separate one for them?)
Currently, the project has the following modules/folders related to network attributes:
The above division of separate work in separate folders/modules makes sense and is also needed to have a clean dependency graph among them all. There are a few minor things I think we should refactor to make it more readable/usable:
"network"
. It can be confused for network request interception. Can we rename it to something like -"networkchange"
?"internal/features"
or just drop"features"
if we still want to keep it internal from/common/main/java/io/opentelemetry/android/common/internal/features/networkattributes/
?NetworkAttributesSpanAppender
and all other span processors like ScreenAttributesSpanProcessor,SessionIdSpanAppender
andGlobalAtributesSpanAppender
in their own module to allow for reusability? (Contrary to the span processors, all log processors do have a house at a single place. They can perhaps be extracted in the same new module or a separate one for them?)The text was updated successfully, but these errors were encountered: