Example #1
0
def dbappproxy():
    appid = getRequestParam("appid", "")
    url = "http://%s:%s/proxy/%s/ws/v1/mapreduce/jobs/" % (config.rmhost, config.rmport, appid)
    jobInfo = util.getHttpJson(url)
    keyList = [
        "mapsTotal",
        "mapsPending",
        "mapsRunning",
        "failedMapAttempts",
        "killedMapAttempts",
        "successfulMapAttempts",
        "reducesTotal",
        "reducesPending",
        "reducesRunning",
        "failedReduceAttempts",
        "killedReduceAttempts",
        "successfulReduceAttempts",
    ]
    if jobInfo:
        result = {}
        temp = jobInfo["jobs"]["job"][0]
        result["amTime"] = temp["elapsedTime"]
        for key in keyList:
            result[key] = temp[key]
        return json.dumps(result)
    else:
        result = {}
        result["amTime"] = "x"
        for key in keyList:
            result[key] = "x"
        return json.dumps(result)
Example #2
0
def dbappwaitting():
    url = ("http://%s:%s/ws/v1/cluster/apps?state=ACCEPTED" %
           (config.rmhost, config.rmport))
    waittingApp = util.getHttpJson(url)
    retult = {
        "waitting": waittingApp["apps"],
        "rmhost": config.rmhost,
        "rmport": config.rmport
    }
    return json.dumps(retult)
Example #3
0
 def getJobAllTask(self,jobid):
     url = ("http://%s:%s/ws/v1/history/mapreduce/jobs/%s/tasks"
            % (config.hshost,config.hsport,jobid))
     tasks = util.getHttpJson(url)
     if not tasks or not tasks.has_key('tasks') or not tasks['tasks'].has_key('task') :
         return
     for task in tasks['tasks']['task']:
         taskId = task['id']
         url = ("http://%s:%s/ws/v1/history/mapreduce/jobs/%s/tasks/%s/attempts"
            % (config.hshost,config.hsport,jobid,taskId))
         attempts = util.getHttpJson(url)
         if not attempts or not attempts.has_key('taskAttempts') \
             or not attempts['taskAttempts'].has_key('taskAttempt') :
             return
         for attempt in attempts['taskAttempts']['taskAttempt']:
             attemptId = attempt['id']
             url = ("http://%s:%s/ws/v1/history/mapreduce/jobs/%s/tasks/%s/attempts/%s/counters"
                % (config.hshost,config.hsport,jobid,taskId,attemptId))
             attemptCounter = util.getHttpJson(url)
             self.updateWithAttempt(attempt,attemptCounter)
Example #4
0
def dbapprunning():
    url = "http://%s:%s/ws/v1/cluster/apps?state=RUNNING" % (config.rmhost, config.rmport)
    runningApp = util.getHttpJson(url)
    queues = {}
    for app in runningApp["apps"]["app"]:
        queue = app["queue"]
        appid = app["id"]
        if not queues.has_key(queue):
            queues[queue] = {}
        queues[queue][appid] = app
    retult = {"queues": queues, "rmhost": config.rmhost, "rmport": config.rmport}
    return json.dumps(retult)
Example #5
0
 def getJobAllTask(self, jobid):
     url = ("http://%s:%s/ws/v1/history/mapreduce/jobs/%s/tasks" %
            (config.hshost, config.hsport, jobid))
     tasks = util.getHttpJson(url)
     if not tasks or not tasks.has_key(
             'tasks') or not tasks['tasks'].has_key('task'):
         return
     for task in tasks['tasks']['task']:
         taskId = task['id']
         url = (
             "http://%s:%s/ws/v1/history/mapreduce/jobs/%s/tasks/%s/attempts"
             % (config.hshost, config.hsport, jobid, taskId))
         attempts = util.getHttpJson(url)
         if not attempts or not attempts.has_key('taskAttempts') \
             or not attempts['taskAttempts'].has_key('taskAttempt') :
             return
         for attempt in attempts['taskAttempts']['taskAttempt']:
             attemptId = attempt['id']
             url = (
                 "http://%s:%s/ws/v1/history/mapreduce/jobs/%s/tasks/%s/attempts/%s/counters"
                 % (config.hshost, config.hsport, jobid, taskId, attemptId))
             attemptCounter = util.getHttpJson(url)
             self.updateWithAttempt(attempt, attemptCounter)
