Browse Source

katrin: disk and ram cache

root 9 years ago
parent
commit
06773ae0fe
3 changed files with 19 additions and 6 deletions
  1. 5 2
      controllers/katrin.py
  2. 12 2
      models/katrin/db.py
  3. 2 2
      models/logging.py

+ 5 - 2
controllers/katrin.py

@@ -1,4 +1,5 @@
 import re
+import time
 
 def index():
 	return locals()
@@ -12,6 +13,7 @@ def status():
 
 	def GET():
 		res = {}
+		t0 = time.time()
 		for idx, config in enumerate(status_configs):
 			adapter = status_adapters[idx]
 			sensors = config.get('sensors')
@@ -19,7 +21,6 @@ def status():
 			sensorlist = adapter.sensors
 			data =  adapter.read_sensors(sensors, group)
 
-
 			sensorname = config.get('server') + '__'
 			sensorname += config.get('database') + '__'
 			sensorname += config.get('group') + '__'
@@ -33,7 +34,9 @@ def status():
 					except:
 						continue
 				res[s] = v
+		t1 = time.time()
+		logger.debug(t1 - t0)
 		return res
 
 
-	return locals()
+	return locals()

+ 12 - 2
models/katrin/db.py

@@ -1,10 +1,20 @@
 from dbadapter import ADEIAdapter
 from katrin import status
+import time
 
 status_configs = status.configs
 status_adapters = []
+
+t0 = time.time()
+
 for i, c in enumerate(status.configs):
-	status_adapters.append( cache.ram('katrinStatus'+str(i), lambda: ADEIAdapter(c), 3600) )
+	status_adapters.append( cache.ram('katrinStatus'+str(i), 
+                                lambda: cache.disk('katrinStatus'+str(i), 
+						   lambda: ADEIAdapter(c), 
+						   time_expire=24*3600),
+				time_expire=600) )
 
+t1 = time.time()
+logger.debug(t1-t0)
 # group, senosrs = status_configs[0].get('group'), status_configs[0].get('sensors')
-# print status_adapters[0].read_sensors(status_configs[0].get('sensors'), group)
+# print status_adapters[0].read_sensors(status_configs[0].get('sensors'), group)

+ 2 - 2
models/logging.py

@@ -48,7 +48,7 @@ def get_configured_logger(name):
             # Create RotatingFileHandler
             import os
             formatter="%(asctime)s %(levelname)s %(process)s %(thread)s %(funcName)s():%(lineno)d %(message)s"
-            handler = logging.handlers.RotatingFileHandler(os.path.join(request.folder,'private/app.log'),maxBytes=1024,backupCount=2)
+            handler = logging.handlers.RotatingFileHandler(os.path.join(request.folder,'private/app.log'),maxBytes=4028,backupCount=2)
             handler.setFormatter(logging.Formatter(formatter))
 
         handler.setLevel(logging.DEBUG)
@@ -57,7 +57,7 @@ def get_configured_logger(name):
         logger.setLevel(logging.DEBUG)
 
         # Test entry:
-        logger.debug(name + ' logger created')
+        #logger.debug(name + ' logger created')
     else:
         # Test entry:
         #logger.debug(name + ' already exists')