1 |
On 23 Nov 2015 07:07, Mike Frysinger wrote: |
2 |
> This helps a lot with debugging as you can quickly get a transcript |
3 |
> of the python code paths that are taken by catalyst. |
4 |
|
5 |
example output: |
6 |
$ ./bin/catalyst.git --trace |
7 |
--- modulename: main, funcname: _main |
8 |
0.00 main.py(284): log_level = opts.log_level |
9 |
0.00 main.py(285): if log_level is None: |
10 |
0.00 main.py(286): if opts.debug: |
11 |
0.00 main.py(288): elif opts.verbose: |
12 |
0.00 main.py(291): log_level = 'notice' |
13 |
0.00 main.py(292): log.setup_logging(log_level, output=opts.log_file, debug=opts.debug, |
14 |
0.00 main.py(293): color=opts.color) |
15 |
--- modulename: log, funcname: setup_logging |
16 |
0.00 log.py(109): level = logging.getLevelName(level.upper()) |
17 |
0.00 log.py(112): fmt = '%(asctime)s: %(levelname)-8s: ' |
18 |
0.00 log.py(113): if debug: |
19 |
0.00 log.py(115): fmt += '%(message)s' |
20 |
0.00 log.py(118): if output is None: |
21 |
0.00 log.py(119): handler = logging.StreamHandler(stream=sys.stdout) |
22 |
0.00 log.py(125): tzname = time.strftime('%Z', time.localtime()) |
23 |
0.00 log.py(126): datefmt = '%d %b %Y %H:%M:%S ' + tzname |
24 |
0.00 log.py(127): formatter = CatalystFormatter(fmt, datefmt, color=color) |
25 |
--- modulename: log, funcname: __init__ |
26 |
0.00 log.py(83): color = kwargs.pop('color', None) |
27 |
0.00 log.py(84): if color is None: |
28 |
0.00 log.py(85): color = self.detect_color() |
29 |
--- modulename: log, funcname: detect_color |
30 |
0.00 log.py(77): if 'NOCOLOR' is os.environ: |
31 |
0.00 log.py(79): return os.isatty(sys.stdout.fileno()) |
32 |
0.00 log.py(86): if not color: |
33 |
0.00 log.py(87): self._COLORS = {} |
34 |
0.00 log.py(89): super(CatalystFormatter, self).__init__(*args, **kwargs) |
35 |
0.00 log.py(128): handler.setFormatter(formatter) |
36 |
0.00 log.py(130): logger.addHandler(handler) |
37 |
0.00 log.py(131): logger.setLevel(level) |
38 |
0.00 main.py(296): myconfigs = opts.configs |
39 |
0.00 main.py(297): if not myconfigs: |
40 |
0.00 main.py(299): myspecfile = opts.file |
41 |
0.00 main.py(300): mycmdline = opts.cli[:] |
42 |
0.00 main.py(302): if opts.snapshot: |
43 |
0.00 main.py(306): conf_values['DEBUG'] = opts.debug |
44 |
0.00 main.py(307): conf_values['VERBOSE'] = opts.debug or opts.verbose |
45 |
0.00 main.py(309): options = set() |
46 |
0.00 main.py(310): if opts.fetchonly: |
47 |
0.00 main.py(312): if opts.purge: |
48 |
0.00 main.py(314): if opts.purgeonly: |
49 |
0.00 main.py(316): if opts.purgetmponly: |
50 |
0.00 main.py(318): if opts.clear_autoresume: |
51 |
0.00 main.py(322): if not myspecfile and not mycmdline: |
52 |
0.00 main.py(323): parser.error('please specify one of either -f or -C or -s') |
53 |
usage: catalyst [-h] [-V] [-d] [-v] |
54 |
[--log-level {critical,error,warning,notice,info,debug}] |
55 |
[--log-file LOG_FILE] [--color] [--nocolor] [--trace] |
56 |
[--profile] [-a] [-p] [-P] [-T] [-F] [-c CONFIGS] [-f FILE] |
57 |
[-s SNAPSHOT] [-C ...] |
58 |
catalyst: error: please specify one of either -f or -C or -s |