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
AFAICT, Shutdown isn't being called for the otel exporters or any of the providers in the observability client. This can lead to collected telemetry data getting dropped on the ground because it doesn't get flushed before shutting down.
Each otel provider and exporter has a Shutdown method (e.g. docs for metrics exporter's shutdown). We just need to call Shutdown on all of them. might make sense to surface an observability.Shutdown method that takes care of calling Shutdown on all of the underlying exporters and providers.
I'm guessing we have to call Shutdown on all of them vs. just the Exporter, because from what i can tell, the providers flush to the exporter's internal cache and the exporter flushes to wherever it's been configured to export to
The text was updated successfully, but these errors were encountered:
This makes me think it might be nice to have some Shutdown functions in controller and runner to allow us to clean up/gracefully shutdown. I'm guessing these could be implemented as counterparts to the Start functions we have for each now. @alecthomas is there a typical way this should be handled?
Repro
just otel-stream
just otel-dev
echo.Echo
Potential Fix
AFAICT,
Shutdown
isn't being called for the otel exporters or any of the providers in the observability client. This can lead to collected telemetry data getting dropped on the ground because it doesn't get flushed before shutting down.Each otel provider and exporter has a
Shutdown
method (e.g. docs for metrics exporter's shutdown). We just need to callShutdown
on all of them. might make sense to surface anobservability.Shutdown
method that takes care of callingShutdown
on all of the underlying exporters and providers.I'm guessing we have to call
Shutdown
on all of them vs. just theExporter
, because from what i can tell, the providers flush to the exporter's internal cache and the exporter flushes to wherever it's been configured to export toThe text was updated successfully, but these errors were encountered: