[libvirt-users] libvirt connection timeout

Antoine COETSIER acoetsier at veepee.com
Mon May 16 12:55:21 UTC 2011


We have developped our own cloud manager for 2 years now and have been using libvirt to deploy and monitor xen domains with 2 daemons written in Python.

As  the number of domains increased and when one of them is down, it can ruin our monitoring capability, the daemon getting stuck with the defect connection.

Antoine Coetsier

-----Message d'origine-----
De : Matthias Bolte [mailto:matthias.bolte at googlemail.com] 
Envoyé : jeudi 12 mai 2011 19:23
À : Antoine COETSIER
Cc : libvirt-users at redhat.com; Julien MOREAU
Objet : Re: [libvirt-users] libvirt connection timeout

2011/5/12 Antoine COETSIER <acoetsier at veepee.com>:
> Hi all,
> I would like to set a short connection timeout (only some seconds) when
> using libvirt in my Python program instead of the long default one.

What do you mean by connection timeout? The time libvirt waits before
reporting an connection attempt (as in calling libvirt.open()) as
error? I'm not sure it that value is configurable?

Can you be more specific? For example what connection URI do you use
in libvirt.open() as the timeout handling will probably be transport

> I found the C function: virEventAddTimeoutFunc() in the C libvirt API here:
> http://libvirt.org/html/libvirt-libvirt.html#virEventAddTimeoutFunc
> and eventInvokeTimeoutCallback(timer, callback, opaque) in libvirt.py around
> the line#150 but I do not know how to use it. I did not find any example on
> the net.
> I tried this but I get a segmentation fault: :-(
> import libvirt
> def timeout_cb_d():
>     print 'Timeout !'
> try:
>     # try to set the libvirt timeout to 2 seconds:
>     t = libvirt.eventInvokeTimeoutCallback(2, timeout_cb_d, "from
> dom0_class")
> except:
>     ...
> Does anyone can give me a working example please?

eventInvokeTimeoutCallback has nothing to do with a connection
timeout. This function is related  to the event handling.
eventInvokeTimeoutCallback is there since 2008 and on a quick look it
seems like dead code that should be removed as I can't find any caller
for it.


More information about the libvirt-users mailing list