fix(user/gpgfp-noemail):Rename and fix bk-gpgfp-noemail
[BK-2020-03.git] / unitproc / python / bktemp-parseArgs
1 #!/usr/bin/env python3
2 # Usage: python3 ./bktemp-parseArgs -vv 3
3 # Version: 0.0.1
4 # Note: is example tempalte for setting up use of logging module
5
6 import argparse, logging;
7
8 # Setup argument parser (see https://docs.python.org/3.7/library/argparse.html )
9 parser = argparse.ArgumentParser(
10 description='Perform some work.',
11 epilog="Author: Steven Baltakatei Sandoval. License: GPLv3+");
12 parser = argparse.ArgumentParser(
13 description='(example description) Delay activity for a random number of seconds. Delays sampled from an inverse gaussian distribution.',
14 epilog="(example epilog) Author: Steven Baltakatei Sandoval. License: GPLv3+");
15 parser.add_argument('-v','--verbose',
16 action='count',
17 dest='verbosity',
18 default=0,
19 help='(example help) Verbose output. (repeat for increased verbosity)');
20 parser.add_argument('mean',
21 action='store',
22 metavar='SECONDS',
23 nargs=1,
24 default=1,
25 type=float,
26 help='(example help) Mean seconds of delay. Is the mean of the inverse gaussian distribution.');
27 args = parser.parse_args();
28
29 # Define functions
30 def setup_logging(verbosity):
31 # Depends: module: argparse
32 # Ref/Attrib: Haas, Florian; Configure logging with argparse; https://xahteiwi.eu/resources/hints-and-kinks/python-cli-logging-options/
33 base_loglevel = 30;
34 verbosity = min(verbosity, 2);
35 loglevel = base_loglevel - (verbosity * 10);
36 logging.basicConfig(level=loglevel,
37 format='%(message)s');
38
39 ## Start up logger
40 setup_logging(args.verbosity);
41 logging.debug('DEBUG:Debug logging output enabled.');
42 logging.debug('DEBUG:args.verbosity:' + str(args.verbosity));
43 logging.debug('DEBUG:args:' + str(args));