Popular Node.js loggers like Winston, Pino, and Bunyan are good for collecting logs, but that's pretty much all they do. They don't come with any built-in tools to visualize or search through the logs. Because of this, developers often need to set up Elastic Stack on dedicated servers or pay for a service to handle log storage and visualization.
From what I have gathered in conversations with many developers, a lot of them are just streaming logs to files. When an error occurs, they manually download and search through these logs to find the issue.
We have converted key features of Errsole Cloud to open source and released them under the MIT license.
Our Motive
Complete Logger: A single module should collect and store logs, as well as provide a web dashboard for viewing and searching the logs.
Easy Setup: The module should be easy to set up, without requiring dedicated servers or the installation of third-party software.
Features
Easy Setup
Just install and configure the module. That's it! Errsole handles the collection, storage, and visualization of logs within the module itself. No additional software installations or dedicated servers are required.
Complete Logger
One of the main issues with loggers like Winston and Pino is that they do not capture default console logs. When errors occur in dependency modules, these modules use console.error
or console.warn
to log the issues. Winston and Pino miss these logs entirely.
To address this, we have decided to capture default console logs in addition to providing a custom logger with multiple log levels in Errsole.
Real-time Notifications
One of the essential features that developers often miss is receiving alerts for app crashes and critical errors. Typically, developers need to use a paid service for this, but it is a crucial requirement.
To address this need, we have decided to add this feature to our open-source project. When an app crashes or encounters a critical error, Errsole Open Source will send a notification to developers via Email or Slack. This notification will include the error message, the app name, the environment, and the server name.
Conclusion
Errsole aims to provide a complete logging tool for Node.js applications, addressing the limitations of existing loggers and making it easier for developers to monitor and maintain their applications. Try Errsole and see how it can enhance your logging and monitoring workflow. We would love to hear your feedback!