Extend the log file name that will be passed to lxc-start by adding the instance uuid to keep and ensure log file isolation between old and new instances which have the same instance name.
Signed-off-by: Yuto KAWAMURA(kawamuray) <[email protected]> --- lib/hypervisor/hv_lxc.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/hypervisor/hv_lxc.py b/lib/hypervisor/hv_lxc.py index 3a0cccf..eff07af 100644 --- a/lib/hypervisor/hv_lxc.py +++ b/lib/hypervisor/hv_lxc.py @@ -119,11 +119,14 @@ class LXCHypervisor(hv_base.BaseHypervisor): return utils.PathJoin(cls._ROOT_DIR, instance_name + ".conf") @classmethod - def _InstanceLogFilePath(cls, instance_name): + def _InstanceLogFilePath(cls, instance): """Return the log file for an instance. + @type instance: L{objects.Instance} + """ - return utils.PathJoin(cls._ROOT_DIR, instance_name + ".log") + filename = "%s.%s.log" % (instance.name, instance.uuid) + return utils.PathJoin(cls._ROOT_DIR, filename) @classmethod def _InstanceStashFilePath(cls, instance_name): @@ -583,7 +586,7 @@ class LXCHypervisor(hv_base.BaseHypervisor): except errors.GenericError, err: raise HypervisorError("Creating instance directory failed: %s", str(err)) - log_file = self._InstanceLogFilePath(instance.name) + log_file = self._InstanceLogFilePath(instance) if not os.path.exists(log_file): try: utils.WriteFile(log_file, data="", mode=constants.SECURE_FILE_MODE) -- 1.8.5.5
