2010/12/13 Osier Yang <jyang@xxxxxxxxxx>: > 于 2010年12月13日 13:43, Albert Hopkins 写道: >> >> I'm writing an app and using the Python bindings for libvirt. >> >> Everything is fine but, in some cases I need to call lookupByName(). >> There are a lot of times when the name will not exist, I trap the >> exception, however I still get this message printed to stderr: >> >> libvir: QEMU error : Domain not found: no domain with matching name >> 'foo' >> >> Is there any way to turn this off? This is a command-line program so >> the extra output makes the interface confusing. >> >> I've tried re-assigning sys.stderr before calling lookupByName(), but >> that doesn't seem to have any affect. >> > > actually there is a bug for this problem, it should be warning, but not > error, and will be fixed upstream soon. > > - Osier > Really? Why should this be a warning? When virDomainLookupByName() fails because there is no domain with the given name then we need to report an error. I don't see what could be changed there. Albert, libvirt's default error handler prints to stderr, you can override it like this: import libvirt def errorHandler(ctx, err): pass libvirt.registerErrorHandler(errorHandler, None) Matthias