%PDF- %PDF-
| Direktori : /lib/python3/dist-packages/mitmproxy/addons/ |
| Current File : //lib/python3/dist-packages/mitmproxy/addons/termlog.py |
import sys
import click
from mitmproxy import log
from mitmproxy import ctx
# These get over-ridden by the save execution context. Keep them around so we
# can log directly.
realstdout = sys.stdout
realstderr = sys.stderr
class TermLog:
def __init__(self, outfile=None):
self.outfile = outfile
def load(self, loader):
loader.add_option(
"termlog_verbosity", str, 'info',
"Log verbosity.",
choices=log.LogTierOrder
)
def log(self, e):
if log.log_tier(e.level) == log.log_tier("error"):
outfile = self.outfile or realstderr
else:
outfile = self.outfile or realstdout
if log.log_tier(ctx.options.termlog_verbosity) >= log.log_tier(e.level):
click.secho(
e.msg,
file=outfile,
fg=dict(error="red", warn="yellow",
alert="magenta").get(e.level),
dim=(e.level == "debug"),
err=(e.level == "error")
)