Tuesday, 4 December, 2018 UTC


Summary

winston-dashboard
React Based Log Browser for WinstonJs.
Instalation
npm install --save winston-dashboard
Minimum requirement: Node 8
Usage
const winstonServer = require('winston-dashboard');
const path = require('path');

// Instantiate the server
winstonServer({
  path: path.join(__dirname, '/logs'), //Root path of the logs (used to not show the full path on the log selector)
  logFiles: '/**/*.log', //Glob to search for logs, make sure you start with a '/'
  port: 8000, // Optional custom port, defaults to 8000,
  orderBy: 'creationTime' // 'creationTime' | 'modifiedTime', if none is provided then it will sort by alphabetical order
});
How it works
It uses options.path and options.logFiles to look for all logs.
Each one of these logs is instantiated as a Transport.
Server provides query api for these transports.
What you can do
  • Picks up new log files every minute
  • Filter logs with an input. useful when you have a lot of log files, for example daily files.
  • Filter logs with an input
  • Filter by maximum level (if Info is selected verbose and silly wont show).
  • Select amount of rows to show.
  • Paginate
What it cant do
  • It cannot sort even thought he Api provides a way to do so because the order 'desc' has a bug and does not paginate.
  • Cannot filter by time. if you are really interested in this and just let me know and i can make it work. I had it at some point but while investingating the transport query function i removed this functionality.
Roadmap
  • Add a refresh button
GitHub