A logging interface that doesn't leak its backend
TL;DR: A CLI tool wants pretty, coloured logs in a terminal. The same tool, running as a daemon in a container, wants structured JSON. If your packages import a concrete logger, switching between those two means touching every package. go-tool-base’s packages depend only on a logger.Logger interface, never a backend....
[Read More]