jshell - an interactive shell for monitoring JSON log files
version 0.01
jshell
Opens a shell to interact with JSON-formatted log files.
Displays commands and their descriptions.
Exits the program.
Selects the fields to display from each line's JSON log object. If no fields are selected, all fields will be shown.
> fields timestamp priority message
Adds a pattern which must be matched before a log entry is displayed.
> grep field somepattern
Despite the name, patterns are perl regexes and matched against the string value of the field. Embedded modifiers are supported, so a case insensitive search is accomplished thusly:
> grep field (?i)somepattern
Adds a pattern which excludes entries whose field value matches.
> grepv field logswedonotwanttosee
Displays the current configuration of displayed fields and patterns.
Interactively resets fields and patterns.
Displays each entry in a file, showing only those fields selected. If no fields are selected, all fields are shown.
> cat /path/to/json.log
Tails a log file, displaying new entries as they are appended to the file. Use control-c to stop output.
> tail /path/to/json.log
Jeff Ober <sysread@fastmail.fm>
This software is copyright (c) 2018 by Jeff Ober.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install jshell, copy and paste the appropriate command in to your terminal.
cpanm
cpanm jshell
CPAN shell
perl -MCPAN -e shell install jshell
For more information on module installation, please visit the detailed CPAN module installation guide.