
On Wed, Dec 17, 2008 at 03:57:37PM +0000, Daniel P. Berrange wrote:
On Wed, Dec 17, 2008 at 04:06:38PM +0100, Daniel Veillard wrote:
In practice export LIBVIRT_DEBUG=1 export LIBVIRT_LOG_OUTPUTS="0:file:virsh.log" and then running virsh will accumulate all logging to the virsh.log file in the current directory.
This looks great.
Okay, I have now commited the updated patches, there is still one augeas file I need to update, some test to be fixed because the output is slightly different now and increase documentation.
One thing which I feel is somewhat incomplete is that it's impossible to remotely get debugging output from the libvirt daemon serving the requests. Currently all logs are also accumulated in a cyclic logging buffer, I would associate a dump function later to be hooked for example to a signal handler in the daemon. But I'm unsure we should allow dumping logging information to the remote end, probably not the whole set.
I've been wondering whether we should create an explicit tool for admin of the libvirtd daemon itself. Basically something for querying state, and performing operations wrt to the daemon for things outside the scope of the libvirt API. For example, something to get details of active client connections, and forceably drop a client. Being able to have an API to configure the log level / setup of the dameon would be a useful thing. We can easily layer this kind of thing in as another RPC protocol in parallel with the existing protocol, and have simple CLI tool libvirtd-admin. SQUID has a 'squidclient' tool and a CGI script for administration of the server itself.
You envision that configuration tool to be able to work remotely ? Why not make that part of libvirt API, basically it's not that different from current Node operations, or maybe isolate them in a separate include header... Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/