Log messages appearing twice with Python Logging after pio.renderers.default = "notebook"
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Python
- Estrellas
- 18.8k
- Forks
- 2.8k
- Merge medio
- 16 h 26 min
- PR fusionados (30 d)
- 21
Descripción
After importing plotly.io and setting the pio.renderers.default = "notebook" in my Python code, All Log messages appearing twice with Python Logging
python version: 3.9.12
plotly version: 6.1.2
import logging
# create logger
logger = logging.getLogger('simple_example')
logger.setLevel(logging.DEBUG)
# create console handler and set level to debug
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)
# create formatter
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
# add formatter to ch
ch.setFormatter(formatter)
# add ch to logger
logger.addHandler(ch)
## print some message
logger.info("hello test") #### till this point all looks good
## now import plotly
import plotly.io as pio
pio.renderers.default = "notebook"
## use the logger again , now the same logger.info printing the log message twice
logger.info("hello test after import")
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza ejecutando el ejemplo de logging de Python del issue, especialmente la importación de plotly.io y la asignación de pio.renderers.default a "notebook". Sigue la configuración del renderer y los handlers de logging para identificar por qué la segunda llamada a logger.info se emite dos veces; se considera terminado cuando el mensaje aparece una vez después de seleccionar el renderer notebook y el comportamiento tiene cobertura de regresión.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- jupyter-notebook, plotly, python
- Área
- observability
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100