2010-12-03 07:29:36 +01:00
#!/bin/sh
set -e -u
2013-09-18 16:03:25 +02:00
FILTER = ""
2014-02-24 17:00:21 +01:00
ROOMS = ""
2013-09-18 16:03:25 +02:00
2010-12-03 07:29:36 +01:00
LIMIT = 10000
usage( ) {
2014-02-24 17:00:21 +01:00
echo " usage: $0 [--limit <n>] [--filter] [--room <room>]* "
2011-12-07 03:50:04 +01:00
exit 1
2010-12-03 07:29:36 +01:00
}
while [ $# -gt 0 ] ; do
case $1 in
--limit)
LIMIT = $2
shift
; ;
2013-09-18 16:03:25 +02:00
--filter)
FILTER = 1
; ;
2014-02-24 17:00:21 +01:00
--room)
[ -n " $ROOMS " ] && ROOMS = " ${ ROOMS } , "
ROOMS = " $ROOMS ' $2 ' "
shift
; ;
2010-12-03 07:29:36 +01:00
*) usage
; ;
esac
shift
done
2014-02-24 17:00:21 +01:00
QUERY = "WHERE NOT -NTOTAL = sum_array(nperdevice) AND NOT DEAD"
if [ -n " $ROOMS " ] ; then
QUERY = " $QUERY AND room IN ( $ROOMS ) "
fi
2010-12-03 07:29:36 +01:00
2013-02-04 15:08:39 +01:00
echo -n " Device (pid) count: $( pidof xwords | wc | awk '{print $2}' ) "
echo " ; relay pid[s]: $( pidof xwrelay) "
2010-12-03 07:29:36 +01:00
echo "Row count:" $( psql -t xwgames -c " select count(*) FROM games $QUERY ; " )
2013-09-18 16:03:25 +02:00
# Games
2013-08-28 16:28:37 +02:00
echo "SELECT dead as d,connname,cid,room,lang as lg,clntVers as cv ,ntotal as t,nperdevice as nPerDev,nsents as snts, seeds,devids,tokens,ack, mtimes " \
2010-12-03 07:29:36 +01:00
" FROM games $QUERY ORDER BY NOT dead, connname LIMIT $LIMIT ; " \
| psql xwgames
2013-09-18 16:03:25 +02:00
# Messages
2014-02-24 17:00:21 +01:00
echo "SELECT * " \
" FROM msgs WHERE connname IN (SELECT connname from games $QUERY ) " \
" ORDER BY ctime DESC, connname LIMIT $LIMIT ; " \
2012-11-03 18:58:01 +01:00
| psql xwgames
2013-09-18 16:03:25 +02:00
# Devices
LINE = "SELECT id, model, osvers, array_length(mtimes, 1) as mcnt, mtimes[1] as mtime, array_length(devTypes, 1) as dcnt, devTypes[1] as dTyp, devids[1] as devid FROM devices "
if [ -n " $FILTER " ] ; then
LINE = " ${ LINE } WHERE id IN (select UNNEST(devids) FROM games $QUERY ) "
fi
LINE = " $LINE ORDER BY mtimes[1] DESC LIMIT $LIMIT ; "
echo " $LINE " | psql xwgames
2012-09-12 04:07:16 +02:00