How to approach adding logging timestamps
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- ruby
- Área
- build-system, cli
Línea de trabajo
Comienza revisando el manejo de la salida en toda la base de código de Rake y en los Rakefiles, especialmente el uso directo de Kernel.puts y el enfoque propuesto de wrapping de STDOUT/STDERR. Determina si una funcionalidad de marcas de tiempo opt-in puede conservar el comportamiento de la biblioteca; se considera terminado cuando se haya acordado un diseño viable y un alcance claro antes de la implementación.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hello,
our customer would like to have optional timestamps for rake output and I would like to contribute this feature if this is feasible. I did some research and it looks like both Rake codebase and Rakefiles use "Kernel.puts" directly. So I have two ideas I would like to discuss before I do any coding:
-
Hacky approach: create STDOUT/STDERR wrappers and change
$stdoutand$stderrglobal variables to these instances. They would add timestamps when configured. Pros: Safe for the future changes because nothing is changing in the codebase. Cons: When Rake is used as a library, changing standard output and error would introduce regressions and problems after upgrade. -
Clean but disturbing approach: search and replace
putsin the codebase and create a DSL methodputsfor use in Rakefiles. This looks cleaner, but developers are already used toputsin the codebase. Everytime new line withputsis added, the output will appear in the output without timestamp. Since this feature would be opt-in, devs will start adding these types kinds of errors pretty soon.
Honestly, I am not sure if I can deliver this feature to my customer but let's discuss and see what you guys think about this. Cheers!
- Lenguaje dominante
- Ruby
- Estrellas
- 2.5k
- Forks
- 650
- Merge medio
- 6 min
- PR fusionados (30 d)
- 3
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.
Más de ruby/rake
-
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 48/100
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 28/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 45/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
バグ
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
-
Version bump for OpenVox 9 Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
voxpupuli/puppet-epel#186 · 1 comentario ·
-
external_created_at is no longer used for the message timestamp since the new message UI (v4.4.0) AbiertoBug Frontend
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100