A Docker container to log multiple Twitch channel's IRC messages to file.
docker pull dbkynd/twitch-logger
Default behavior:
- Logs all
PRIVMSGIRC messages - Each channel logs to its own folder
- Log files are split monthly
- Old log files are zipped with GZIP
- Timestamps are in UTC format
Required ENV variables:
TWITCH_CHANNELS(String) A comma delimited string of channel names specifying which Twitch channels you want to log
Optional ENV variables:
RAW(Boolean) (Default: true) Set to false to log messages as they appear in Twitch chat instead of the raw IRC messageZIP(Boolean) (Default: true) Set to false if you do not want old log files to be GzippedTZ(String) (Default: UTC) Set to use a specific timezone found at https://www.php.net/manual/en/timezones.phpTS_FORMAT(String) Set to format the timestamp to your liking. ie:hh:mm:sshttps://momentjs.com/docs/#/displaying/format/DATE_PATTERN(String) Set to change how often the log files are rotated. Defaults to monthly. ie:YYYY-MMhttps://github.com/winstonjs/winston-daily-rotate-file (Options section)CHATTY_STYLE(Boolean) (Default: false) Set to true (requires RAW to be false) to mimic the Chatty formatting of prefixing the username with symbols representing the user level. https://chatty.github.io/help/help.html (User Status Symbols section)LOGSTASH(Boolean) (Default: false) Set to true to use logstash formatting for things like Elasticsearch
Container Path to the log directory is /app/logs
Examples:
-
Basic:
docker run -d -e TWITCH_CHANNELS=dbkynd -v C:/Users/DBKynd/Desktop/logs:/app/logs dbkynd/twitch-logger -
Advanced:
docker run -d -e TWITCH_CHANNELS=dbkynd,annemunition -e RAW=false -e ZIP=false -e TZ=America/Los_Angeles -e TS_FORMAT=hh:mm:ss -e DATE_PATTERN=YYYY-MM-DD -e CHATTY_STYLE=true -v C:/Users/DBKynd/Desktop/logs:/app/logs dbkynd/twitch-logger
TS_FORMAT:
YYYY-MM-DD HH:mm:ss-> 2020-04-18 18:03:35hh:mm:ss A-> 05:56:57 PM
DATE_PATTERN
YYYY-MM-> Rotates log files every month (Default)YYYY-MM-DD-> Rotates log files every daynull-> No rotation. Logs all messages to a singular file (Warning - this file may get quite large) (If null, the ZIP option is not used)