def main(): parser = argparse.ArgumentParser() group1 = parser.add_mutually_exclusive_group() group1.add_argument("--start", action="store_true", default=False, help="start program") group1.add_argument("--stop", action="store_true", default=False, help="stop program") parser.add_argument("--no-daemon", action="store_true", default=None, help="run in no daemon mode") parser.add_argument("-p", "--pid-file", default=None, help="pid file") parser.add_argument("-l", "--log-file", default=None, help="log file") parser.add_argument("-c", "--config-file", default="./config.yml", help="config file") parser.add_argument("-v", "--verbosity", action="count", default=None, help="increase output verbosity") parser.add_argument("--version", action="version", version="Version %s" % __version__) parser.add_argument("--recalculate", action="store_true", default=False, help="recalculate data") parser.add_argument( "--platform", type=str, default=False, help=( "platform to recalculate, " "[cloudstack, ec2, ecs, eucalyptus, gce, idcf, openstack, " "rackspacenguk, rackspacengus]" ), ) parser.add_argument("--date-from", type=str, default=False, help="from date, 'YYYY-MM-DD' UTC") parser.add_argument("--date-to", type=str, default=False, help="to date, 'YYYY-MM-DD' UTC") args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))["scalr"] configure(config, args) except SystemExit: raise except: if args.verbosity > 3: raise else: sys.stderr.write("%s\n" % helper.exc_info(line_no=False)) sys.exit(1) try: app = AnalyticsProcessing() if args.start: if helper.check_pid(CONFIG["pid_file"]): msg = "Application with pid file '%s' already running. Exit" % CONFIG["pid_file"] LOG.info(msg) sys.exit(0) if not args.no_daemon: helper.daemonize() app.start() elif args.stop: app.stop() else: print "Usage %s -h" % sys.argv[0] except KeyboardInterrupt: LOG.critical("KeyboardInterrupt") return except SystemExit: pass except: LOG.exception("Something happened and I think I died") sys.exit(1)
def main(): parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start program') group.add_argument('--stop', action='store_true', default=False, help='stop program') parser.add_argument('--no-daemon', action='store_true', help='run in no daemon mode') parser.add_argument('--email-from', default=None, help='email address from') parser.add_argument('--email-to', default=None, help='email address to') parser.add_argument('--warning-threshold', type=int, default=None, help='warning threshold') parser.add_argument('--critical-threshold', type=int, default=None, help='critical threshold') parser.add_argument('-i', '--interval', type=int, default=None, help="execution interval in seconds") parser.add_argument('-p', '--pid-file', default=None, help='pid file') parser.add_argument('-l', '--log-file', default=None, help='log file') parser.add_argument('-c', '--config-file', default='./config.yml', help='config file') parser.add_argument('-v', '--verbosity', action='count', default=None, help='increase output verbosity') parser.add_argument('--version', action='version', version='Version %s' % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))['scalr'] configure(config, args) except: if args.verbosity > 3: raise else: sys.stderr.write('%s\n' % helper.exc_info()) sys.exit(1) try: daemon = DBQueueEventAlert() if args.start: LOG.info('Start') if not helper.check_pid(CONFIG['pid_file']): LOG.info('Another copy of process already running. Exit') sys.exit(0) daemon.start(daemon= not args.no_daemon) elif args.stop: LOG.info('Stop') daemon.stop() else: print 'Usage %s -h' % sys.argv[0] except KeyboardInterrupt: LOG.critical('KeyboardInterrupt') sys.exit(0) except SystemExit: pass except: LOG.exception('Something happened and I think I died') sys.exit(1)
def main(): try: parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument("--start", action="store_true", default=False, help="start daemon") group.add_argument("--stop", action="store_true", default=False, help="stop daemon") group.add_argument("--restart", action="store_true", default=False, help="restart daemon") parser.add_argument("-p", "--pid_file", default=None, help="Pid file") parser.add_argument("-c", "--config_file", default="%s/config.yml" % ETC_DIR, help="config file") parser.add_argument( "-v", "--verbosity", action="count", default=1, help="increase output verbosity [0:4]. Default is 1 - ERROR" ) parser.add_argument("--version", action="version", version="Version %s" % scalrpy.__version__) args = parser.parse_args() try: cnf = yaml.safe_load(open(args.config_file))["scalr"]["msg_sender"] except IOError as e: sys.stderr.write("%s\n" % str(e)) sys.exit(1) except KeyError: sys.stderr.write("%s\nYou must define 'msg_sender' section in config file\n" % str(sys.exc_info())) sys.exit(1) configure(args, cnf) except Exception: sys.stderr.write("%s\n" % str(sys.exc_info())) sys.exit(1) try: daemon = Messaging(config) if args.start: if not helper.check_pid(config["pid_file"]): logger.critical("Another copy of process already running. Exit") sys.exit(0) daemon.start() elif args.stop: daemon.stop() elif args.restart: daemon.restart() else: print "Usage %s -h" % sys.argv[0] except SystemExit: pass except Exception: logger.critical("Something happened and I think I died") logger.exception("Critical exception") sys.exit(1)
def main(): parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start program') group.add_argument('--stop', action='store_true', default=False, help='stop program') parser.add_argument('--no-daemon', action='store_true', default=None, help="run in no daemon mode") parser.add_argument('-p', '--pid-file', default=None, help="pid file") parser.add_argument('-l', '--log-file', default=None, help="log file") parser.add_argument('-c', '--config-file', default='./config.yml', help='config file') parser.add_argument('-i', '--interval', type=int, default=None, help="execution interval in seconds. Default is once") parser.add_argument('-v', '--verbosity', action='count', default=None, help='increase output verbosity') parser.add_argument('--version', action='version', version='Version %s' % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))['scalr'] configure(config, args) except SystemExit: raise except: if args.verbosity > 3: raise else: sys.stderr.write('%s\n' % helper.exc_info()) sys.exit(1) try: app = AnalyticsPoller() if args.start: if helper.check_pid(CONFIG['pid_file']): msg = "Application with pid file '%s' already running. Exit" % CONFIG['pid_file'] LOG.info(msg) sys.exit(0) if not args.no_daemon: helper.daemonize() app.start() elif args.stop: app.stop() else: print 'Usage %s -h' % sys.argv[0] except KeyboardInterrupt: LOG.critical('KeyboardInterrupt') return except SystemExit: pass except: LOG.exception('Something happened and I think I died') sys.exit(1)
def _start(self): if helper.check_pid(self.config['pid_file']): raise exceptions.AlreadyRunningError(self.config['pid_file']) LOG.debug('Starting') if self.args['--daemon']: helper.daemonize() helper.create_pid_file(self.config['pid_file']) atexit.register(helper.delete_file, self.config['pid_file']) LOG.info('Started') helper.set_proc_name(self.name) self() LOG.info('Stopped')
def main(): parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start program') group.add_argument('--stop', action='store_true', default=False, help='stop program') parser.add_argument('--no-daemon', action='store_true', default=None, help="run in no daemon mode") parser.add_argument('-p', '--pid-file', default=None, help="pid file") parser.add_argument('-l', '--log-file', default=None, help="log file") parser.add_argument('-c', '--config-file', default='./config.yml', help='config file') parser.add_argument('-t', '--instances-connection-timeout', type=int, default=None, help='instances connection timeout') parser.add_argument('-v', '--verbosity', action='count', default=None, help='increase output verbosity') parser.add_argument('--version', action='version', version='Version %s' % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))['scalr'] configure(config, args) except: if args.verbosity > 3: raise else: sys.stderr.write('%s\n' % helper.exc_info()) sys.exit(1) try: socket.setdefaulttimeout(CONFIG['instances_connection_timeout']) daemon = MsgSender() if args.start: LOG.info('Start') if not helper.check_pid(CONFIG['pid_file']): LOG.info('Another copy of process already running. Exit') sys.exit(0) daemon.start(daemon= not args.no_daemon) elif args.stop: LOG.info('Stop') daemon.stop() else: print 'Usage %s -h' % sys.argv[0] except KeyboardInterrupt: LOG.critical('KeyboardInterrupt') return except SystemExit: pass except: LOG.exception('Something happened and I think I died') sys.exit(1)
def _start(self): if helper.check_pid(self.config['pid_file']): raise exceptions.AlreadyRunningError(self.config['pid_file']) LOG.debug(self._starting_msg) if self.args['--daemon']: helper.daemonize() helper.create_pid_file(self.config['pid_file']) atexit.register(helper.delete_file, self.config['pid_file']) helper.set_proc_name(self.name) self.start_dtime = datetime.datetime.utcnow() LOG.info('Started') self() LOG.info('Stopped')
def run(self): if self.args.start: if helper.check_pid(self.config['pid_file']): msg = "Application with pid file '%s' already running. Exit" % config['pid_file'] LOG.info(msg) sys.exit(0) if self.args.daemon: helper.daemonize() self.start() elif self.args.stop: self.stop() else: print 'Usage %s -h' % sys.argv[0]
def _start(self): if helper.check_pid(self.config['pid_file']): raise exceptions.AlreadyRunningError(self.config['pid_file']) LOG.debug(self._starting_msg) LOG.debug('Log file: {}'.format(self.config['log_file'])) LOG.debug('Pid file: {}'.format(self.config['pid_file'])) if self.args['--daemon']: helper.daemonize() helper.create_pid_file(self.config['pid_file']) atexit.register(helper.delete_file, self.config['pid_file']) helper.set_proc_name(self.name) self.start_dtime = datetime.datetime.utcnow() LOG.info('Started') self() LOG.info('Stopped')
def main(): parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument("--start", action="store_true", default=False, help="start program") group.add_argument("--stop", action="store_true", default=False, help="stop program") parser.add_argument("--no-daemon", action="store_true", default=None, help="run in no daemon mode") parser.add_argument("-p", "--pid-file", default=None, help="pid file") parser.add_argument("-l", "--log-file", default=None, help="log file") parser.add_argument("-c", "--config-file", default="./config.yml", help="config file") parser.add_argument( "-t", "--instances-connection-timeout", type=int, default=None, help="instances connection timeout" ) parser.add_argument("-v", "--verbosity", action="count", default=None, help="increase output verbosity") parser.add_argument("--version", action="version", version="Version %s" % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))["scalr"] configure(config, args) except: if args.verbosity > 3: raise else: sys.stderr.write("%s\n" % helper.exc_info()) sys.exit(1) try: socket.setdefaulttimeout(CONFIG["instances_connection_timeout"]) daemon = DBQueueEvent() if args.start: LOG.info("Start") if helper.check_pid(CONFIG["pid_file"]): LOG.critical("Another copy of process already running. Exit") return daemon.start(daemon=not args.no_daemon) elif args.stop: LOG.info("Stop") daemon.stop() else: print "Usage %s -h" % sys.argv[0] except SystemExit: pass except KeyboardInterrupt: LOG.critical("KeyboardInterrupt") return except: LOG.exception("Something happened and I think I died") sys.exit(1)
def stop(self): LOG.info('Stop') if not self.pid_file: raise Exception("You must specify pid file") try: pf = file(self.pid_file, 'r') pid = int(pf.read().strip()) pf.close() except IOError: LOG.error("Pid file %s dosn't exist" % self.pid_file) return except ValueError: LOG.error("Wrong value in pid file %s" % self.pid_file) self._delete_pid_file() return try: if helper.check_pid(self.pid_file): helper.kill_ps(pid, child=True) except Exception: LOG.error(helper.exc_info())
def main(): sys.stderr.write("This script is deprecated. Instead use load_statistics.py\n\n") parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start daemon') group.add_argument('--stop', action='store_true', default=False, help='stop daemon') group.add_argument('--restart', action='store_true', default=False, help='restart daemon') parser.add_argument('--no-daemon', action='store_true', default=None, help="Run in no daemon mode") parser.add_argument('--with-snmp', action='store_true', default=None, help="Use snmp") parser.add_argument('-i', '--interval', type=int, default=None, help="execution interval in seconds. Default is 0 - exec once") parser.add_argument('-p', '--pid-file', default=None, help="Pid file") parser.add_argument('-l', '--log-file', default=None, help="Log file") parser.add_argument('-m', '--metrics', default=None, choices=['cpu', 'la', 'mem', 'net'], action='append', help="metrics type for processing") parser.add_argument('-c', '--config-file', default='./config.yml', help='config file') parser.add_argument('-t', '--instances-connection-timeout', type=int, default=None, help='instances connection timeout') parser.add_argument('-v', '--verbosity', default=None, action='count', help='increase output verbosity [0:4]. Default is 1 - Error') parser.add_argument('--version', action='version', version='Version %s' % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))['scalr'] configure(args, config) except: if args.verbosity > 3: raise else: sys.stderr.write('%s\n' % helper.exc_info()) sys.exit(1) try: socket.setdefaulttimeout(CONFIG['instances_connection_timeout']) daemon = StatsPoller() if args.start: LOG.info('Start') if helper.check_pid(CONFIG['pid_file']): LOG.info('Another copy of process already running. Exit') sys.exit(0) daemon.start(daemon= not args.no_daemon) elif args.stop: LOG.info('Stop') daemon.stop() elif args.restart: LOG.info('Restart') daemon.restart(daemon= not args.no_daemon) else: print 'Usage %s -h' % sys.argv[0] LOG.info('Exit') except KeyboardInterrupt: LOG.critical(helper.exc_info()) helper.kill_ps(mp.current_process().pid, child=True) sys.exit(0) except SystemExit: pass except Exception: LOG.critical('Something happened and I think I died') LOG.exception('Critical exception') sys.exit(1)
def main(): try: parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start daemon') group.add_argument('--stop', action='store_true', default=False, help='stop daemon') group.add_argument('--restart', action='store_true', default=False, help='restart daemon') parser.add_argument('-i', '--interval', type=int, default=0, help="execution interval in seconds. Default is 0 - exec once") parser.add_argument('-p','--pid_file', default=None, help="Pid file") parser.add_argument('-m', '--metrics', default=None, choices=['cpu', 'la', 'mem', 'net'], action='append', help="metrics type for processing") parser.add_argument('-c', '--config_file', default='%s/config.yml' % ETC_DIR, help='config file') parser.add_argument('-v', '--verbosity', default=1, action='count', help='increase output verbosity [0:4]. Default is 1 - Error') parser.add_argument('--version', action='version', version='Version %s' % scalrpy.__version__) args = parser.parse_args() try: cnf = yaml.safe_load(open(args.config_file))['scalr']['stats_poller'] except IOError as e: sys.stderr.write('%s\n' % str(e)) sys.exit(1) except KeyError: sys.stderr.write('%s\nYou must define \'stats_poller\' section in config file\n' % str(sys.exc_info())) sys.exit(1) configure(args, cnf) except Exception: sys.stderr.write('%s\n' % str(sys.exc_info())) sys.exit(1) try: daemon = StatsPoller(config) if args.start: if not helper.check_pid(config['pid_file']): logger.critical('Another copy of process already running. Exit') sys.exit(0) daemon.start() elif args.stop: daemon.stop() elif args.restart: daemon.restart() else: print 'Usage %s -h' % sys.argv[0] logger.info('Exit') except KeyboardInterrupt: logger.critical(sys.exc_info()[0]) sys.exit(0) except SystemExit: pass except Exception: logger.critical('Something happened and I think I died') logger.exception('Critical exception') sys.exit(1)
def main(): try: parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start daemon') group.add_argument('--stop', action='store_true', default=False, help='stop daemon') group.add_argument('--restart', action='store_true', default=False, help='restart daemon') parser.add_argument( '-i', '--interval', type=int, default=0, help="execution interval in seconds. Default is 0 - exec once") parser.add_argument('-p', '--pid_file', default=None, help="Pid file") parser.add_argument('-m', '--metrics', default=None, choices=['cpu', 'la', 'mem', 'net'], action='append', help="metrics type for processing") parser.add_argument('-c', '--config_file', default='%s/config.yml' % ETC_DIR, help='config file') parser.add_argument( '-v', '--verbosity', default=1, action='count', help='increase output verbosity [0:4]. Default is 1 - Error') parser.add_argument('--version', action='version', version='Version %s' % scalrpy.__version__) args = parser.parse_args() try: cnf = yaml.safe_load(open( args.config_file))['scalr']['stats_poller'] except IOError as e: sys.stderr.write('%s\n' % str(e)) sys.exit(1) except KeyError: sys.stderr.write( '%s\nYou must define \'stats_poller\' section in config file\n' % str(sys.exc_info())) sys.exit(1) configure(args, cnf) except Exception: sys.stderr.write('%s\n' % str(sys.exc_info())) sys.exit(1) try: daemon = StatsPoller(config) if args.start: if not helper.check_pid(config['pid_file']): logger.critical( 'Another copy of process already running. Exit') sys.exit(0) daemon.start() elif args.stop: daemon.stop() elif args.restart: daemon.restart() else: print 'Usage %s -h' % sys.argv[0] logger.info('Exit') except KeyboardInterrupt: logger.critical(sys.exc_info()[0]) sys.exit(0) except SystemExit: pass except Exception: logger.critical('Something happened and I think I died') logger.exception('Critical exception') sys.exit(1)
def main(): parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start program') group.add_argument('--stop', action='store_true', default=False, help='stop program') parser.add_argument('--no-daemon', action='store_true', default=None, help="run in no daemon mode") parser.add_argument('-p', '--pid-file', default=None, help="pid file") parser.add_argument('-l', '--log-file', default=None, help="log file") parser.add_argument('-c', '--config-file', default='./config.yml', help='config file') parser.add_argument('-t', '--instances-connection-timeout', type=int, default=None, help='instances connection timeout') parser.add_argument('-v', '--verbosity', action='count', default=None, help='increase output verbosity') parser.add_argument('--version', action='version', version='Version %s' % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))['scalr'] configure(config, args) except: if args.verbosity > 3: raise else: sys.stderr.write('%s\n' % helper.exc_info()) sys.exit(1) try: socket.setdefaulttimeout(CONFIG['instances_connection_timeout']) daemon = MsgSender() if args.start: LOG.info('Start') if helper.check_pid(CONFIG['pid_file']): LOG.info('Another copy of process already running. Exit') sys.exit(0) daemon.start(daemon=not args.no_daemon) elif args.stop: LOG.info('Stop') daemon.stop() else: print 'Usage %s -h' % sys.argv[0] except KeyboardInterrupt: LOG.critical('KeyboardInterrupt') return except SystemExit: pass except: LOG.exception('Something happened and I think I died') sys.exit(1)
def main(): parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start program') group.add_argument('--stop', action='store_true', default=False, help='stop program') parser.add_argument('--poller', action='store_true', default=None, help='poller mode') parser.add_argument('--plotter', action='store_true', default=None, help='plotter mode') parser.add_argument('--no-daemon', action='store_true', default=None, help="run in no daemon mode") parser.add_argument('--with-snmp', action='store_true', default=None, help="use snmp") parser.add_argument('-i', '--interval', type=int, default=None, help="execution interval in seconds. Default is 120") parser.add_argument('-p', '--pid-file', default=None, help="pid file") parser.add_argument('-l', '--log-file', default=None, help="log file") parser.add_argument('-m', '--metrics', default=None, choices=['cpu', 'la', 'mem', 'net', 'io', 'snum'], action='append', help="metrics type for processing") parser.add_argument('-c', '--config-file', default='./config.yml', help='config file') parser.add_argument('-v', '--verbosity', default=None, action='count', help='increase output verbosity [0:4]. Default is 1 - Error') parser.add_argument('--version', action='version', version='Version %s' % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))['scalr'] configure(config, args) except: if args.verbosity > 3: raise else: sys.stderr.write('%s\n' % helper.exc_info()) sys.exit(1) try: socket.setdefaulttimeout(CONFIG['instances_connection_timeout']) daemon = LoadStatistics() if args.start: LOG.info('Start') if helper.check_pid(CONFIG['pid_file']): LOG.info('Another copy of process already running. Exit') sys.exit(0) daemon.start(daemon=not args.no_daemon) elif args.stop: LOG.info('Stop') daemon.stop() else: print 'Please use %s -h' % sys.argv[0] LOG.info('Exit') except KeyboardInterrupt: sys.stdout.write('Keyboard interrupt\n') helper.kill_ps(multiprocessing.current_process().pid, child=True) sys.exit(0) except SystemExit: pass except Exception: LOG.exception('Something happened and I think I died') sys.exit(1)
def main(): parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start program') group.add_argument('--stop', action='store_true', default=False, help='stop program') parser.add_argument('--poller', action='store_true', default=None, help='poller mode') parser.add_argument('--plotter', action='store_true', default=None, help='plotter mode') parser.add_argument('--no-daemon', action='store_true', default=None, help="run in no daemon mode") parser.add_argument('--with-snmp', action='store_true', default=None, help="use snmp") parser.add_argument('-i', '--interval', type=int, default=None, help="execution interval in seconds. Default is 120") parser.add_argument('-p', '--pid-file', default=None, help="pid file") parser.add_argument('-l', '--log-file', default=None, help="log file") parser.add_argument('-m', '--metrics', default=None, choices=['cpu', 'la', 'mem', 'net', 'io', 'snum'], action='append', help="metrics type for processing") parser.add_argument('-c', '--config-file', default='./config.yml', help='config file') parser.add_argument( '-v', '--verbosity', default=None, action='count', help='increase output verbosity [0:4]. Default is 1 - Error') parser.add_argument('--version', action='version', version='Version %s' % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))['scalr'] configure(config, args) except: if args.verbosity > 3: raise else: sys.stderr.write('%s\n' % helper.exc_info()) sys.exit(1) try: socket.setdefaulttimeout(CONFIG['instances_connection_timeout']) daemon = LoadStatistics() if args.start: LOG.info('Start') if helper.check_pid(CONFIG['pid_file']): LOG.info('Another copy of process already running. Exit') sys.exit(0) daemon.start(daemon=not args.no_daemon) elif args.stop: LOG.info('Stop') daemon.stop() else: print 'Please use %s -h' % sys.argv[0] LOG.info('Exit') except KeyboardInterrupt: sys.stdout.write('Keyboard interrupt\n') helper.kill_ps(multiprocessing.current_process().pid, child=True) sys.exit(0) except SystemExit: pass except Exception: LOG.exception('Something happened and I think I died') sys.exit(1)
def main(): try: parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start daemon') group.add_argument('--stop', action='store_true', default=False, help='stop daemon') group.add_argument('--restart', action='store_true', default=False, help='restart daemon') parser.add_argument('-p', '--pid_file', default=None, help="Pid file") parser.add_argument('-c', '--config_file', default='%s/config.yml' % ETC_DIR, help='config file') parser.add_argument( '-v', '--verbosity', action='count', default=1, help='increase output verbosity [0:4]. Default is 1 - ERROR') parser.add_argument('--version', action='version', version='Version %s' % scalrpy.__version__) args = parser.parse_args() try: cnf = yaml.safe_load(open(args.config_file))['scalr']['msg_sender'] except IOError as e: sys.stderr.write('%s\n' % str(e)) sys.exit(1) except KeyError: sys.stderr.write( '%s\nYou must define \'msg_sender\' section in config file\n' % str(sys.exc_info())) sys.exit(1) configure(args, cnf) except Exception: sys.stderr.write('%s\n' % str(sys.exc_info())) sys.exit(1) try: daemon = Messaging(config) if args.start: if not helper.check_pid(config['pid_file']): logger.critical( 'Another copy of process already running. Exit') sys.exit(0) daemon.start() elif args.stop: daemon.stop() elif args.restart: daemon.restart() else: print 'Usage %s -h' % sys.argv[0] except SystemExit: pass except Exception: logger.critical('Something happened and I think I died') logger.exception('Critical exception') sys.exit(1)
def main(): parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start program') group.add_argument('--stop', action='store_true', default=False, help='stop program') parser.add_argument('--no-daemon', action='store_true', help='run in no daemon mode') parser.add_argument('--email-from', default=None, help='email address from') parser.add_argument('--email-to', default=None, help='email address to') parser.add_argument('--warning-threshold', type=int, default=None, help='warning threshold') parser.add_argument('--critical-threshold', type=int, default=None, help='critical threshold') parser.add_argument('-i', '--interval', type=int, default=None, help="execution interval in seconds") parser.add_argument('-p', '--pid-file', default=None, help='pid file') parser.add_argument('-l', '--log-file', default=None, help='log file') parser.add_argument('-c', '--config-file', default='./config.yml', help='config file') parser.add_argument( '-v', '--verbosity', action='count', default=None, help='increase output verbosity [0:4]. Default is 1 - ERROR') parser.add_argument('--version', action='version', version='Version %s' % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))['scalr'] configure(config, args) except: if args.verbosity > 3: raise else: sys.stderr.write('%s\n' % helper.exc_info()) sys.exit(1) try: daemon = MessagingAlert() if args.start: LOG.info('Start') if helper.check_pid(CONFIG['pid_file']): LOG.info('Another copy of process already running. Exit') sys.exit(0) daemon.start(daemon=not args.no_daemon) elif args.stop: LOG.info('Stop') daemon.stop() else: print 'Usage %s -h' % sys.argv[0] except KeyboardInterrupt: LOG.critical('KeyboardInterrupt') sys.exit(0) except SystemExit: pass except: LOG.exception('Something happened and I think I died') sys.exit(1)
def main(): sys.stderr.write( "This script is deprecated. Instead use load_statistics.py\n\n") parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group() group.add_argument('--start', action='store_true', default=False, help='start daemon') group.add_argument('--stop', action='store_true', default=False, help='stop daemon') group.add_argument('--restart', action='store_true', default=False, help='restart daemon') parser.add_argument('--no-daemon', action='store_true', default=None, help="Run in no daemon mode") parser.add_argument('--with-snmp', action='store_true', default=None, help="Use snmp") parser.add_argument( '-i', '--interval', type=int, default=None, help="execution interval in seconds. Default is 0 - exec once") parser.add_argument('-p', '--pid-file', default=None, help="Pid file") parser.add_argument('-l', '--log-file', default=None, help="Log file") parser.add_argument('-m', '--metrics', default=None, choices=['cpu', 'la', 'mem', 'net'], action='append', help="metrics type for processing") parser.add_argument('-c', '--config-file', default='./config.yml', help='config file') parser.add_argument('-t', '--instances-connection-timeout', type=int, default=None, help='instances connection timeout') parser.add_argument( '-v', '--verbosity', default=None, action='count', help='increase output verbosity [0:4]. Default is 1 - Error') parser.add_argument('--version', action='version', version='Version %s' % __version__) args = parser.parse_args() try: config = yaml.safe_load(open(args.config_file))['scalr'] configure(args, config) except: if args.verbosity > 3: raise else: sys.stderr.write('%s\n' % helper.exc_info()) sys.exit(1) try: socket.setdefaulttimeout(CONFIG['instances_connection_timeout']) daemon = StatsPoller() if args.start: LOG.info('Start') if helper.check_pid(CONFIG['pid_file']): LOG.info('Another copy of process already running. Exit') sys.exit(0) daemon.start(daemon=not args.no_daemon) elif args.stop: LOG.info('Stop') daemon.stop() elif args.restart: LOG.info('Restart') daemon.restart(daemon=not args.no_daemon) else: print 'Usage %s -h' % sys.argv[0] LOG.info('Exit') except KeyboardInterrupt: LOG.critical(helper.exc_info()) helper.kill_ps(mp.current_process().pid, child=True) sys.exit(0) except SystemExit: pass except Exception: LOG.critical('Something happened and I think I died') LOG.exception('Critical exception') sys.exit(1)