add cronjob to delete old monitoring records
This commit is contained in:
parent
50683be4f8
commit
8626c5e232
15
cron.py
15
cron.py
|
@ -32,6 +32,7 @@ from app.models import (
|
||||||
RefusedEmail,
|
RefusedEmail,
|
||||||
AppleSubscription,
|
AppleSubscription,
|
||||||
Mailbox,
|
Mailbox,
|
||||||
|
Monitoring,
|
||||||
)
|
)
|
||||||
from server import create_app
|
from server import create_app
|
||||||
|
|
||||||
|
@ -312,6 +313,16 @@ def sanity_check():
|
||||||
LOG.d("Finish sanity check")
|
LOG.d("Finish sanity check")
|
||||||
|
|
||||||
|
|
||||||
|
def delete_old_monitoring():
|
||||||
|
"""
|
||||||
|
Delete old monitoring records
|
||||||
|
"""
|
||||||
|
max_time = arrow.now().shift(days=-30)
|
||||||
|
nb_row = Monitoring.query.filter(Monitoring.created_at < max_time).delete()
|
||||||
|
db.session.commit()
|
||||||
|
LOG.d("delete monitoring records older than %s, nb row %s", max_time, nb_row)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
LOG.d("Start running cronjob")
|
LOG.d("Start running cronjob")
|
||||||
parser = argparse.ArgumentParser()
|
parser = argparse.ArgumentParser()
|
||||||
|
@ -328,6 +339,7 @@ if __name__ == "__main__":
|
||||||
"delete_refused_emails",
|
"delete_refused_emails",
|
||||||
"poll_apple_subscription",
|
"poll_apple_subscription",
|
||||||
"sanity_check",
|
"sanity_check",
|
||||||
|
"delete_old_monitoring",
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
@ -356,3 +368,6 @@ if __name__ == "__main__":
|
||||||
elif args.job == "sanity_check":
|
elif args.job == "sanity_check":
|
||||||
LOG.d("Check data consistency")
|
LOG.d("Check data consistency")
|
||||||
sanity_check()
|
sanity_check()
|
||||||
|
elif args.job == "delete_old_monitoring":
|
||||||
|
LOG.d("Delete old monitoring records")
|
||||||
|
delete_old_monitoring()
|
||||||
|
|
|
@ -41,3 +41,9 @@ jobs:
|
||||||
schedule: "0 2 * * *"
|
schedule: "0 2 * * *"
|
||||||
captureStderr: true
|
captureStderr: true
|
||||||
|
|
||||||
|
- name: SimpleLogin Delete Old Monitoring records
|
||||||
|
command: python /code/cron.py -j delete_old_monitoring
|
||||||
|
shell: /bin/bash
|
||||||
|
schedule: "0 14 * * *"
|
||||||
|
captureStderr: true
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue