#!/bin/bash

WAIT=${1:-60}
port=${2:-5432}
echo "Tracing autovacuums"
date
pids=$(psql -p $port -tqc "select '-p'||pid from pg_stat_activity where query ~ 'autovacuum' and state <> 'idle' order by pid")
parallel -u -L 32 "strace -i -ttt -T -etrace=\!read,brk -o vactrace -ff {}" ::: $pids &
sleep $WAIT
killall -INT strace
date
echo "Tracing stats collector"
pid=$(ps xw | grep postgres: | awk '/stats collector process/ {print $1}')
strace -i -ttt -T -etrace=\!write,brk -o statscoll -ff -p $pid &
sleep $WAIT
killall -INT strace
