architecture-it / go-platform

2 stars 1 forks source link

Evaluar libreria de log #10

Open fglaeser opened 4 years ago

fglaeser commented 4 years ago

Hola les dejo esto por aca. Veo que el tema de logging y el formato esta un poco rigidoy teniendo en cuenta que algo pueda cambiar en cuanto a formato de salida y si la misma sera JSON o no, propongo evaluar un par de libs de logging de go, para ver si cumplen con lo requerido.

Puede que exista alguna otra, pero creo que son las 2 con mejor performance.

gadielMa commented 4 years ago

Ya estamos trabajando en este punto !

fglaeser commented 4 years ago

Reabro el issue, ya que me parece que no quedo lo de log como se planteo. La propuesta habla de que el tema del formato sea por configuración, por lo que veo, se incorporo un método para loguear a JSON, pero cambiar entre un formato tipo texto y json parecería que requiere cambios en la aplicación y la idea era que no. Esto es asi?

Saludos.

mbassi-andreani commented 4 years ago

Buenas! Al final nos decantamos por la librería zap, nos ahorra todo el quilombo de tener que construir el JSON a mano, de hacer el If, punteros y demás. Además, los muchachos de Uber le pusieron muuuucha cabeza en tema rendimiento, es sorprendente.

Por otro lado, estuve viendo que en el estándar (https://github.com/architecture-it/elk-stack-logs-config/tree/master/filebeat), no figura la entrada en JSON para filebeat, me refiero a que esta librería zap, por defecto loguea con estas claves/valores:

{"L":"INFO","T":"2020-08-14T17:17:06.284-0300","C":"mysql/mysql.go:20","M":"Se ha conectado exitosamente."}

Es decir, L, T, C y M...

Mi pregunta/inquietud es... Esas claves, están bien? o deberían ser otras? Por ejemplo tst, Lvl, Msg.. etc.

Creo que estaría bueno definirlo y agregarlo al repo de https://github.com/architecture-it/elk-stack-logs-config/tree/master/filebeat. Qué opinás @fglaeser ?

fglaeser commented 4 years ago

Por lo que veo en la lib zap, las claves son configurables, asi que la parte de definición de los nombres la podemos dejar para despues.

mbassi-andreani commented 4 years ago

@fglaeser Yo me olvidé de responder tu comentario. Ya está implementado hoy en día. Cómo lo ves?