def getServerGroupList(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) group_type = request.POST['group_type'] all_group = "2" if group_type==all_group: result = vo_Server.objects.all() else: result = vo_Server.objects.filter(gmond_install_flag=group_type) #page = request.POST.get('page', '1') page = request.POST.get('page', '1') CobjectPaginator = ObjectPaginator(result,ALERT_HISTORY_NUMBER_OF_PAGE) result = CobjectPaginator.getObjectInPage(page) page = CobjectPaginator.getCurrentPage() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setQuerysetData(result,excludeFields=()) jsonResponse.addExtra("page",str(page)) return HttpResponse(jsonResponse.toJson())
def newTask(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) task = vo_Task.objects.addTaskFromRequest(request) task_type = request.POST['task_type'] task_data = request.POST['task_data'] print "---0" taskItems = TaskItems(task_id=task.id, task_type=task_type, task_data=task_data, url=API_SERVER, port=API_PORT) print "---1" taskItemBuilder = TaskItemBuilder(request, taskItems) taskItemBuilder.build() print "---2" taskHandler = RemoteTaskManager(taskItems) taskHandler.start() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({"task_id": task.id}) return HttpResponse(jsonResponse.toJson())
def getDashboardTargetList(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) clusterName = const.SUMMARY_NODE metric = ClusterNodes() builder = FileMetricDBBuilder() builder.buildMetricInstance(metric,const.RRD_PATH) clusterNode = metric.getClusterByName(clusterName) #filteredSources = clusterNode.dataSources.filter("rack") #dictData = filteredSources.getNameAsDict('dataSource') #clusterNode.dataSources.setFilter("rack") #dictData = clusterNode.dataSources.getNameAsDict('dataSource') dictData = filterDashboardDataSources(clusterNode.dataSources,'dataSource') dictData['cluster'] = const.SUMMARY_NODE jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setData(dictData) return HttpResponse(jsonResponse.toJson())
def newTask(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) task = vo_Task.objects.addTaskFromRequest(request) task_type = request.POST["task_type"] task_data = request.POST["task_data"] print "---0" taskItems = TaskItems(task_id=task.id, task_type=task_type, task_data=task_data, url=API_SERVER, port=API_PORT) print "---1" taskItemBuilder = TaskItemBuilder(request, taskItems) taskItemBuilder.build() print "---2" taskHandler = RemoteTaskManager(taskItems) taskHandler.start() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({"task_id": task.id}) return HttpResponse(jsonResponse.toJson())
def getAlertHistory(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) startTime = getDjangoStyleDateTime(request.POST['startTime']) endTime = getDjangoStyleDateTime(request.POST['endTime']) server_id = request.POST.get('server_id', '') result = vo_AlertHistory.objects.select_related().filter(regdate__gte=startTime,regdate__lte=endTime,user=request.user) server_id = request.POST.get('server_id', '') if server_id: result = result.filter(server=server_id) page = request.POST.get('page', '1') CobjectPaginator = ObjectPaginator(result,ALERT_HISTORY_NUMBER_OF_PAGE) result = CobjectPaginator.getObjectInPage(page) page = CobjectPaginator.getCurrentPage() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setQuerysetData(result,excludeFields=(),relations=('plugin','alert')) jsonResponse.addExtra("page",str(page)) return HttpResponse(jsonResponse.toJson())
def getDashboardTargetList(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) clusterName = const.SUMMARY_NODE metric = ClusterNodes() builder = FileMetricDBBuilder() builder.buildMetricInstance(metric, const.RRD_PATH) clusterNode = metric.getClusterByName(clusterName) # filteredSources = clusterNode.dataSources.filter("rack") # dictData = filteredSources.getNameAsDict('dataSource') # clusterNode.dataSources.setFilter("rack") # dictData = clusterNode.dataSources.getNameAsDict('dataSource') dictData = filterDashboardDataSources(clusterNode.dataSources, "dataSource") dictData["cluster"] = const.SUMMARY_NODE jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData(dictData) return HttpResponse(jsonResponse.toJson())
def getAlertHistory(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) startTime = getDjangoStyleDateTime(request.POST["startTime"]) endTime = getDjangoStyleDateTime(request.POST["endTime"]) server_id = request.POST.get("server_id", "") result = vo_AlertHistory.objects.select_related().filter( regdate__gte=startTime, regdate__lte=endTime, user=request.user ) server_id = request.POST.get("server_id", "") if server_id: result = result.filter(server=server_id) page = request.POST.get("page", "1") CobjectPaginator = ObjectPaginator(result, ALERT_HISTORY_NUMBER_OF_PAGE) result = CobjectPaginator.getObjectInPage(page) page = CobjectPaginator.getCurrentPage() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setQuerysetData(result, excludeFields=(), relations=("plugin", "alert")) jsonResponse.addExtra("page", str(page)) return HttpResponse(jsonResponse.toJson())
def addServer(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oServer = vo_Server.objects.addServerFromRequest(request) jsonResponse = jsonResponseBuilder() if not oServer: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to add server to data model") return HttpResponse(jsonResponse.toJson()) apiName = "getServerDetail" apiData = "server_id" + const.APIDATA_EQUAL + str(oServer.id) # print 'bond' # print apiName # print apiData jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData( { "server_uid": oServer.id, "server_ip": oServer.ip, "server_version": oServer.server_version, "apiname": apiName, "apidata": apiData, } ) return HttpResponse(jsonResponse.toJson())
def updateUserConf(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oUser = User.objects.get(id=request.user.id) oProfile = oUser.get_profile() oProfile.rrd_path = request.POST.get("rrd_path", oProfile.rrd_path) oProfile.api_server = request.POST.get("api_server", oProfile.api_server) oProfile.api_port = request.POST.get("api_port", oProfile.api_port) oProfile.gmetad_ip = request.POST.get("gmetad_ip", oProfile.gmetad_ip) oProfile.gmetad_port = request.POST.get("gmetad_port", oProfile.gmetad_port) oProfile.grahp_realtime_interval = request.POST.get("grahp_realtime_interval", oProfile.grahp_realtime_interval) oProfile.grahp_grid_outlineWidth = request.POST.get("grahp_grid_outlineWidth", oProfile.grahp_grid_outlineWidth) oProfile.grahp_line_fill = request.POST.get("grahp_line_fill", oProfile.grahp_line_fill) oProfile.grahp_line_color = request.POST.get("grahp_line_color", oProfile.grahp_line_color) oProfile.grahp_grid_color = request.POST.get("grahp_grid_color", oProfile.grahp_grid_color) oProfile.save() UserConfig(request.user).changeConfig() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) # jsonResponse.setQuerysetData(oUser,excludeFields=()) return HttpResponse(jsonResponse.toJson())
def updateUserConf(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oUser = User.objects.get(id=request.user.id) oProfile = oUser.get_profile() oProfile.rrd_path = request.POST.get('rrd_path',oProfile.rrd_path); oProfile.api_server = request.POST.get('api_server',oProfile.api_server); oProfile.api_port = request.POST.get('api_port',oProfile.api_port); oProfile.gmetad_ip = request.POST.get('gmetad_ip',oProfile.gmetad_ip); oProfile.gmetad_port = request.POST.get('gmetad_port',oProfile.gmetad_port); oProfile.grahp_realtime_interval = request.POST.get('grahp_realtime_interval',oProfile.grahp_realtime_interval); oProfile.grahp_grid_outlineWidth = request.POST.get('grahp_grid_outlineWidth',oProfile.grahp_grid_outlineWidth); oProfile.grahp_line_fill = request.POST.get('grahp_line_fill',oProfile.grahp_line_fill); oProfile.grahp_line_color = request.POST.get('grahp_line_color',oProfile.grahp_line_color); oProfile.grahp_grid_color = request.POST.get('grahp_grid_color',oProfile.grahp_grid_color); oProfile.save() UserConfig(request.user).changeConfig() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) #jsonResponse.setQuerysetData(oUser,excludeFields=()) return HttpResponse(jsonResponse.toJson())
def getAlertDetail(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) result = vo_Alert.objects.select_related().filter(id=request.POST['alert_id'],user=request.user) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setQuerysetData(result,excludeFields=(),relations=('plugin',)) return HttpResponse(jsonResponse.toJson())
def getUserFavoriteChartList(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) result = vo_Favorite.objects.filter(user=request.user) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setQuerysetData(result,excludeFields=("regdate","updatedate")) return HttpResponse(jsonResponse.toJson())
def addTaskStatus(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) taskStatus = vo_TaskStatus.objects.addTaskStatusFromRequest(request) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({"taskStatus_id": taskStatus.id}) return HttpResponse(jsonResponse.toJson())
def getTaskList(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) result = vo_Task.objects.all() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setQuerysetData(result, excludeFields=()) return HttpResponse(jsonResponse.toJson())
def addPlugin(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) plugin = vo_Plugin.objects.addFromHTTPRequest(request) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({"plugin_id": plugin.id}) return HttpResponse(jsonResponse.toJson())
def getUserFavoriteChartList(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) result = vo_Favorite.objects.filter(user=request.user) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setQuerysetData(result, excludeFields=("regdate", "updatedate")) return HttpResponse(jsonResponse.toJson())
def updateGmetadConf(request): confFile = ConfFile() confFile.setPath("/etc/ganglia/gmetad.conf") gmetad_conf = request.POST.get("conf") confFile.write(gmetad_conf) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def getAlertDetail(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) result = vo_Alert.objects.select_related().filter(id=request.POST["alert_id"], user=request.user) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setQuerysetData(result, excludeFields=(), relations=("plugin",)) return HttpResponse(jsonResponse.toJson())
def updateGmetadConf(request): confFile = ConfFile() confFile.setPath('/etc/ganglia/gmetad.conf') gmetad_conf = request.POST.get('conf') confFile.write(gmetad_conf) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def updateGmondConf(request): confFile = ConfFile() dataPath = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', 'static/temp')) confFile.setPath(dataPath+'/gmond.conf') gmond_conf = request.POST.get('conf') confFile.write(gmond_conf) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def getServerDetail(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) server_id = request.POST["server_id"] result = vo_Server.objects.filter(id=server_id) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setQuerysetData(result, excludeFields=()) return HttpResponse(jsonResponse.toJson())
def getAvailablePluginList(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) result = vo_Plugin.objects.all() #for item in result: # logInfo("item="+item.plugin_name) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setQuerysetData(result,excludeFields=()) return HttpResponse(jsonResponse.toJson())
def getAvailablePluginList(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) result = vo_Plugin.objects.all() # for item in result: # logInfo("item="+item.plugin_name) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setQuerysetData(result, excludeFields=()) return HttpResponse(jsonResponse.toJson())
def updateGmondConf(request): confFile = ConfFile() dataPath = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "static/temp")) confFile.setPath(dataPath + "/gmond.conf") gmond_conf = request.POST.get("conf") confFile.write(gmond_conf) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def getServerDetail(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) server_id = request.POST['server_id'] result = vo_Server.objects.filter(id=server_id) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setQuerysetData(result,excludeFields=()) return HttpResponse(jsonResponse.toJson())
def removeUserFavoriteChart(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) ret = vo_Favorite.objects.deleteFavoriteFromRequest(request) jsonResponse = jsonResponseBuilder() if not ret: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to delete favorite to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def removeUserFavoriteChart(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) ret = vo_Favorite.objects.deleteFavoriteFromRequest(request) jsonResponse = jsonResponseBuilder() if not ret: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to delete favorite to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def editServer(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oServer = vo_Server.objects.editServerFromRequest(request) jsonResponse = jsonResponseBuilder() if not oServer: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to edit server to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def editServer(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oServer = vo_Server.objects.editServerFromRequest(request) jsonResponse = jsonResponseBuilder() if not oServer: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to edit server to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def deleteEvent(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) ret = vo_Event.objects.deleteEventFromRequest(request) jsonResponse = jsonResponseBuilder() if not ret: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to delete server to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def deleteEvent(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) ret = vo_Event.objects.deleteEventFromRequest(request) jsonResponse = jsonResponseBuilder() if not ret: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to delete server to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) return HttpResponse(jsonResponse.toJson())
def registerUserFavoriteChart(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) favorite = vo_Favorite.objects.addFavoriteFromRequest(request) jsonResponse = jsonResponseBuilder() if not favorite: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to add favorite to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setData({"uid":favorite.id}) return HttpResponse(jsonResponse.toJson())
def editUserProfile(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oUser = User.objects.get(id=request.user.id) oProfile = oUser.get_profile() oProfile.grahp_realtime_interval = request.POST.get('grahp_realtime_interval',oProfile.grahp_realtime_interval); oProfile.save() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) #jsonResponse.setQuerysetData(oUser,excludeFields=()) return HttpResponse(jsonResponse.toJson())
def registerUserFavoriteChart(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) favorite = vo_Favorite.objects.addFavoriteFromRequest(request) jsonResponse = jsonResponseBuilder() if not favorite: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to add favorite to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({"uid": favorite.id}) return HttpResponse(jsonResponse.toJson())
def editAlert(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oAlert = vo_Alert.objects.editAlertFromRequest(request) jsonResponse = jsonResponseBuilder() if not oAlert: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to alert server to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setData({"alert_uid":oAlert.id}) return HttpResponse(jsonResponse.toJson())
def addEvent(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oEvent = vo_Event.objects.addEventFromRequest(request) jsonResponse = jsonResponseBuilder() if not oEvent: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to add event to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({"event_id": oEvent.id}) return HttpResponse(jsonResponse.toJson())
def addAlertHistory(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oAlertHistory = vo_AlertHistory.objects.addAlertHistoryFromRequest(request) jsonResponse = jsonResponseBuilder() if not oAlertHistory: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to add alert history to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({}) return HttpResponse(jsonResponse.toJson())
def editUserProfile(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oUser = User.objects.get(id=request.user.id) oProfile = oUser.get_profile() oProfile.grahp_realtime_interval = request.POST.get("grahp_realtime_interval", oProfile.grahp_realtime_interval) oProfile.save() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) # jsonResponse.setQuerysetData(oUser,excludeFields=()) return HttpResponse(jsonResponse.toJson())
def editAlert(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oAlert = vo_Alert.objects.editAlertFromRequest(request) jsonResponse = jsonResponseBuilder() if not oAlert: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to alert server to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({"alert_uid": oAlert.id}) return HttpResponse(jsonResponse.toJson())
def getData(request): def makeJSON(series_list,event_list): series_data = [] for series in series_list: timestamps = range(series.start, series.end, series.step) #datapoints = zip(timestamps,series) datapoints = map(dict, map(lambda t:zip(('x','y'),t), zip(timestamps,series))) series_data.append( dict(target=series.getFullName(), events=event_list, datapoints=datapoints) ) return series_data if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) target = str(request.POST['target']) startTime = str(request.POST['startTime']) endTime = str(request.POST['endTime']) respFormat = str(request.POST['format'].strip()) """ target = "mhr/dev.local/cpu_system.rrd" startTime = "2012:09:05:00:00" endTime = "2012:09:07:00:00" """ logInfo("target="+target+",start="+startTime+",end="+endTime) metric = ClusterNodes() builder = RequestMetricDBBuilder() builder.buildMetricInstance(metric,target) rrdfetcher = RRDDataFetcher() seriesList = rrdfetcher.fetch(metric,startTime,endTime) events = EventManager() eventList = events.getEventDataForChart(request,seriesList) #print "eventData=",eventData jsonResult = makeJSON(seriesList,eventList) #jsonResult = json.dumps(dictData,sort_keys=True,indent=4) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setData(jsonResult) return HttpResponse(jsonResponse.toJson())
def queryTaskStatus(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) task_id = request.POST["task_id"] status_id = request.POST["status_id"] if status_id == "-1": result = vo_TaskStatus.objects.filter(task_id=task_id) else: result = vo_TaskStatus.objects.filter(task_id=task_id).filter(id > status_id) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setQuerysetData(result, excludeFields=()) return HttpResponse(jsonResponse.toJson())
def addEvent(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oEvent = vo_Event.objects.addEventFromRequest(request) jsonResponse = jsonResponseBuilder() if not oEvent: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to add event to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setData({"event_id":oEvent.id}) return HttpResponse(jsonResponse.toJson())
def addAlertHistory(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oAlertHistory = vo_AlertHistory.objects.addAlertHistoryFromRequest(request) jsonResponse = jsonResponseBuilder() if not oAlertHistory: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to add alert history to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setData({}) return HttpResponse(jsonResponse.toJson())
def addAbnormalStat(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oStat = vo_AbnormalStat.objects.addAbnormalStatFromRequest(request) # logInfo("addServerDown : year="+oServerDown.year+",month="+oServerDown.month+",day="+oServerDown.day) jsonResponse = jsonResponseBuilder() if not oStat: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to add abnormal stat to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({}) return HttpResponse(jsonResponse.toJson())
def addAlert(request): # logInfo("api.addAlert") if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) # oAlert = vo_Alert.objects.addAlertFromRequest(request) oAlert = 123 jsonResponse = jsonResponseBuilder() if not oAlert: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR, "Fail to add alert to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData({}) return HttpResponse(jsonResponse.toJson())
def addAbnormalStat(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oStat = vo_AbnormalStat.objects.addAbnormalStatFromRequest(request) #logInfo("addServerDown : year="+oServerDown.year+",month="+oServerDown.month+",day="+oServerDown.day) jsonResponse = jsonResponseBuilder() if not oStat: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to add abnormal stat to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setData({}) return HttpResponse(jsonResponse.toJson())
def getData(request): def makeJSON(series_list, event_list): series_data = [] for series in series_list: timestamps = range(series.start, series.end, series.step) # datapoints = zip(timestamps,series) datapoints = map(dict, map(lambda t: zip(("x", "y"), t), zip(timestamps, series))) series_data.append(dict(target=series.getFullName(), events=event_list, datapoints=datapoints)) return series_data if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) target = str(request.POST["target"]) startTime = str(request.POST["startTime"]) endTime = str(request.POST["endTime"]) respFormat = str(request.POST["format"].strip()) """ target = "mhr/dev.local/cpu_system.rrd" startTime = "2012:09:05:00:00" endTime = "2012:09:07:00:00" """ logInfo("target=" + target + ",start=" + startTime + ",end=" + endTime) metric = ClusterNodes() builder = RequestMetricDBBuilder() builder.buildMetricInstance(metric, target) rrdfetcher = RRDDataFetcher() seriesList = rrdfetcher.fetch(metric, startTime, endTime) events = EventManager() eventList = events.getEventDataForChart(request, seriesList) # print "eventData=",eventData jsonResult = makeJSON(seriesList, eventList) # jsonResult = json.dumps(dictData,sort_keys=True,indent=4) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setData(jsonResult) return HttpResponse(jsonResponse.toJson())
def queryTaskStatus(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) task_id = request.POST['task_id'] status_id = request.POST['status_id'] if status_id == "-1": result = vo_TaskStatus.objects.filter(task_id=task_id) else: result = vo_TaskStatus.objects.filter(task_id=task_id).filter( id > status_id) jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setQuerysetData(result, excludeFields=()) return HttpResponse(jsonResponse.toJson())
def addServer(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) oServer = vo_Server.objects.addServerFromRequest(request) jsonResponse = jsonResponseBuilder() if not oServer: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to add server to data model") return HttpResponse(jsonResponse.toJson()) apiName = "getServerDetail" apiData = "server_id" + const.APIDATA_EQUAL + str(oServer.id) #print 'bond' #print apiName #print apiData jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setData({"server_uid":oServer.id,"server_ip":oServer.ip,"server_version":oServer.server_version,"apiname": apiName,"apidata":apiData}) return HttpResponse(jsonResponse.toJson())
def addAlert(request): #logInfo("api.addAlert") if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) #oAlert = vo_Alert.objects.addAlertFromRequest(request) oAlert = 123 jsonResponse = jsonResponseBuilder() if not oAlert: jsonResponse.setStatus(const.RESPONSE_CODE_ERROR,"Fail to add alert to data model") return HttpResponse(jsonResponse.toJson()) jsonResponse.setStatus(const.RESPONSE_CODE_OK,const.RESPONSE_OK) jsonResponse.setData({}) return HttpResponse(jsonResponse.toJson())
def getServerGroupList(request): if not validateHTTPRequest(request): return HttpResponse(badRequestResponse()) group_type = request.POST["group_type"] all_group = "2" if group_type == all_group: result = vo_Server.objects.all() else: result = vo_Server.objects.filter(gmond_install_flag=group_type) # page = request.POST.get('page', '1') page = request.POST.get("page", "1") CobjectPaginator = ObjectPaginator(result, ALERT_HISTORY_NUMBER_OF_PAGE) result = CobjectPaginator.getObjectInPage(page) page = CobjectPaginator.getCurrentPage() jsonResponse = jsonResponseBuilder() jsonResponse.setStatus(const.RESPONSE_CODE_OK, const.RESPONSE_OK) jsonResponse.setQuerysetData(result, excludeFields=()) jsonResponse.addExtra("page", str(page)) return HttpResponse(jsonResponse.toJson())