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 deno_telemetry extension is not very programmable for custom runtimes, and relies on some global statics that would conflict with them running on different threads at the same time.
The shared runtime for handling the async tasks is fine, but the global state for each exporter instance is an issue. Ideally, multiple runtimes should be able to initialize at the same time and export to different OTLP endpoints.
As far as I can tell, this can be solved by doing two things:
Move global static state to object(s) stored and initialized directly in the extension, allowing for concurrent custom runtimes
Move all environment variable configuration into a typed config struct, and include a from_env method that deno_runtime can use. This allows for custom runtimes to create the configuration however needed, or easily fallback to how deno itself will populate the values. It would be nice to just use the extension config pattern to take it as an input argument when binding the extension
The text was updated successfully, but these errors were encountered:
Currently the deno_telemetry extension is not very programmable for custom runtimes, and relies on some global statics that would conflict with them running on different threads at the same time.
The shared runtime for handling the async tasks is fine, but the global state for each exporter instance is an issue. Ideally, multiple runtimes should be able to initialize at the same time and export to different OTLP endpoints.
As far as I can tell, this can be solved by doing two things:
The text was updated successfully, but these errors were encountered: