mirror of
https://github.com/nikdoof/test-auth.git
synced 2025-12-14 06:42:16 +00:00
Migrated the final cronjobs over to tasks
This commit is contained in:
@@ -1,37 +0,0 @@
|
||||
import logging
|
||||
from datetime import datetime
|
||||
|
||||
from eve_proxy.models import CachedDocument
|
||||
|
||||
class ClearStaleCache():
|
||||
"""
|
||||
Clears out any stale cache entries
|
||||
"""
|
||||
|
||||
@property
|
||||
def _logger(self):
|
||||
if not hasattr(self, '__logger'):
|
||||
self.__logger = logging.getLogger(__name__)
|
||||
return self.__logger
|
||||
|
||||
def job(self, args):
|
||||
objs = CachedDocument.objects.filter(cached_until__lt=datetime.utcnow())
|
||||
self._logger.info('Removing %s stale cache documents' % objs.count())
|
||||
objs.delete()
|
||||
|
||||
class FlushCache():
|
||||
"""
|
||||
Flushes the entire cache
|
||||
"""
|
||||
|
||||
@property
|
||||
def _logger(self):
|
||||
if not hasattr(self, '__logger'):
|
||||
self.__logger = logging.getLogger(__name__)
|
||||
return self.__logger
|
||||
|
||||
def job(self, args):
|
||||
objs = CachedDocument.objects.all()
|
||||
self._logger.info('Removing %s stale cache documents' % objs.count())
|
||||
objs.delete()
|
||||
|
||||
12
eve_proxy/tasks.py
Normal file
12
eve_proxy/tasks.py
Normal file
@@ -0,0 +1,12 @@
|
||||
import logging
|
||||
from datetime import datetime, timedelta
|
||||
from celery.decorators import task
|
||||
from eve_proxy.models import CachedDocument
|
||||
|
||||
@task(ignore_result=True)
|
||||
def clear_stale_cache(cache_extension=0):
|
||||
log = clear_stale_cache.get_logger()
|
||||
|
||||
time = datetime.utcnow() - timedelta(seconds=cache_extension)
|
||||
objs = CachedDocument.objects.filter(cached_until__lt=datetime.utcnow()).delete()
|
||||
self.log.info('Removed %s stale cache documents' % objs.count())
|
||||
Reference in New Issue
Block a user