mirror of
https://github.com/samuelclay/NewsBlur.git
synced 2025-08-05 16:58:59 +00:00
44 lines
1.6 KiB
Python
Executable file
44 lines
1.6 KiB
Python
Executable file
#!/srv/newsblur/venv/newsblur3/bin/python
|
|
from utils.munin.base import MuninGraph
|
|
import os
|
|
os.environ["DJANGO_SETTINGS_MODULE"] = "newsblur_web.settings"
|
|
import django
|
|
django.setup()
|
|
|
|
class NBMuninGraph(MuninGraph):
|
|
|
|
@property
|
|
def graph_config(self):
|
|
return {
|
|
'graph_category' : 'NewsBlur',
|
|
'graph_title' : 'NewsBlur DB Times',
|
|
'graph_vlabel' : 'Database times (seconds)',
|
|
'graph_args' : '-l 0',
|
|
'sql_avg.label' : 'SQL avg times (5m)',
|
|
'sql_avg.draw' : 'LINE1',
|
|
'mongo_avg.label' : 'Mongo avg times (5m)',
|
|
'mongo_avg.draw' : 'LINE1',
|
|
'redis_avg.label' :'Redis avg times (5m)',
|
|
'redis_avg.draw' : 'LINE1',
|
|
'task_sql_avg.label' : 'Task SQL avg times (5m)',
|
|
'task_sql_avg.draw' : 'LINE1',
|
|
'task_mongo_avg.label' : 'Task Mongo avg times (5m)',
|
|
'task_mongo_avg.draw' : 'LINE1',
|
|
'task_redis_avg.label' :'Task Redis avg times (5m)',
|
|
'task_redis_avg.draw' : 'LINE1',
|
|
}
|
|
|
|
def calculate_metrics(self):
|
|
from apps.statistics.models import MStatistics
|
|
|
|
return {
|
|
'sql_avg': MStatistics.get('latest_sql_avg'),
|
|
'mongo_avg': MStatistics.get('latest_mongo_avg'),
|
|
'redis_avg': MStatistics.get('latest_redis_avg'),
|
|
'task_sql_avg': MStatistics.get('latest_task_sql_avg'),
|
|
'task_mongo_avg': MStatistics.get('latest_task_mongo_avg'),
|
|
'task_redis_avg': MStatistics.get('latest_task_redis_avg'),
|
|
}
|
|
|
|
if __name__ == '__main__':
|
|
NBMuninGraph().run()
|