[PATCH] ch: Enable a logfile for ch guests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Create a logfile to capture output from cloud-hypervisor whenever a
guest is started.

Signed-off-by: Praveen K Paladugu <prapal@xxxxxxxxxxxxxxxxxxx>
---
 src/ch/ch_monitor.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c
index 3e49902791..7421a550b6 100644
--- a/src/ch/ch_monitor.c
+++ b/src/ch/ch_monitor.c
@@ -541,6 +541,9 @@ virCHMonitorNew(virDomainObj *vm, virCHDriverConfig *cfg)
     g_autoptr(virCHMonitor) mon = NULL;
     g_autoptr(virCommand) cmd = NULL;
     const char *socketdir = cfg->stateDir;
+    const char *logdir = cfg->logDir;
+    g_autofree char *logfile = NULL;
+
     int socket_fd = 0;
 
     if (virCHMonitorInitialize() < 0)
@@ -564,6 +567,14 @@ virCHMonitorNew(virDomainObj *vm, virCHDriverConfig *cfg)
         return NULL;
     }
 
+    logfile = g_strdup_printf("%s/%s.log", logdir, vm->def->name);
+    if (g_mkdir_with_parents(logdir, 0777) < 0) {
+        virReportSystemError(errno,
+                             _("Cannot create log directory '%1$s'"),
+                             logdir);
+        return NULL;
+    }
+
     if (g_mkdir_with_parents(cfg->saveDir, 0777) < 0) {
         virReportSystemError(errno,
                              _("Cannot create save directory '%1$s'"),
@@ -583,6 +594,9 @@ virCHMonitorNew(virDomainObj *vm, virCHDriverConfig *cfg)
 
     virCommandAddArg(cmd, "--api-socket");
     virCommandAddArgFormat(cmd, "fd=%d", socket_fd);
+    virCommandAddArg(cmd, "-v");
+    virCommandAddArg(cmd, "--log-file");
+    virCommandAddArgFormat(cmd, "%s", logfile);
     virCommandPassFD(cmd, socket_fd, VIR_COMMAND_PASS_FD_CLOSE_PARENT);
 
     /* launch Cloud-Hypervisor socket */
-- 
2.44.0



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux