-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Winston — The most popular logging library, with support for multiple transports. This allows you to easily configure your preferred storage location for your logs.
Pino — Pino's biggest attraction is its speed. It claims to be up to five times faster than alternatives, in many cases.
Bunyan — Another feature-rich logging framework that outputs in JSON by default and provides a CLI tool for viewing your logs.
When you encounter an uncaught exception or unhandled promise rejection, it is always considered good practice to crash the program. Use a process manager like PM2 to automatically restart the process and restore the program to a clean state.
You can prevent your log files from getting too big by employing a log rotation solution that also handles cleaning up old logs. Even with this measure in place, it may be challenging to sift through the logs when you need to troubleshoot an issue (due to the sheer number of log files and entries and the distributed nature of most applications).