~onehundredthirty/+junk/uwsgi-exp

« back to all changes in this revision

Viewing changes to django/uwsgi_admin/views.py

  • Committer: Leonid Borisenko
  • Date: 2010-12-15 22:50:19 UTC
  • mfrom: (0.1.1 upstream)
  • Revision ID: leo.borisenko@gmail.com-20101215225019-490bw8i9jjvwnmzy
New uWSGI release

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
import uwsgi
 
2
import time
 
3
from django.shortcuts import render_to_response
 
4
from django.template import RequestContext
 
5
from django.contrib.admin.views.decorators import staff_member_required
 
6
from django.core.urlresolvers import reverse
 
7
from django.http import HttpResponseRedirect
 
8
 
 
9
 
 
10
def index(request):
 
11
        workers = uwsgi.workers()
 
12
        total_load = time.time() - uwsgi.started_on
 
13
        for w in workers:
 
14
                w['load'] = (100 * (w['running_time']/1000))/total_load
 
15
                w['last_spawn_str'] = time.ctime(w['last_spawn'])
 
16
 
 
17
        return render_to_response('uwsgi.html', {'masterpid': uwsgi.masterpid(),
 
18
                                                'started_on': time.ctime(uwsgi.started_on),
 
19
                                                'buffer_size': uwsgi.buffer_size,
 
20
                                                'total_requests': uwsgi.total_requests(),
 
21
                                                'numproc': uwsgi.numproc,
 
22
                                                'workers': workers,
 
23
                                                }, RequestContext(request, {}))
 
24
index = staff_member_required(index)
 
25
 
 
26
def reload(request):
 
27
        if uwsgi.masterpid() > 0:
 
28
                uwsgi.reload()
 
29
                request.user.message_set.create(message="uWSGI reloaded")
 
30
        else:
 
31
                request.user.message_set.create(message="The uWSGI master process is not active")
 
32
 
 
33
        return HttpResponseRedirect(reverse(index))
 
34
 
 
35
reload = staff_member_required(reload)