Page 1 of 1

Expire records from the dba log automatically?

Posted: Sat Feb 06, 2016 1:03 am
by kgc
By policy we do not maintain logs older than 2 weeks. Can anyone share an example of how to expire records from the dba by age? (Or at all?)

Thanks!

Re: Expire records from the dba log automatically?

Posted: Wed Feb 10, 2016 11:31 pm
by kgc
Should anyone else want to do it, this should work provided you have a gnu-ish date.

Code: Select all

#!/bin/bash

DATE=`date --date "-14 days" +%s`;

/usr/local/openvpn_as/bin/sqlite3 /usr/local/openvpn_as/etc/db/log.db "delete from log where timestamp < $DATE"

Re: Expire records from the dba log automatically?

Posted: Sun Jan 03, 2021 3:06 pm
by oibaf
2021 update :):
  • use system sqlite3 (no longer included in openvpn-as package, at least on Debian);
  • do a VACUMM to free DB space (otherwise no file size reduction).

Code: Select all

#!/bin/bash

DATE=`date --date "-14 days" +%s`;

/usr/bin/sqlite3 /usr/local/openvpn_as/etc/db/log.db "delete from log where timestamp < $DATE"
/usr/bin/sqlite3 /usr/local/openvpn_as/etc/db/log.db "VACUUM"