Currently our configurations are spread all over. Some environment variables are read directly by the components and some are ready by the SDK package. This also does not set us up well for file-based configuration which should be coming around the corner, and now is a good time to prepare for that.
I propose creating a separate component for configuration management which handles reading configurations (from environment variables, direct user input, and eventually configuration files), and outputs a config object for consumption by components. For the SDK I believe this will be fairly straightforward, but we should also consider instrumentations which currently have no direct dependence on the SDK.
Currently our configurations are spread all over. Some environment variables are read directly by the components and some are ready by the SDK package. This also does not set us up well for file-based configuration which should be coming around the corner, and now is a good time to prepare for that.
I propose creating a separate component for configuration management which handles reading configurations (from environment variables, direct user input, and eventually configuration files), and outputs a config object for consumption by components. For the SDK I believe this will be fairly straightforward, but we should also consider instrumentations which currently have no direct dependence on the SDK.