[Engine-devel] ovirt engine sdk

Hi, I've written the following python program after configuring ovirt. from ovirtsdk.xml import params from ovirtsdk.api import API api=API(url='http://XYZ:80',username='ABC',password='123') print "\n**********************VMS************************\n" vmlist = api.vms.list() hostlist = api.hosts.list() evenlist = api.events.list(); for vm in vmlist: print vm.name,vm.memory,vm.id,vm.os.kernel,vm.cluster.id,vm.start_time print "\n**********************HOSTS ********************\n" for host in hostlist: print host.name #print "\n**********************EVENTS ********************\n" #for evt in evenlist: # print evt.description It prints the output as *********************VMS************************ fedora18 2147483648 3e4634b7-82a9-4c4f-8599-0f9092a9258e None 99408929-82cf-4dc7-a532-9d998063fa95 None testdtop1 536870912 c256a1d9-2e3f-42e8-9020-6d08d21d2d73 None 99408929-82cf-4dc7-a532-9d998063fa95 2013-01-23T09:59:36.726Z testvm1 268435456 f6b2a97d-34b2-4a62-adae-ac0504b96558 None 99408929-82cf-4dc7-a532-9d998063fa95 2013-01-23T09:55:06.727Z testvmfedora18 536870912 25c14ee6-65dd-4785-af0c-a8df3f87573f None 99408929-82cf-4dc7-a532-9d998063fa95 None **********************HOSTS ******************** omwin.ind.hp.com Now i want to get the statistics for each vm like the memory used and memory installed etc in python. How do i go about getting them ? Do we have something like a header file in C or C++ where i can see the member variables and then get the statistics ? Regards, Navin

Hi Navin, On 01/23/2013 01:54 PM, navin p wrote:
Hi, I've written the following python program after configuring ovirt.
from ovirtsdk.xml import params from ovirtsdk.api import API
api=API(url='http://XYZ:80',username='ABC',password='123')
print "\n**********************VMS************************\n"
vmlist = api.vms.list() hostlist = api.hosts.list() evenlist = api.events.list();
for vm in vmlist: print vm.name <http://vm.name>,vm.memory,vm.id <http://vm.id>,vm.os.kernel,vm.cluster.id <http://vm.cluster.id>,vm.start_time
print "\n**********************HOSTS ********************\n"
for host in hostlist: print host.name <http://host.name>
#print "\n**********************EVENTS ********************\n"
#for evt in evenlist: # print evt.description
It prints the output as
*********************VMS************************
fedora18 2147483648 3e4634b7-82a9-4c4f-8599-0f9092a9258e None 99408929-82cf-4dc7-a532-9d998063fa95 None testdtop1 536870912 c256a1d9-2e3f-42e8-9020-6d08d21d2d73 None 99408929-82cf-4dc7-a532-9d998063fa95 2013-01-23T09:59:36.726Z testvm1 268435456 f6b2a97d-34b2-4a62-adae-ac0504b96558 None 99408929-82cf-4dc7-a532-9d998063fa95 2013-01-23T09:55:06.727Z testvmfedora18 536870912 25c14ee6-65dd-4785-af0c-a8df3f87573f None 99408929-82cf-4dc7-a532-9d998063fa95 None
**********************HOSTS ********************
omwin.ind.hp.com <http://omwin.ind.hp.com>
Now i want to get the statistics for each vm like the memory used and memory installed etc in python. How do i go about getting them ?
vm object has statistics sub-collection, you can access it by: vm.statistics.list(),
Do we have something like a header file in C or C++ where i can see the member variables and then get the statistics ?
in python, you can see object's attributes by accessing __dict__/__getattr__/dir(object)/etc., vm.__dict__ will do the job for you, however i'd suggest you using some IDE (i'm using Eclipse + PyDev plugin), this way you'll be able accessing object attributes simply by Ctrl+SPACE auto-completion.
Regards, Navin
_______________________________________________ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
-- Michael Pasternak RedHat, ENG-Virtualization R&D

Hi Michael, Thanks for your help. On Wed, Jan 23, 2013 at 6:15 PM, Michael Pasternak <mpastern@redhat.com>wrote:
in python, you can see object's attributes by accessing __dict__/__getattr__/dir(object)/etc., vm.__dict__ will do the job for you, however i'd suggest you using some IDE (i'm using Eclipse + PyDev plugin), this way you'll be able accessing object attributes simply by Ctrl+SPACE auto-completion.
Do i have import something for Ctrl+SPACE to work ? It doesn't work for
me atleast for list attributes. for vm in vmlist: print vm.name,vm.memory,vm.id,vm.os.kernel,vm.cluster.id,vm.start_time #print help(vm.statistics.list()) vmslist = vm.statistics.list() for i in vmslist: print i.get_name() prints memory.installed memory.used cpu.current.guest cpu.current.hypervisor cpu.current.total but i need the values of memory.installed and memory.used . Also where do i get the Java SDK and jars ? I looked at maven but it was 1.0 version of SDK. Regards, Navin

On 01/23/2013 03:53 PM, navin p wrote:
Hi Michael,
Thanks for your help.
On Wed, Jan 23, 2013 at 6:15 PM, Michael Pasternak <mpastern@redhat.com <mailto:mpastern@redhat.com>> wrote:
in python, you can see object's attributes by accessing __dict__/__getattr__/dir(object)/etc., vm.__dict__ will do the job for you, however i'd suggest you using some IDE (i'm using Eclipse + PyDev plugin), this way you'll be able accessing object attributes simply by Ctrl+SPACE auto-completion.
Do i have import something for Ctrl+SPACE to work ? It doesn't work for me atleast for list attributes.
for vm in vmlist: print vm.name <http://vm.name>,vm.memory,vm.id <http://vm.id>,vm.os.kernel,vm.cluster.id <http://vm.cluster.id>,vm.start_time #print help(vm.statistics.list()) vmslist = vm.statistics.list() for i in vmslist: print i.get_name()
prints
memory.installed memory.used cpu.current.guest cpu.current.hypervisor cpu.current.total
but i need the values of memory.installed and memory.used .
statistic holders are complex types, you can fetch data by: i.unit // the unit of the holder data i.values.value[0].datum // actual data
Also where do i get the Java SDK and jars ? I looked at maven but it was 1.0 version of SDK.
central repo has 1.0.0.2-1, see [1], deployment details can be found at [2], wiki at [3]. [1] http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.ovirt.engine.sdk%22 [2] http://www.ovirt.org/Java-sdk#Maven_deployment [3] http://www.ovirt.org/Java-sdk
Regards, Navin
-- Michael Pasternak RedHat, ENG-Virtualization R&D
participants (2)
-
Michael Pasternak
-
navin p