GitHub - nk412/tinylogger: Lightweight logging framework for bash
source link: https://github.com/nk412/tinylogger
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
tinylogger
An extremely lightweight logging framework for BASH scripts. Developed and tested on MacOS. This should work on any BASH platform.
Log levels
It supports four levels, default being INFO
.
ERROR > WARN > INFO > DEBUG
Usage
Source the tinylogger.bash
file, and use the tlog
method.
The first argument is the level, and the second the log message.
source tinylogger.bash
tlog warn "This is a warning"
See demo.sh
for more.
You can control the logging level while calling a script by setting the LOGGER_LVL
argument.
$ LOGGER_LVL=warn ./demo.sh
2017-11-07 19:05:30 - WARN - This is a scary warning
2017-11-07 19:05:30 - ERROR - Something terrible has happened
$ LOGGER_LVL=debug ./demo.sh
2017-11-07 19:05:52 - DEBUG - first line of script
2017-11-07 19:05:52 - INFO - Starting script ./demo.sh
2017-11-07 19:05:52 - DEBUG - another debug statement
2017-11-07 19:05:52 - INFO - Current time is Tue 7 Nov 2017 19:05:52 GMT
2017-11-07 19:05:52 - WARN - This is a scary warning
2017-11-07 19:05:52 - DEBUG - do you like these debug statements?
2017-11-07 19:05:52 - ERROR - Something terrible has happened
2017-11-07 19:05:52 - DEBUG - end of script
2017-11-07 19:05:52 - INFO - Script completed, go home
You can set LOGGER_LVL=none
to disable all logging.
Timestamp customisation
Underneath, the date
command is used to display the timestamp. Simply set the LOGGER_FMT
to any valid format supported by date
.
$ LOGGER_LVL=warn LOGGER_FMT=%s ./demo.sh
1510081622 - WARN - This is a scary warning
1510081622 - ERROR - Something terrible has happened
License
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK