예제 #1
0
def configure_logging(verbose, quiet):
    log_level = ERROR   if quiet else \
                WARNING if not verbose else \
                INFO    if 1 == verbose else \
                DEBUG   #  2 <= verbose
    logConfig(format="%(asctime)-15s %(levelname)-8s %(message)s",
              datefmt="%Y-%m-%d %H:%M:%S",
              level=log_level)
    debug("DEBUG Log Level")
예제 #2
0
def main(prog, args):
    logConfig(level=get_log_level(args.verbose),
              format='{}: %(levelname)s: %(message)s'.format(prog))

    try:
        debug("start")
        for s in args.string:
            s_l = handle_string(s.strip())
            print("Input: '{}'".format(s))
            print("Output: {}".format(s_l))
            print()

        debug("done")
    except Exception as e:
        exception(e)
예제 #3
0
def main(prog, args):
    logConfig(level=get_log_level(args.verbose),
              format='{}: %(levelname)s: %(message)s'.format(prog))

    try:
        debug("start")
        for p in args.phone:
            try:
                s = handle_phone(p.strip())
                print("Input: '{}'".format(p))
                print("Output ({0}): {1}".format(len(s), s))
                print()

            except (UnsupportedCharacterError, LengthOutOfRangeError) as e:
                error("'{0}' ignored, error: {1}".format(p, e))

        debug("done")
    except Exception as e:
        exception(e)
예제 #4
0
파일: main.py 프로젝트: osmiy-lv/fun
def main(prog, args):
    logConfig(level=get_log_level(args.verbose),
              format='{}: %(levelname)s: %(message)s'.format(prog))

    try:
        debug("start")

        prices = [int(p) for p in args.price]

        profit = find_profit(prices)
        print("Input: {}".format(prices))
        print("Output: {}".format(profit))
        print()

        debug("done")
    except ValueError as e:
        error("invalid price provided -> {}".format(e))
    except Exception as e:
        exception(e)
예제 #5
0
def main(prog, args):
    logConfig(level=get_log_level(args.verbose),
              format='{}: %(levelname)s: %(message)s'.format(prog))

    try:
        debug("start")

        numbers = [int(n) for n in args.number]

        max_sum = find_max(numbers)
        print("Input: {}".format(numbers))
        print("Output: {}".format(max_sum))
        print()

        debug("done")
    except ValueError as e:
        error("invalid number provided -> {}".format(e))
    except Exception as e:
        exception(e)
예제 #6
0
def main():
    # Load our config first
    config = loader.load_yaml('config/bot.yaml')

    # Setup logging
    level = config['logging']['level']
    if level not in ['CRITICAL', 'ERROR', 'WARNING', 'INFO', 'DEBUG']:
        raise ConfigException('Invalid logging level - {}'.format(level))

    logConfig(level=level, format='[%(asctime)s %(levelname)s] %(message)s')
    getLogger('requests').setLevel(level)
    getLogger('usllib3').setLevel(level)

    # Try and create a bot instance
    try:
        sb = SecurityBot(config=config)

    except KeyError:
        logging.error('Configuration missing')
        raise

    # Run the bot
    sb.run()
예제 #7
0
def parse_arguments():
    parser = ArgumentParser(description="evdev based key scanner", )
    verbose = parser.add_mutually_exclusive_group()
    verbose.add_argument("-v",
                         "--verbose",
                         action="count",
                         help="set verbose loglevel")
    args = parser.parse_args()
    # configure logging
    log_format = "%(asctime)-15s %(levelname)-8s %(message)s"
    if 1 == args.verbose:
        logConfig(level=log_level, format=log_format)
        info("Log level set to INFO")
    elif 2 == args.verbose:
        logConfig(level=DEBUG, format=log_format)
        debug("Log level set to DEBUG")
    else:
        logConfig(level=WARNING, format=log_format)
    return args
예제 #8
0
    args = parse()
    checkdeps()

    # FaucetProxy talks to FAUCET and manages configfile
    proxy = FaucetProxy(path=args.configfile,
                        prometheus_addr=args.promaddr,
                        prometheus_port=args.promport,
                        dp_wait_fraction=args.dpwait,
                        timeout=args.timeout,
                        nohup=args.nohup)

    # FaucetAgent handles gNMI requests
    agent = FaucetAgent(proxy)

    # Start the FAUCET gNMI service
    gnmi_url = '{0}:{1}'.format(args.gnmiaddr, args.gnmiport)
    info('Starting FAUCET gNMI configuration agent on %s', gnmi_url)
    serve(cert_file=args.cert,
          key_file=args.key,
          gnmi_url=gnmi_url,
          servicer=agent)

    info('FAUCET gNMI configuration agent exiting')
    sys.exit(0)


if __name__ == '__main__':
    logConfig(level=DEBUG)
    getLogger('urllib3.connectionpool').setLevel(INFO)
    main()
예제 #9
0
from logging import basicConfig as logConfig
from os.path import join as path_join, expanduser, exists as pathExists
from os import makedirs


def appExit(msg=None):
    for disk in disks:
        disk.exit()
    sysExit(msg)


''' Interactive execution code
'''

if __name__ == '__main__':
    logConfig(level=10, format='%(asctime)s %(levelname)s %(message)s')
    appName = 'yd-client'
    # read or make new configuration file
    confHome = expanduser(path_join('~', '.config', appName))
    config = Config(path_join(confHome, 'client.conf'))
    if not config.loaded:
        makedirs(confHome, exist_ok=True)
        config.changed = True
    config.setdefault('type', 'std')
    config.setdefault('disks', {})
    if config.changed:
        config.save()
    # Setup localization
    translation(appName, '/usr/share/locale', fallback=True).install()

    disks = []