def __init__(self, moduleName, options):
     self.logger = logging.getLogger(self.__class__.__name__)
     self.moduleName=moduleName
     self.options = options
     pidFile = "%s/%s.pid" % (self.options.pidDir, self.moduleName)
     self.initializeDataModel()
     Daemon.__init__(self, pidFile)
     self.logger.debug('deamon initialized')
 def __init__(self, moduleName, options):
     self.moduleName=moduleName
     self.options = options
     self.logger = logging.getLogger(self.__class__.__name__)
     pidFile = "%s/%s.pid" % (self.options.pidDir, self.moduleName)
     Daemon.__init__(self, pidFile)
Esempio n. 3
0
def foo(path):
    loop = asyncio.new_event_loop()
    asyncio.set_event_loop(loop)

    d = Daemon(path)
    d.start()
Esempio n. 4
0
def manage_local_service(args):
    daemon = Daemon()
    daemon.set_stdout(os.devnull).set_stderr(os.devnull)

    if args.role == 'collector':
        from detector.service import service_main

        daemon.set_pid_file(
            os.path.join(CURRENT_DIRNAME, './tmp/collector.pid'))
        daemon.set_function(service_main)
    elif args.role == 'monitor':
        from detector.metric_detector import detector_main

        daemon.set_pid_file(os.path.join(CURRENT_DIRNAME,
                                         './tmp/detector.pid'))
        daemon.set_function(detector_main)
    elif args.role == 'agent':
        from agent.metric_agent import agent_main

        pre_check = check_collector() and check_db_alive(
            port=config.get('agent', 'db_port'))
        if args.mode == 'start' and not pre_check:
            print('FATAL: Agent process failed to start.',
                  file=sys.stderr,
                  flush=True)
            return

        daemon.set_pid_file(os.path.join(CURRENT_DIRNAME, './tmp/agent.pid'))
        daemon.set_function(agent_main)
    else:
        print('FATAL: incorrect parameter.')
        print(usage())
        return

    if args.mode == 'start':
        if args.role == 'collector':
            listen_port = config.get('server', 'listen_port')
            check_port_occupancy(listen_port)
        daemon.start()
    else:
        daemon.stop()
Esempio n. 5
0
 def __init__(self, moduleName, options):
     self.moduleName = moduleName
     self.options = options
     self.logger = logging.getLogger(self.__class__.__name__)
     pidFile = "%s/%s.pid" % (self.options.pidDir, self.moduleName)
     Daemon.__init__(self, pidFile)
Esempio n. 6
0
    def test_start(self):
		with self.assertRaises(SystemExit):
			daemon = Daemon(pid_path)
			daemon.start()
			sys.exit(0)	
Esempio n. 7
0
 def test_start(self):
     with self.assertRaises(SystemExit):
         daemon = Daemon(pid_path)
         daemon.start()
         sys.exit(0)
Esempio n. 8
0
 def test_init(self):
     daemon = Daemon(pid_path)
     self.assertEqual(pid_path, daemon.pidfile)
     self.assertEqual('/dev/null', daemon.stdin)
     self.assertEqual('/dev/null', daemon.stdout)
     self.assertEqual('/dev/null', daemon.stderr)