Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
A zero dependency logger with extensible attachments.
It is like log4js but a single file with some performance oriented nuances.
It comes with two attachments:
The log collector
The advantage of using a log collector is that it can merge, store, display and filter logs from the backend, workers and multiple frontend-users, in a single place, so it easier to follow the execution flow and filter exactly what is needed.
There are several log collectors that could be used, but they all have webuis and complex querying.
I wanted to keep things simple and just use the terminal, so i've built logpipe, and added it to the docker-compose, it basically streams colored logs in realtime to wscat (or any other ws clients).
It also supports some simple filtering features that can be changed by typing commands in the terminal:
The logger
The logger can be instantiated with
every file should have its own logger instance.
And it can be used with
the lazy versions of these methods use a function to generate the logs
default attachment
In production:
In development:
Screenshots
Additional Context
Was anything unclear during your work on this PR? Anything we should definitely take a closer look at?
Checklist
Are your changes backwards compatible? Please answer below:
On a scale of 1-10 how well and how have you QA'd this change and any features it might affect? Please answer below:
For frontend changes: Tested on mobile, light and dark mode? Please answer below:
Did you introduce any new environment variables? If so, call them out explicitly here: