Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Shutting down a MeterProvider with a asynchronous instrument can take a long time

Abierto
#131 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
45/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
matlab

Línea de trabajo

Start by running the supplied MATLAB loop and compare shutdown timing for the observable gauge and synchronous counter. Inspect the MeterProvider creation and opentelemetry.sdk.common.Cleanup.shutdown path, then review the asynchronous example in test/texamples.m. Done means asynchronous shutdown no longer intermittently takes about 30 seconds and the example test no longer needs filtering.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Run the following code in a loop. Many iterations take only about 0.01 seconds to run but some can take a long time (~30 seconds).

function out = currentsecond()
% callback function for an observable gauge

dt = datetime("now");
s = second(dt);

out = opentelemetry.metrics.ObservableResult;
out = out.observe(s);
for i=1:10, 
   mp = opentelemetry.sdk.metrics.MeterProvider();  
   opentelemetry.metrics.Provider.setMeterProvider(mp);
   clear
   mp = opentelemetry.metrics.Provider.getMeterProvider();   
   m = getMeter(mp, "foo"); 
   g = createObservableGauge(m, @currentsecond, "bar");
   tic;   
   opentelemetry.sdk.common.Cleanup.shutdown(mp);   
   toc; 
end

In comparison, if the code is changed to create a synchronous instrument (e.g. counter) instead of an asynchronous one, then shutdown never takes a long time, always around 0.01 seconds.

This issue causes an asynchronous example test in test/texamples.m to be filtered out due to the time it takes to run the test.

Lenguaje dominante
MATLAB
Estrellas
19
Forks
4
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de mathworks/OpenTelemetry-MATLAB

Todos los issues de mathworks/OpenTelemetry-MATLAB

Issues similares

Más issues de MATLAB

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.