remove old alarm data
authorDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 13 Apr 2022 17:51:25 +0000 (19:51 +0200)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 13 Apr 2022 17:51:25 +0000 (19:51 +0200)
gnuplot/calc-offset-filter.sh

index d07cc5f..0b066dc 100755 (executable)
@@ -10,3 +10,12 @@ cat calc-offset.sql | sed "s/90 days/$interval/" | psql -A -t -F' ' zc | grep -f
 grep -v -f /tmp/pn.filter offset.txt > offset.txt.partial
 cat offset.txt.partial offset.txt.new > offset.txt
 
+echo "Press enter to remove old data or ctrl+c to abort"
+read wait_for_enter
+
+in_pn=$( cat /tmp/pn.filter | tr '\n' ',' | sed 's/,$//' )
+last_alarm=$( echo "select max(time) from zc where pn in ( $in_pn ) and alarm_axis > 0" | psql -A -t zc )
+removed="removed_$( date +%Y_%m_%d )"
+echo "last alarm at $last_alarm"
+echo "create table $removed as select * from zc where pn in ( $in_pn ) and time <= '$last_alarm'" | psql zc
+echo "delete from zc where _id in ( select _id from $removed )" | psql zc