dotfiles for servers
at main 35 lines 1.2 kB view raw
1#!/usr/bin/env sh 2 3USER=$(head -n 1 "${HOME}/.env") 4AUTHPASS=$(tail -n 1 "${HOME}/.env") 5RRDFILES="${HOME}/rrdtool" 6IMAGES="${HOME}/rrdimages" 7WATERMARK="moonshadow.dev" 8RRDTOOL="/usr/local/bin/rrdtool" 9UPTIME=$(cat /tmp/uptime.txt) 10NOW=$(date "+%Y-%m-%d %H:%M:%S %Z" | sed 's/:/\\:/g') 11 12if ! test -f "${RRDFILES}/cpu.rrd"; then 13 echo "Creating ${RRDFILES}/cpu.rrd" 14 ${RRDTOOL} create "${RRDFILES}"/cpu.rrd --step 300 DS:ds0:GAUGE:600:U:U RRA:MAX:0.5:1:20000 15fi 16 17CPU_LOAD=$(snmp walk -l authPriv -u "$USER" -A "$AUTHPASS" -X "$AUTHPASS" -a SHA-256 localhost hrProcessorLoad.1 | awk '{print $4}') 18 19${RRDTOOL} update "${RRDFILES}"/cpu.rrd N:"${CPU_LOAD}" 20 21${RRDTOOL} graph "${IMAGES}"/cpu.png \ 22 --start -43200 \ 23 --title "moonshadow.dev - CPU" \ 24 --vertical-label "% CPU Used" \ 25 --watermark "${WATERMARK}" \ 26 DEF:CPU="${RRDFILES}"/cpu.rrd:ds0:AVERAGE \ 27 AREA:CPU#FFCC00 \ 28 LINE2:CPU#CC0033:"CPU" \ 29 GPRINT:CPU:MAX:"Max\:%2.2lf %s" \ 30 GPRINT:CPU:AVERAGE:"Average\:%2.2lf %s" \ 31 GPRINT:CPU:LAST:" Current\:%2.2lf %s\n" \ 32 COMMENT:"\\n" \ 33 COMMENT:" SUM CPU Load / Active Cores = % CPU Used\n" \ 34 COMMENT:" Up for ${UPTIME} at ${NOW}" 35