view utils/tjps.py @ 20:2e6d2b6f31ef

Add main-class info to tjps review-thread: http://icedtea.classpath.org/pipermail/thermostat/2017-September/025032.html reviewed-by: jerboaa
author Mario Torre <neugens.limasoftware@gmail.com>
date Fri, 15 Sep 2017 11:43:52 +0200
parents ddccb0f61879
children
line wrap: on
line source

#!/bin/python
import json
import subprocess

DEFAULT_CREDENTIALS="client:client-pwd"
DEFAULT_URL="https://127.0.0.1:30000/jvms/0.0.1/tree?aliveOnly=true&include=jvmId%2Cagentid%2CsystemId%2CjvmPid%2CmainClass&limit=0"

if __name__ == "__main__":
    url = DEFAULT_URL
    s = subprocess.check_output(["curl", "-s", "-u", DEFAULT_CREDENTIALS, url, "-H", "\"accept: application/json\"",
                                 "-H", "\"content-type: application/json\"", "--insecure"])

    systems = {}
    data = json.loads(s)
    for jvm in data['response'][0]['jvms']:
        sid = jvm['systemId']
        id = jvm['jvmId']
        pid = jvm['jvmPid']
        main = jvm['mainClass']
        jvms = {}
        if systems.has_key(sid):
            jvms = systems[sid]
        else:
            systems[sid] = jvms

        jvms[id] = ([id, sid, pid, main])

    print ("pid\tvmId                                    systemId                                \tmain class").expandtabs(10)
    for sid in systems:
        vm = systems[sid]
        for vid in vm:
            print ("%s\t%s\t%s\t%s" % (vm[vid][2],vm[vid][0],vm[vid][1],vm[vid][3])).expandtabs(10)