A high-performance asynchronous logging package for Go with severity/category filtering and multiple output targets.
ozzo-log is a Go package that provides enhanced logging support for Go programs. It offers high-performance asynchronous logging with flexible filtering by severity and category, multiple output targets, and runtime configuration, making it suitable for production applications.
Go developers building production applications that require performant, configurable, and structured logging, such as web services, microservices, or distributed systems.
Developers choose ozzo-log for its asynchronous logging performance, runtime configurability without recompilation, and built-in support for multiple targets like console, file, network, and email with granular filtering.
A Go (golang) package providing high-performance asynchronous logging, message filtering by severity and category, and multiple message targets.
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 non-blocking message processing to avoid I/O bottlenecks, ensuring minimal impact on application performance, as highlighted in the README's focus on production use.
Supports RFC5424 levels and category-based filtering, allowing precise control over log output, such as routing specific package logs to different targets via target configurations.
Enables dynamic logging changes without recompilation using JSON configuration, as demonstrated with the ozzo-config package integration for production adaptability.
Includes console, file, network, and email targets out of the box, facilitating diverse logging strategies without needing third-party plugins initially.
Lacks direct support for modern cloud logging services like AWS CloudWatch or Google Cloud Logging; users must implement custom targets, adding development overhead.
For advanced runtime configuration, it requires the ozzo-config package, adding an external dependency that complicates setup compared to self-contained alternatives.
Has a less extensive community and fewer third-party integrations than popular libraries like Zap or Logrus, potentially limiting tooling, tutorials, and long-term support.