]> git.ipfire.org Git - ipfire.org.git/commitdiff
memcache: Refactor our wrapper class and add logging
authorMichael Tremer <michael.tremer@ipfire.org>
Mon, 19 Nov 2018 16:57:09 +0000 (16:57 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Mon, 19 Nov 2018 16:57:09 +0000 (16:57 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/backend/memcached.py

index 25ff030b4da261c49fb3f3ea2f2924cbf8e1a911..d7d04b36f730ae2742043e93a7da55283c867b43 100644 (file)
@@ -7,44 +7,24 @@ from .misc import Object
 
 class Memcached(Object):
        def init(self):
-               self._connection = None
-
-               servers = self.get_servers()
-
-               # Nothing to do, if no servers have been configured.
-               if not servers:
-                       logging.warning("No memcache servers defined")
-                       return
-
-               logging.info("Using memcache servers: %s" % ", ".join(servers))
-               self._connection = memcache.Client(servers, debug=0)
-
-       def get_servers(self):
-               servers = self.settings.get("memcached_servers")
-
-               if servers:
-                       return servers.split(" ")
+               self._connection = memcache.Client(["localhost"], debug=1)
 
        def get(self, key, *args, **kwargs):
-               if not self._connection:
-                       return
+               logging.debug("Retrieving %s from cache..." % key)
 
-               key = str(key)
+               ret = self._connection.get(key, *args, **kwargs)
 
-               return self._connection.get(key, *args, **kwargs)
+               if ret is None:
+                       logging.debug("Found nothing for %s" % key)
+               else:
+                       logging.debug("Found object of %s bytes for %s" % (len(ret), key))
 
-       def set(self, key, *args, **kwargs):
-               if not self._connection:
-                       return
+               return ret
 
-               key = str(key)
+       def set(self, key, data, *args, **kwargs):
+               logging.debug("Putting %s bytes into cache for %s" % (len(data), key))
 
-               return self._connection.set(key, *args, **kwargs)
+               return self._connection.set(key, data, *args, **kwargs)
 
        def delete(self, key, *args, **kwargs):
-               if not self._connection:
-                       return
-
-               key = str(key)
-
                return self._connection.delete(key, *args, **kwargs)