A leveled logging package for Go, modeled after Google's internal C++ glog library.
glog is a leveled logging package for Go that provides efficient, structured logging similar to Google's internal C++ glog library. It solves the problem of high-performance logging with fine-grained verbosity control, allowing developers to include detailed debug logs without impacting production performance. The package minimizes overhead by deferring argument evaluation when logging is disabled.
Go developers building production applications who need performant, structured logging with runtime verbosity control. Particularly valuable for teams transitioning from Google's C++ infrastructure or requiring similar logging patterns.
Developers choose glog for its proven performance characteristics, Google-compatible logging patterns, and fine-grained control through V-style logging and module-level verbosity flags. It provides production-ready logging without the overhead of evaluating unused log arguments.
Leveled execution logs for Go
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses boolean-bound methods to defer argument evaluation when logging is disabled, minimizing overhead in production as highlighted in the README's emphasis on avoiding expensive evaluations.
Supports -v and -vmodule flags for adjusting verbosity at the file level, enabling targeted debugging in complex systems without global log level changes.
Implements logging patterns matching internal Google C++ glog, making it ideal for teams transitioning from Google infrastructure or requiring consistent logging behavior.
Provides consistent Info, Warning, Error, and Fatal levels with formatting variants, essential for structured production logging and error handling.
The README states the project is 'not itself under development' and feature requests are ignored, limiting future enhancements and bug fixes.
Lacks built-in support for modern structured formats like JSON, requiring additional work for integration with log aggregators and monitoring systems.
Verbosity control relies on -v and -vmodule flags, which may not suit environments where dynamic configuration or programmatic control is needed.