clean up/fix code for monitor views and urls.py

This commit is contained in:
Jonathan Math 2021-03-29 13:28:47 -05:00
parent 55a200a5b3
commit c4bd5cb40d
7 changed files with 26 additions and 21 deletions

View file

@ -8,16 +8,16 @@ urlpatterns = [
url(r'^app-servers?$', AppServers.as_view(), name="app_servers"), url(r'^app-servers?$', AppServers.as_view(), name="app_servers"),
url(r'^app-times?$', AppTimes.as_view(), name="app_times"), url(r'^app-times?$', AppTimes.as_view(), name="app_times"),
url(r'^classifiers?$', Classifiers.as_view(), name="classifiers"), url(r'^classifiers?$', Classifiers.as_view(), name="classifiers"),
url(r'^dbtimes?$', DbTimes.as_view(), name="db_times"), url(r'^db-times?$', DbTimes.as_view(), name="db_times"),
url(r'^errors?$', Errors.as_view(), name="errors"), url(r'^errors?$', Errors.as_view(), name="errors"),
url(r'^feed-counts?$', FeedCounts.as_view(), name="feed_counts"), url(r'^feed-counts?$', FeedCounts.as_view(), name="feed_counts"),
url(r'^feeds?$', Feeds.as_view(), name="feeds"), url(r'^feeds?$', Feeds.as_view(), name="feeds"),
url(r'^load_times?$', LoadTimes.as_view(), name="load_times"), url(r'^load-times?$', LoadTimes.as_view(), name="load_times"),
url(r'^stories?$', Stories.as_view(), name="stories"), url(r'^stories?$', Stories.as_view(), name="stories"),
url(r'^task-codes?$', TasksCodes.as_view(), name="task_codes"), url(r'^task-codes?$', TasksCodes.as_view(), name="task_codes"),
url(r'^task-pipeline?$', TasksPipeline.as_view(), name="task_pipeline"), url(r'^task-pipeline?$', TasksPipeline.as_view(), name="task_pipeline"),
url(r'^task_servers?$', TasksServers.as_view(), name="task_servers"), url(r'^task-servers?$', TasksServers.as_view(), name="task_servers"),
url(r'^task_times?$', TasksTimes.as_view(), name="task_times"), url(r'^task-times?$', TasksTimes.as_view(), name="task_times"),
url(r'^updates?$', Updates.as_view(), name="updates"), url(r'^updates?$', Updates.as_view(), name="updates"),
url(r'^users?$', Users.as_view(), name="users"), url(r'^users?$', Users.as_view(), name="users"),
] ]

View file

@ -7,9 +7,10 @@ class AppServers(View):
def get(self, request): def get(self, request):
servers = dict((("%s" % s['_id'].replace('-', ''), s['feeds']) for s in self.stats)) servers = dict((("%s" % s['_id'].replace('-', ''), s['feeds']) for s in self.stats))
servers['total'] = self.total[0]['feeds'] if self.total:
return JsonResponse(servers) servers['total'] = self.total[0]['feeds']
return JsonResponse(servers)
return JsonResponse({})
@property @property
def stats(self): def stats(self):
stats = settings.MONGOANALYTICSDB.nbanalytics.page_loads.aggregate([{ stats = settings.MONGOANALYTICSDB.nbanalytics.page_loads.aggregate([{
@ -28,10 +29,7 @@ class AppServers(View):
return list(stats) return list(stats)
@property @property
def total(self): def total(self):
import datetime
from django.conf import settings
stats = settings.MONGOANALYTICSDB.nbanalytics.page_loads.aggregate([{ stats = settings.MONGOANALYTICSDB.nbanalytics.page_loads.aggregate([{
"$match": { "$match": {
"date": { "date": {

View file

@ -1,12 +1,11 @@
from django.http import JsonResponse from django.http import JsonResponse
from django.views import View from django.views import View
from apps.rss_feeds.models import MStory, MStarredStory from apps.rss_feeds.models import MStory, MStarredStory
from apps.rss_feeds.models import MStory, MStarredStory
class Stories(View): class Stories(View):
def calculate_metrics(self, request): def get(self, request):
from apps.rss_feeds.models import MStory, MStarredStory
return JsonResponse({ return JsonResponse({
'stories': MStory.objects.count(), 'stories': MStory.objects.count(),
'starred_stories': MStarredStory.objects.count(), 'starred_stories': MStarredStory.objects.count(),

View file

@ -5,13 +5,13 @@ from django.views import View
class TasksCodes(View): class TasksCodes(View):
def get(self): def get(self, request):
servers = dict((("_%s" % s['_id'], s['feeds']) for s in self.stats)) servers = dict((("_%s" % s['_id'], s['feeds']) for s in self.stats))
return JsonResponse(servers) return JsonResponse(servers)
@property @property
def stats(self, request): def stats(self):
stats = settings.MONGOANALYTICSDB.nbanalytics.feed_fetches.aggregate([{ stats = settings.MONGOANALYTICSDB.nbanalytics.feed_fetches.aggregate([{
"$match": { "$match": {
"date": { "date": {

View file

@ -7,7 +7,7 @@ from django.views import View
class TasksPipeline(View): class TasksPipeline(View):
def get(self, request): def get(self, request):
return self.stats return JsonResponse(self.stats)
@property @property
def stats(self): def stats(self):
@ -28,5 +28,9 @@ class TasksPipeline(View):
"total": {"$avg": "$total"}, "total": {"$avg": "$total"},
}, },
}]) }])
stats = list(stats)
return list(stats)[0] if stats:
print(stats)
return list(stats)[0]
else:
return {}

View file

@ -8,7 +8,10 @@ class TasksServers(View):
def get(self, request): def get(self, request):
servers = dict((("%s" % s['_id'].replace('-', ''), s['feeds']) for s in self.stats)) servers = dict((("%s" % s['_id'].replace('-', ''), s['feeds']) for s in self.stats))
servers['total'] = self.total[0]['feeds'] if self.total:
servers['total'] = self.total[0]['feeds']
else:
servers['total'] = {}
return JsonResponse(servers) return JsonResponse(servers)
@property @property

View file

@ -1,6 +1,7 @@
import redis import redis
from django.http import JsonResponse from django.http import JsonResponse
from django.conf import settings
from django.views import View from django.views import View
class Updates(View): class Updates(View):