splunk / splunk/addonfactory-solutions-library-python

solnlib is using root logger to log things

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

Nadie ha tomado este issue todavía.

bug
Lenguaje dominante
Python
Estrellas
18
Forks
10
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Issue Description:

I think the main issue is that any INFO or DEBUG logs in solnlib are going into Splunkd as ERROR logs.
I think the logging currently is not as per best practice. Currently it uses logging.info , which puts logs in splunkd. : https://github.com/splunk/addonfactory-solutions-library-python/blob/develop/solnlib/timer_queue.py#L234

I think the best practice should be to initialize a logger for the module and not using logging.info directly. That is how I have seen other third party libraries doing. For Example urllib3 that requests uses : https://github.com/urllib3/urllib3/blob/main/src/urllib3/connectionpool.py#L61

Other notes :

I was trying to do the same thing in solnlib like urllib3 but I see that in certain places it can cause issue like this : https://github.com/splunk/addonfactory-solutions-library-python/blob/develop/solnlib/rest.py#L67

Here the error is the only way someone can know that something went wrong cause we are not raising an exception. If we turn off this logger by default, it will suppress necessary information and if we raise an error from here, it would mean a breaking change for someone using this method.

Also, there are certain places where somone can argue that error should go into splunkd. Thus, we might need to make a decision on this behaviour of solnlib.

Slack Conversation with example logs : https://splunk.slack.com/archives/C03T8QCHBTJ/p1748939756182799

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

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.

Línea de trabajo

Start by comparing logging in solnlib/timer_queue.py with the module logger pattern in urllib3, then inspect the error path in solnlib/rest.py. The issue requires deciding which messages should reach Splunkd and whether changing logger behavior affects callers. Done means an agreed, consistent logging policy is applied without suppressing necessary errors or introducing an unintended breaking change.

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

Evaluación

Stack tecnológico
python
Área
backend, observability-sre
Tipo de issue
Refactorización
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.