From 50c97558c1541bcc35175fd75ababa2b244a0976 Mon Sep 17 00:00:00 2001 From: Florian N Date: Tue, 11 Mar 2014 22:20:08 -0400 Subject: [PATCH] Add free mem to graphs --- main/views.py | 2 +- pydash/settings.py | 5 ++-- static/css/dashboard.css | 16 +++++++++++ templates/main.html | 8 ++++-- usage/views.py | 60 ++++++++++++++++++++++++++++------------ 5 files changed, 67 insertions(+), 24 deletions(-) diff --git a/main/views.py b/main/views.py index cee502a..2cad2fe 100755 --- a/main/views.py +++ b/main/views.py @@ -248,7 +248,7 @@ def get_mem(): percent = (100 - ((freemem * 100) / allmem)) usage = (allmem - freemem) - mem_usage = {'usage': usage, 'percent': percent} + mem_usage = {'usage': usage, 'free': freemem, 'percent': percent} data = mem_usage diff --git a/pydash/settings.py b/pydash/settings.py index ade20e6..a064ebf 100644 --- a/pydash/settings.py +++ b/pydash/settings.py @@ -18,8 +18,7 @@ BASE_DIR = os.path.dirname(os.path.dirname(__file__)) # See https://docs.djangoproject.com/en/1.6/howto/deployment/checklist/ # SECURITY WARNING: keep the secret key used in production secret! -SECRET_KEY = '1)$crmowu-23tz@i2-d=7tb3t+1u&(pm!lnjyuarki^72h!3af' - +#SECRET_KEY = '1)$crmowu-23tz@i2-d=7tb3t+1u&(pm!lnjyuarki^72h!3af' # SECURITY WARNING: don't run with debug turned on in production! DEBUG = False @@ -36,7 +35,7 @@ TIME_JS_REFRESH = 30000 TIME_JS_REFRESH_LONG = 120000 TIME_JS_REFRESH_NET = 2000 -VERSION = "1.4.2" +VERSION = "1.4.3" ALLOWED_HOSTS = ['*'] diff --git a/static/css/dashboard.css b/static/css/dashboard.css index 86aad04..5ade332 100644 --- a/static/css/dashboard.css +++ b/static/css/dashboard.css @@ -403,3 +403,19 @@ h6.bigstats { padding: 0 0.3em; border-style: solid; } +.memf { + border-color: rgb(43,214,66); + margin: 0.5em; + border-style: solid; + border-width: 0 0 0 1em; + padding: 0 0.3em; + border-style: solid; +} +.memu { + border-color: rgb(249,134,33); + margin: 0.5em; + border-style: solid; + border-width: 0 0 0 1em; + padding: 0 0.3em; + border-style: solid; +} diff --git a/templates/main.html b/templates/main.html index 0d1859d..94c37ff 100644 --- a/templates/main.html +++ b/templates/main.html @@ -2,7 +2,7 @@ - + {% block title %}PyDash v{{ version }}{% endblock %} @@ -114,7 +114,11 @@

- + +
+ {% trans "Free" %} + {% trans "Used" %} +
diff --git a/usage/views.py b/usage/views.py index 7d896ba..3a58ac4 100755 --- a/usage/views.py +++ b/usage/views.py @@ -229,7 +229,9 @@ def memusage(request): """ Return Memory Usage in % and numeric """ - datasets = [] + datasets_free = [] + datasets_used = [] + cookie_memory = {} try: mem_usage = get_mem() @@ -242,26 +244,40 @@ def memusage(request): cookies = None if not cookies: - datasets.append(0) + datasets_free.append(0) + datasets_used.append(0) else: datasets = json.loads(cookies) - if len(datasets) > 10: - while datasets: - del datasets[0] - if len(datasets) == 10: + datasets_free = datasets[0] + datasets_used = datasets[1] + + if len(datasets_free) > 10: + while datasets_free: + del datasets_free[0] + if len(datasets_free) == 10: break - if len(datasets) <= 9: - datasets.append(int(mem_usage['usage'])) - if len(datasets) == 10: - datasets.append(int(mem_usage['usage'])) - del datasets[0] + if len(datasets_used) > 10: + while datasets_used: + del datasets_used[0] + if len(datasets_used) == 10: + break + if len(datasets_free) <= 9: + datasets_free.append(int(mem_usage['free'])) + if len(datasets_free) == 10: + datasets_free.append(int(mem_usage['free'])) + del datasets_free[0] + if len(datasets_used) <= 9: + datasets_used.append(int(mem_usage['usage'])) + if len(datasets_used) == 10: + datasets_used.append(int(mem_usage['usage'])) + del datasets_used[0] # Some fix division by 0 Chart.js - if len(datasets) == 10: - if sum(datasets) == 0: - datasets[9] += 0.1 - if sum(datasets) / 10 == datasets[0]: - datasets[9] += 0.1 + if len(datasets_free) == 10: + if sum(datasets_free) == 0: + datasets_free[9] += 0.1 + if sum(datasets_free) / 10 == datasets_free[0]: + datasets_free[9] += 0.1 memory = { 'labels': [""] * 10, @@ -271,15 +287,23 @@ def memusage(request): "strokeColor": "rgba(249,134,33,1)", "pointColor": "rgba(249,134,33,1)", "pointStrokeColor": "#fff", - "data": datasets + "data": datasets_used + }, + { + "fillColor": "rgba(43,214,66,0.5)", + "strokeColor": "rgba(43,214,66,1)", + "pointColor": "rgba(43,214,66,1)", + "pointStrokeColor": "#fff", + "data": datasets_free } ] } + cookie_memory = [datasets_free, datasets_used] data = json.dumps(memory) response = HttpResponse() response['Content-Type'] = "text/javascript" - response.cookies['memory_usage'] = datasets + response.cookies['memory_usage'] = cookie_memory response.write(data) return response