From d26d42b2fccfd4e76f6c9d3938a91b7e4eaadf52 Mon Sep 17 00:00:00 2001 From: Tim Laszlo Date: Thu, 18 Oct 2012 08:55:32 -0500 Subject: Switch from lockfile to PIDLockFile --- src/lib/Bcfg2/Reporting/Collector.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/lib/Bcfg2/Reporting') diff --git a/src/lib/Bcfg2/Reporting/Collector.py b/src/lib/Bcfg2/Reporting/Collector.py index b27a961fd..2214e775f 100644 --- a/src/lib/Bcfg2/Reporting/Collector.py +++ b/src/lib/Bcfg2/Reporting/Collector.py @@ -1,10 +1,10 @@ import atexit import daemon -import lockfile import logging import time import traceback import threading +from daemon.pidlockfile import PIDLockFile, PIDFileError import Bcfg2.Logger from Bcfg2.Reporting.Transport import load_transport_from_config, \ @@ -79,8 +79,14 @@ class ReportingCollector(object): if self.setup['daemon']: self.logger.debug("Daemonizing") - self.context.pidfile = lockfile.FileLock(self.setup['daemon']) - self.context.open() + try: + self.context.pidfile = PIDLockFile(self.setup['daemon']) + self.context.open() + except PIDFileError: + self.logger.error("Error writing pid file: %s" % + traceback.format_exc().splitlines()[-1]) + self.shutdown() + return self.logger.info("Starting daemon") self.transport.start_monitor(self) -- cgit v1.2.3-1-g7c22