Last active
April 1, 2017 18:17
-
-
Save stone/aa8712bc9539cb879e056fb7e63702ce to your computer and use it in GitHub Desktop.
Simple script to collect fermentrack logs and upload them to filebin.net
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Simple script to collect fermentrack logs and upload to filebin.net | |
# Download to your device running fermentrack and run it by | |
# bash collectlogs.sh | |
# | |
# Fredrik <fredrik@ppo2.se> | |
BIN="fermentrack" | |
FPATH="${1:-/home/fermentrack}" | |
echo "This tool will collect logs and upload to filebin.net" | |
echo "You need to run it as a user that can use sudo (for collecting nginx log)" | |
echo | |
echo "Logs collected:" | |
echo " /home/fermentrack/fermentrack/log" | |
echo " /home/fermentrack/fermentrack/upgrade.log" | |
echo | |
read -p "Do you wish to upload logs [y/n] (default yes)?" yn | |
case $yn in | |
[Nn]* ) exit;; | |
esac | |
echo -n "Enter your name/nick to identify your upload and press [ENTER]: " | |
read name | |
tmpfile=$(mktemp --suffix ".tgz" /tmp/fermentrack.logs.XXXXXX)||exit | |
nginx_errorlog=$(mktemp --suffix ".log" /tmp/fermentrack.nginx_error.XXXXXX)||exit | |
sysinfo=$(mktemp --suffix ".txt" /tmp/fermentrack.sysinfo.XXXXXX)||exit | |
#nginx error.log last 200 lines | |
sudo tail -n 200 /var/log/nginx/error.log > ${nginx_errorlog} | |
#get some basic system information | |
echo -e "Git Revision: $(cat /home/fermentrack/fermentrack/.git/refs/heads/master)\n\n" >> ${sysinfo} | |
ps xww -u fermentrack >> ${sysinfo} | |
tar zcf $tmpfile ${nginx_errorlog} ${sysinfo} ${FPATH}/fermentrack/upgrade.log ${FPATH}/fermentrack/log 2> /dev/null | |
if [ $? -ne 0 ]; then | |
echo "Sorry, something went wrong getting logs, if you do not have fermentrack installed" | |
echo "in the default path: ${FPATH}, restart this script with the homedirectory of the" | |
echo "fermentrack users, example: ./$0 /home/myuser" | |
rm ${tmpfile} ${nginx_errorlog} ${sysinfo} | |
exit 0 | |
fi | |
curl -s --data-binary "@${tmpfile}" -H "bin: ${BIN}" -H "filename: ${name}-fermentrack_logs.tgz" https://filebin.net/ > /dev/null | |
if [ $? -ne 0 ]; then | |
echo "Sorry, Upload failed. you could try to do it manually by running:" | |
echo "curl -s --data-binary "@${tmpfile}" -H "bin: ${BIN}" -H "filename: ${name}-fermentrack_logs.tgz" https://filebin.net/" | |
rm ${tmpfile} ${nginx_errorlog} ${sysinfo} | |
exit 0 | |
fi | |
echo | |
echo "Link to uploaded logs: http://filebin.net/${BIN}/${name}-fermentrack_logs.tgz" | |
echo |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment