-
Notifications
You must be signed in to change notification settings - Fork 165
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Enviroment Variables to process registry schema #672
Comments
I believe so, we have a few other examples like this, and semconv tooling already supports
Probably the easiest is to make these attributes Opt-In (also can see HTTP headers for example) |
Thanks for bringing this discussion out of the PR, for completeness here is the part of the comment I made about having a similar format as the HTTP headers: | `process.environment_variable.<key>` | string | Process environment variables, `<key>` being the environment variable name, the value being the environment variable value. | `proccess.environment_variable.PATH="/usr/local/bin;/usr/bin"`; `process.environment_variable.USER="ubuntu"` |
Looking into the (https://pubs.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap08.html) you quoted, it seems the following sentence has relevance as well:
IEEE 1003.1 is POSIX, and the portable character set, is a set of 103 characters, see also this source. So this shouldn't be a concern, additionally attribute naming specification states that every name MUST be a valid Unicode sequence., which should help even if any system operates outside of POSIX/portable character set.
+1 for this, by having that format |
FYI @open-telemetry/semconv-system-approvers |
Environment variables are an important part of process data models, and they should be added to the process registry schema.
process.env_vars
was previously part of #564, and was removed because there are some open discussion items that should be decided before being added to the schema.Some of these questions to resolve are:
Although this suggestion could have advantages, I'm not sure if it's possible. According to the Open Group standard, environment variable names
names shall not contain the character '='
(ref), but have no other exclusions, so extended character sets, symbols, etc are valid as part of environment variable names. I'm not sure if this works with OTel key names.One alternative to using freeform keys is to store environment variables as a string array, such as this
Environment variables could contain sensitive information, such as API keys, and this information should be redacted to prevent security problems. It should be decided if filtering is required (using
MUST
) or recommended (usingSHOULD
).The text was updated successfully, but these errors were encountered: