예제 #1
0
 def __init__(self, django_settings, connect_redis=True):
     self.django_settings = django_settings
     self.poll_interval = 3  # 每3秒进行一次全局轮询,也是主机存活监测时间
     self.config_update_interval = 120  # 每120s重新从数据库加载一次配置数据
     self.config_last_loading_time = time.time()
     self.global_monitor_dic = {}
     self.exit_flag = False
     if connect_redis:
         self.redis = redis_conn.redis_conn(django_settings)
예제 #2
0
 def __init__(self, django_settings, connect_redis=True):
     self.django_settings = django_settings
     self.poll_interval = 0.5
     self.config_update_interval = 120
     self.config_last_loading_time = time.time()
     self.global_monitor_dic = {}
     self.exit_flag = False
     if connect_redis:
         self.redis = redis_conn.redis_conn(django_settings)
예제 #3
0
 def __init__(self,django_settings):
     self.django_settings = django_settings
     self.redis = redis_conn.redis_conn(self.django_settings)
     self.alert_counters ={} #纪录每个action的触发报警次数
     alert_counters = {
         1: {2:{'counter':0,'last_alert':None},
             4:{'counter':1,'last_alert':None}},  #k是action id, {2:0,3:2}这里面的k是主机id,value是报警次数
         #2: {2:0},
     }
예제 #4
0
 def __init__(self, django_settings, connect_redis=True):
     self.django_settings = django_settings
     self.poll_interval = 0.5
     self.config_update_interval = 120
     self.config_last_loading_time = time.time()
     self.global_monitor_dic = {}
     self.exit_flag = False
     if connect_redis:
         self.redis = redis_conn.redis_conn(django_settings)
예제 #5
0
 def __init__(self,django_settings):
     self.django_settings = django_settings
     self.redis = redis_conn.redis_conn(self.django_settings)
     self.alert_counters ={} #纪录每个action的触发报警次数
     alert_counters = {
         1: {2:{'counter':0,'last_alert':None},
             4:{'counter':1,'last_alert':None}},  #k是action id, {2:0,3:2}这里面的k是主机id,value是报警次数
         #2: {2:0},
     }
예제 #6
0
 def __init__(self, django_settings, connect_redis=True):
     self.django_settings = django_settings
     self.poll_interval = 3  # 3秒进行一次全局轮训
     self.config_update_interval = 120  # 设置120秒的更新间隔
     self.config_last_loading_time = time.time()  # 用当前时间作为最新的检测时间
     self.global_monitor_dic = {}  # 初始化一个全局字典用于存储所有监控主机
     self.exit_flag = False
     if connect_redis:
         self.redis = redis_conn.redis_conn(django_settings)
예제 #7
0
 def __init__(self, django_settings, connect_redis=True):
     self.django_settings = django_settings
     self.poll_interval = 3  #每3秒进行一次全局轮训
     self.config_update_interval = 120  #每120s重新从数据库加载一次配置数据
     self.config_last_loading_time = time.time()
     self.global_monitor_dic = {
         #"h1":{"serivces":{"cpu":[1313],"disk":[333]}}
     }
     self.exit_flag = False
     if connect_redis:
         self.redis = redis_conn.redis_conn(django_settings)
예제 #8
0
 def __init__(self, django_settings):
     self.django_settings = django_settings
     self.redis = redis_conn.redis_conn(self.django_settings)
     self.alert_counters = {}  #纪录每个action的触发报警次数
     '''alert_counters = {
예제 #9
0
#_*_coding:utf-8_*_
from django.shortcuts import render, HttpResponse
from monitor import models
from monitor.backends import redis_conn
from MyMonitor import settings
from django.views.decorators.csrf import csrf_exempt
from backends import data_processer
import json
import docker
import time
from backends import alert

# Create your views here.

REDIS_OBJ = redis_conn.redis_conn(settings)


def index(request):
    # print(request.user.userprofile.name)

    # return render(request, 'base.html')
    return render(request, 'monitor/highchart_test.html')


def host_list(request):
    host_objs = models.Host.objects.all()
    return render(request, 'monitor/host_list.html', {'host_list': host_objs})


def host_detail(request, host_id):
    host = models.Host.objects.get(id=host_id)
예제 #10
0
from  CrazyMonitor import settings
import json,time
# Create your views here.
from  monitor.serializer import  ClientHandler,get_host_triggers
import json
from monitor.backends import redis_conn
from monitor.backends import data_optimization
from monitor import models
from monitor.backends import data_processing
from monitor import serializer
from monitor import graphs




REDIS_OBJ = redis_conn.redis_conn(settings)

def dashboard(request):

    return render(request,'monitor/dashboard.html')

def triggers(request):

    return render(request,'monitor/triggers.html')


def hosts(request):
    host_list = models.Host.objects.all()
    print("hosts:",host_list)
    return render(request,'monitor/hosts.html',{'host_list':host_list})
예제 #11
0
 def __init__(self,django_settings):
     self.django_settings = django_settings
     self.redis = redis_conn.redis_conn(self.django_settings)
예제 #12
0
 def __init__(self,django_settings):
     self.django_settings = django_settings
     self.redis = redis_conn.redis_conn(self.django_settings)
     self.alert_counters ={} #纪录每个action的触发报警次数
     '''alert_counters = {
예제 #13
0
 def __init__(self, django_settings):
     self.django_settings = django_settings
     self.redis = redis_conn.redis_conn(self.django_settings)
예제 #14
0
# _*_coding:utf8_*_
import os, json
import django
os.environ['DJANGO_SETTINGS_MODULE'] = 'cmdb.settings'
django.setup()

from monitor import models
from cmdb import settings
from monitor.backends import redis_conn
redis = redis_conn.redis_conn(settings)

host_obj = models.Host.objects.get(id=2)
print(host_obj)

# def get_services_data(cid=1, name='CPU'):
#     service_redis_key = "StatusData_%s_%s_latest" % (cid, name)
#     latest_data_point = redis.lrange(service_redis_key, -10, -1)
#     latest_data_point = [json.loads(i.decode()) for i in latest_data_point]
#     print(latest_data_point)
#     service_obj = models.Service.objects.get(name=name)
#     key_obj = service_obj.items.select_related()
#     res = {}
#     for key in key_obj:
#         data_list = []
#         data_dict = {}
#         key = str(key).split('.')[1]
#
#         for data in latest_data_point:
#             v, t_tmp = data
#             if 'data' not in v:
#                 data_list.append(v[key])