summaryrefslogtreecommitdiff
path: root/stats/calc.sh
blob: 9567247953218f01bc72f1c9ec36005abf3f5c94 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/env bash

LOGFILE=$1
OUTFILE=$2

if [ $# -lt 2 ]; then
  echo "Usage:
    ./calc.sh logs/access.log gemini/stats.gmi
  "
fi

TODAY=$(date -Id)
echo -e "Stats for day:\t$TODAY" > $OUTFILE
echo -e "   Total Reqs:\t"$(grep 'OUT' ${LOGFILE} | grep "${TODAY}" | wc -l) >> $OUTFILE
echo -e " Gemlog Reads:\t"$(grep 'IN' ${LOGFILE} | grep "${TODAY}" | grep "gemlog" | grep "gmi" | wc -l) >> $OUTFILE
echo "Top 5 Gemlogs" >> $OUTFILE
echo "--------------" >> $OUTFILE
grep "IN" ${LOGFILE} | grep "${TODAY}" | cut -f4 | grep "gemlog" | grep ".gmi" | sort | uniq -c | sort -rn | head -n5 >> $OUTFILE
echo -e "\n// generated $(date -u -Is)" >> $OUTFILE