Example #6
0
def dbapprunning():
    url = ("http://%s:%s/ws/v1/cluster/apps?state=RUNNING" %
           (config.rmhost, config.rmport))
    runningApp = util.getHttpJson(url)
    queues = {}
    for app in runningApp["apps"]["app"]:
        queue = app["queue"]
        appid = app['id']
        if not queues.has_key(queue):
            queues[queue] = {}
        queues[queue][appid] = app
    retult = {
        "queues": queues,
        "rmhost": config.rmhost,
        "rmport": config.rmport
    }
    return json.dumps(retult)
Example #7
0
def dbappproxy():
    appid = getRequestParam("appid", "")
    url = ("http://%s:%s/proxy/%s/ws/v1/mapreduce/jobs/" %
           (config.rmhost, config.rmport, appid))
    jobInfo = util.getHttpJson(url)
    keyList = [
        "mapsTotal", "mapsPending", "mapsRunning", "failedMapAttempts",
        "killedMapAttempts", "successfulMapAttempts", "reducesTotal",
        "reducesPending", "reducesRunning", "failedReduceAttempts",
        "killedReduceAttempts", "successfulReduceAttempts"
    ]
    if jobInfo:
        result = {}
        temp = jobInfo["jobs"]["job"][0]
        result["amTime"] = temp["elapsedTime"]
        for key in keyList:
            result[key] = temp[key]
        return json.dumps(result)
    else:
        result = {}
        result["amTime"] = "x"
        for key in keyList:
            result[key] = "x"
        return json.dumps(result)
Example #8
0
 def getAppList(self):
     url = (
         "http://%s:%s/ws/v1/cluster/apps?finishedTimeBegin=%d&finishedTimeEnd=%d"
         % (config.rmhost, config.rmport, (self.recordTime * 1000),
            (self.recordTime + self.interval) * 1000))
     return util.getHttpJson(url)
Example #9
0
 def getMetrics(self):
     url = ("http://%s:%s/ws/v1/cluster/metrics" %
            (config.rmhost, config.rmport))
     return util.getHttpJson(url)
Example #10
0
 def getJobHistory(self, jobid):
     url = ("http://%s:%s/ws/v1/history/mapreduce/jobs/%s" %
            (config.hshost, config.hsport, jobid))
     return util.getHttpJson(url)
Example #11
0
 def getAppList(self):
     url = ("http://%s:%s/ws/v1/cluster/apps?finishedTimeBegin=%d&finishedTimeEnd=%d" 
         % (config.rmhost,config.rmport,(self.recordTime*1000),(self.recordTime+self.interval)*1000))
     return util.getHttpJson(url)
Example #12
0
 def getMetrics(self):    
     url = ("http://%s:%s/ws/v1/cluster/metrics" % (config.rmhost,config.rmport))
     return util.getHttpJson(url)
Example #13
0
 def getJobHistory(self,jobid):
     url = ("http://%s:%s/ws/v1/history/mapreduce/jobs/%s" 
            % (config.hshost,config.hsport,jobid))
     return util.getHttpJson(url)
Example #14
0
def appRunningState():
    url = ("http://%s:%s/ws/v1/cluster/metrics" %
           (config.rmhost, config.rmport))
    metrics = util.getHttpJson(url)
    return json.dumps(metrics)
Example #15
0
def appRunningState():
    url = "http://%s:%s/ws/v1/cluster/metrics" % (config.rmhost, config.rmport)
    metrics = util.getHttpJson(url)
    return json.dumps(metrics)
Example #16
0
def dbappwaitting():
    url = "http://%s:%s/ws/v1/cluster/apps?state=ACCEPTED" % (config.rmhost, config.rmport)
    waittingApp = util.getHttpJson(url)
    retult = {"waitting": waittingApp["apps"], "rmhost": config.rmhost, "rmport": config.rmport}
    return json.dumps(retult)