diff --git a/applications/admin/controllers/appadmin.py b/applications/admin/controllers/appadmin.py
index 4d208944..6b3a8370 100644
--- a/applications/admin/controllers/appadmin.py
+++ b/applications/admin/controllers/appadmin.py
@@ -445,30 +445,31 @@ def ccache():
gae_stats['oldest'] = GetInHMS(time.time() - gae_stats['oldest_item_age'])
total.update(gae_stats)
else:
+ # get ram stats directly from the cache object
+ ram_stats = cache.ram.stats[request.application]
+ ram['hits'] = ram_stats['hit_total'] - ram_stats['misses']
+ ram['misses'] = ram_stats['misses']
+ try:
+ ram['ratio'] = ram['hits'] * 100 / ram_stats['hit_total']
+ except (KeyError, ZeroDivisionError):
+ ram['ratio'] = 0
+
for key, value in cache.ram.storage.iteritems():
- if isinstance(value, dict):
- ram['hits'] = value['hit_total'] - value['misses']
- ram['misses'] = value['misses']
- try:
- ram['ratio'] = ram['hits'] * 100 / value['hit_total']
- except (KeyError, ZeroDivisionError):
- ram['ratio'] = 0
- else:
- if hp:
- ram['bytes'] += hp.iso(value[1]).size
- ram['objects'] += hp.iso(value[1]).count
- ram['entries'] += 1
- if value[0] < ram['oldest']:
- ram['oldest'] = value[0]
- ram['keys'].append((key, GetInHMS(time.time() - value[0])))
+ if hp:
+ ram['bytes'] += hp.iso(value[1]).size
+ ram['objects'] += hp.iso(value[1]).count
+ ram['entries'] += 1
+ if value[0] < ram['oldest']:
+ ram['oldest'] = value[0]
+ ram['keys'].append((key, GetInHMS(time.time() - value[0])))
for key in cache.disk.storage:
value = cache.disk.storage[key]
- if isinstance(value, dict):
- disk['hits'] = value['hit_total'] - value['misses']
- disk['misses'] = value['misses']
+ if isinstance(value[1], dict):
+ disk['hits'] = value[1]['hit_total'] - value[1]['misses']
+ disk['misses'] = value[1]['misses']
try:
- disk['ratio'] = disk['hits'] * 100 / value['hit_total']
+ disk['ratio'] = disk['hits'] * 100 / value[1]['hit_total']
except (KeyError, ZeroDivisionError):
disk['ratio'] = 0
else:
@@ -485,7 +486,7 @@ def ccache():
ram_keys.remove('oldest')
for key in ram_keys:
total[key] = ram[key] + disk[key]
-
+
try:
total['ratio'] = total['hits'] * 100 / (total['hits'] +
total['misses'])
diff --git a/applications/admin/views/appadmin.html b/applications/admin/views/appadmin.html
index 6e12639d..a31270ca 100644
--- a/applications/admin/views/appadmin.html
+++ b/applications/admin/views/appadmin.html
@@ -137,9 +137,9 @@
{{=T("Overview")}}
{{=T.M("Number of entries: **%s**", total['entries'])}}
{{if total['entries'] > 0:}}
- {{=T.M("Hit Ratio: **%(ratio)s%%** (**%(hits)s** %%{hit(hits)} and **%(misses)s** %%{miss(misses})",
- dict(ratio=total['ratio'], hits=total['hits'], misses=total['misses']))}}
-
+ {{=T.M("Hit Ratio: **%(ratio)s%%** (**%(hits)s** %%{hit(hits)} and **%(misses)s** %%{miss(misses)})",
+ dict( ratio=total['ratio'], hits=total['hits'], misses=total['misses']))}}
+
{{=T("Size of cache:")}}
{{if object_stats:}}
@@ -155,7 +155,7 @@
{{=T.M("Cache contains items up to **%(hours)02d** %%{hour(hours)} **%(min)02d** %%{minute(min)} **%(sec)02d** %%{second(sec)} old.",
dict(hours=total['oldest'][0], min=total['oldest'][1], sec=total['oldest'][2]))}}
- {{=BUTTON(T('Cache Keys'), _onclick='jQuery("#all_keys").toggle();')}}
+ {{=BUTTON(T('Cache Keys'), _onclick='jQuery("#all_keys").toggle().toggleClass( "hidden" );')}}
{{=total['keys']}}
@@ -183,7 +183,7 @@
{{=T.M("RAM contains items up to **%(hours)02d** %%{hour(hours)} **%(min)02d** %%{minute(min)} **%(sec)02d** %%{second(sec)} old.",
dict(hours=ram['oldest'][0], min=ram['oldest'][1], sec=ram['oldest'][2]))}}
- {{=BUTTON(T('RAM Cache Keys'), _onclick='jQuery("#ram_keys").toggle();')}}
+ {{=BUTTON(T('RAM Cache Keys'), _onclick='jQuery("#ram_keys").toggle().toggleClass( "hidden" );')}}
{{=ram['keys']}}
@@ -212,7 +212,7 @@
{{=T.M("DISK contains items up to **%(hours)02d** %%{hour(hours)} **%(min)02d** %%{minute(min)} **%(sec)02d** %%{second(sec)} old.",
dict(hours=disk['oldest'][0], min=disk['oldest'][1], sec=disk['oldest'][2]))}}
- {{=BUTTON(T('Disk Cache Keys'), _onclick='jQuery("#disk_keys").toggle();')}}
+ {{=BUTTON(T('Disk Cache Keys'), _onclick='jQuery("#disk_keys").toggle().toggleClass( "hidden" );')}}
{{=disk['keys']}}
diff --git a/applications/examples/controllers/appadmin.py b/applications/examples/controllers/appadmin.py
index 4d208944..6b3a8370 100644
--- a/applications/examples/controllers/appadmin.py
+++ b/applications/examples/controllers/appadmin.py
@@ -445,30 +445,31 @@ def ccache():
gae_stats['oldest'] = GetInHMS(time.time() - gae_stats['oldest_item_age'])
total.update(gae_stats)
else:
+ # get ram stats directly from the cache object
+ ram_stats = cache.ram.stats[request.application]
+ ram['hits'] = ram_stats['hit_total'] - ram_stats['misses']
+ ram['misses'] = ram_stats['misses']
+ try:
+ ram['ratio'] = ram['hits'] * 100 / ram_stats['hit_total']
+ except (KeyError, ZeroDivisionError):
+ ram['ratio'] = 0
+
for key, value in cache.ram.storage.iteritems():
- if isinstance(value, dict):
- ram['hits'] = value['hit_total'] - value['misses']
- ram['misses'] = value['misses']
- try:
- ram['ratio'] = ram['hits'] * 100 / value['hit_total']
- except (KeyError, ZeroDivisionError):
- ram['ratio'] = 0
- else:
- if hp:
- ram['bytes'] += hp.iso(value[1]).size
- ram['objects'] += hp.iso(value[1]).count
- ram['entries'] += 1
- if value[0] < ram['oldest']:
- ram['oldest'] = value[0]
- ram['keys'].append((key, GetInHMS(time.time() - value[0])))
+ if hp:
+ ram['bytes'] += hp.iso(value[1]).size
+ ram['objects'] += hp.iso(value[1]).count
+ ram['entries'] += 1
+ if value[0] < ram['oldest']:
+ ram['oldest'] = value[0]
+ ram['keys'].append((key, GetInHMS(time.time() - value[0])))
for key in cache.disk.storage:
value = cache.disk.storage[key]
- if isinstance(value, dict):
- disk['hits'] = value['hit_total'] - value['misses']
- disk['misses'] = value['misses']
+ if isinstance(value[1], dict):
+ disk['hits'] = value[1]['hit_total'] - value[1]['misses']
+ disk['misses'] = value[1]['misses']
try:
- disk['ratio'] = disk['hits'] * 100 / value['hit_total']
+ disk['ratio'] = disk['hits'] * 100 / value[1]['hit_total']
except (KeyError, ZeroDivisionError):
disk['ratio'] = 0
else:
@@ -485,7 +486,7 @@ def ccache():
ram_keys.remove('oldest')
for key in ram_keys:
total[key] = ram[key] + disk[key]
-
+
try:
total['ratio'] = total['hits'] * 100 / (total['hits'] +
total['misses'])
diff --git a/applications/examples/views/appadmin.html b/applications/examples/views/appadmin.html
index 6e12639d..a31270ca 100644
--- a/applications/examples/views/appadmin.html
+++ b/applications/examples/views/appadmin.html
@@ -137,9 +137,9 @@
{{=T("Overview")}}
{{=T.M("Number of entries: **%s**", total['entries'])}}
{{if total['entries'] > 0:}}
- {{=T.M("Hit Ratio: **%(ratio)s%%** (**%(hits)s** %%{hit(hits)} and **%(misses)s** %%{miss(misses})",
- dict(ratio=total['ratio'], hits=total['hits'], misses=total['misses']))}}
-
+ {{=T.M("Hit Ratio: **%(ratio)s%%** (**%(hits)s** %%{hit(hits)} and **%(misses)s** %%{miss(misses)})",
+ dict( ratio=total['ratio'], hits=total['hits'], misses=total['misses']))}}
+
{{=T("Size of cache:")}}
{{if object_stats:}}
@@ -155,7 +155,7 @@
{{=T.M("Cache contains items up to **%(hours)02d** %%{hour(hours)} **%(min)02d** %%{minute(min)} **%(sec)02d** %%{second(sec)} old.",
dict(hours=total['oldest'][0], min=total['oldest'][1], sec=total['oldest'][2]))}}
- {{=BUTTON(T('Cache Keys'), _onclick='jQuery("#all_keys").toggle();')}}
+ {{=BUTTON(T('Cache Keys'), _onclick='jQuery("#all_keys").toggle().toggleClass( "hidden" );')}}
{{=total['keys']}}
@@ -183,7 +183,7 @@
{{=T.M("RAM contains items up to **%(hours)02d** %%{hour(hours)} **%(min)02d** %%{minute(min)} **%(sec)02d** %%{second(sec)} old.",
dict(hours=ram['oldest'][0], min=ram['oldest'][1], sec=ram['oldest'][2]))}}
- {{=BUTTON(T('RAM Cache Keys'), _onclick='jQuery("#ram_keys").toggle();')}}
+ {{=BUTTON(T('RAM Cache Keys'), _onclick='jQuery("#ram_keys").toggle().toggleClass( "hidden" );')}}
{{=ram['keys']}}
@@ -212,7 +212,7 @@
{{=T.M("DISK contains items up to **%(hours)02d** %%{hour(hours)} **%(min)02d** %%{minute(min)} **%(sec)02d** %%{second(sec)} old.",
dict(hours=disk['oldest'][0], min=disk['oldest'][1], sec=disk['oldest'][2]))}}
- {{=BUTTON(T('Disk Cache Keys'), _onclick='jQuery("#disk_keys").toggle();')}}
+ {{=BUTTON(T('Disk Cache Keys'), _onclick='jQuery("#disk_keys").toggle().toggleClass( "hidden" );')}}
{{=disk['keys']}}
diff --git a/applications/welcome/controllers/appadmin.py b/applications/welcome/controllers/appadmin.py
index 4d208944..6b3a8370 100644
--- a/applications/welcome/controllers/appadmin.py
+++ b/applications/welcome/controllers/appadmin.py
@@ -445,30 +445,31 @@ def ccache():
gae_stats['oldest'] = GetInHMS(time.time() - gae_stats['oldest_item_age'])
total.update(gae_stats)
else:
+ # get ram stats directly from the cache object
+ ram_stats = cache.ram.stats[request.application]
+ ram['hits'] = ram_stats['hit_total'] - ram_stats['misses']
+ ram['misses'] = ram_stats['misses']
+ try:
+ ram['ratio'] = ram['hits'] * 100 / ram_stats['hit_total']
+ except (KeyError, ZeroDivisionError):
+ ram['ratio'] = 0
+
for key, value in cache.ram.storage.iteritems():
- if isinstance(value, dict):
- ram['hits'] = value['hit_total'] - value['misses']
- ram['misses'] = value['misses']
- try:
- ram['ratio'] = ram['hits'] * 100 / value['hit_total']
- except (KeyError, ZeroDivisionError):
- ram['ratio'] = 0
- else:
- if hp:
- ram['bytes'] += hp.iso(value[1]).size
- ram['objects'] += hp.iso(value[1]).count
- ram['entries'] += 1
- if value[0] < ram['oldest']:
- ram['oldest'] = value[0]
- ram['keys'].append((key, GetInHMS(time.time() - value[0])))
+ if hp:
+ ram['bytes'] += hp.iso(value[1]).size
+ ram['objects'] += hp.iso(value[1]).count
+ ram['entries'] += 1
+ if value[0] < ram['oldest']:
+ ram['oldest'] = value[0]
+ ram['keys'].append((key, GetInHMS(time.time() - value[0])))
for key in cache.disk.storage:
value = cache.disk.storage[key]
- if isinstance(value, dict):
- disk['hits'] = value['hit_total'] - value['misses']
- disk['misses'] = value['misses']
+ if isinstance(value[1], dict):
+ disk['hits'] = value[1]['hit_total'] - value[1]['misses']
+ disk['misses'] = value[1]['misses']
try:
- disk['ratio'] = disk['hits'] * 100 / value['hit_total']
+ disk['ratio'] = disk['hits'] * 100 / value[1]['hit_total']
except (KeyError, ZeroDivisionError):
disk['ratio'] = 0
else:
@@ -485,7 +486,7 @@ def ccache():
ram_keys.remove('oldest')
for key in ram_keys:
total[key] = ram[key] + disk[key]
-
+
try:
total['ratio'] = total['hits'] * 100 / (total['hits'] +
total['misses'])
diff --git a/applications/welcome/views/appadmin.html b/applications/welcome/views/appadmin.html
index 6e12639d..a31270ca 100644
--- a/applications/welcome/views/appadmin.html
+++ b/applications/welcome/views/appadmin.html
@@ -137,9 +137,9 @@
{{=T("Overview")}}
{{=T.M("Number of entries: **%s**", total['entries'])}}
{{if total['entries'] > 0:}}
- {{=T.M("Hit Ratio: **%(ratio)s%%** (**%(hits)s** %%{hit(hits)} and **%(misses)s** %%{miss(misses})",
- dict(ratio=total['ratio'], hits=total['hits'], misses=total['misses']))}}
-
+ {{=T.M("Hit Ratio: **%(ratio)s%%** (**%(hits)s** %%{hit(hits)} and **%(misses)s** %%{miss(misses)})",
+ dict( ratio=total['ratio'], hits=total['hits'], misses=total['misses']))}}
+
{{=T("Size of cache:")}}
{{if object_stats:}}
@@ -155,7 +155,7 @@
{{=T.M("Cache contains items up to **%(hours)02d** %%{hour(hours)} **%(min)02d** %%{minute(min)} **%(sec)02d** %%{second(sec)} old.",
dict(hours=total['oldest'][0], min=total['oldest'][1], sec=total['oldest'][2]))}}
- {{=BUTTON(T('Cache Keys'), _onclick='jQuery("#all_keys").toggle();')}}
+ {{=BUTTON(T('Cache Keys'), _onclick='jQuery("#all_keys").toggle().toggleClass( "hidden" );')}}
{{=total['keys']}}
@@ -183,7 +183,7 @@
{{=T.M("RAM contains items up to **%(hours)02d** %%{hour(hours)} **%(min)02d** %%{minute(min)} **%(sec)02d** %%{second(sec)} old.",
dict(hours=ram['oldest'][0], min=ram['oldest'][1], sec=ram['oldest'][2]))}}
- {{=BUTTON(T('RAM Cache Keys'), _onclick='jQuery("#ram_keys").toggle();')}}
+ {{=BUTTON(T('RAM Cache Keys'), _onclick='jQuery("#ram_keys").toggle().toggleClass( "hidden" );')}}
{{=ram['keys']}}
@@ -212,7 +212,7 @@
{{=T.M("DISK contains items up to **%(hours)02d** %%{hour(hours)} **%(min)02d** %%{minute(min)} **%(sec)02d** %%{second(sec)} old.",
dict(hours=disk['oldest'][0], min=disk['oldest'][1], sec=disk['oldest'][2]))}}
- {{=BUTTON(T('Disk Cache Keys'), _onclick='jQuery("#disk_keys").toggle();')}}
+ {{=BUTTON(T('Disk Cache Keys'), _onclick='jQuery("#disk_keys").toggle().toggleClass( "hidden" );')}}
{{=disk['keys']}}