juno
juno copied to clipboard
Add logger interface
Problem
Right now, we require the zap logging library directly (transitively requiring all code to use zap for logging as well). Furthermore, we frequently import a global logger rather than passing it as a parameter.
Solution
- A logger interface to decouple Juno from zap
- Pass loggers as parameters to functions and add them to existing structs, rather than importing a global logger. Among other benefits, this allows for greater flexibility in package-level logger configuration.