log.py
57 lines
| 1.7 KiB
| text/x-python
|
PythonLexer
|
r1051 | ''' | ||
|
r943 | SCHAINPY - LOG | ||
Simple helper for log standarization | ||||
Usage: | ||||
from schainpy.utils import log | ||||
log.error('A kitten died beacuse of you') | ||||
log.warning('You are doing it wrong but what the heck, I'll allow it) | ||||
log.succes('YOU ROCK!') | ||||
To create your own logger inside your class do it like this: | ||||
from schainpy.utils import log | ||||
awesomeLogger = log.makelogger("never gonna", bg="red", fg="white") | ||||
awesomeLogger('give you up') | ||||
which will look like this: | ||||
[NEVER GONNA] - give you up | ||||
with color red as background and white as foreground. | ||||
|
r1051 | ''' | ||
|
r943 | import click | ||
|
r1084 | |||
r1134 | def warning(message, tag='Warning', nl=True): | |||
if tag: | ||||
click.echo(click.style('[{}] {}'.format(tag, message), fg='yellow'), nl=nl) | ||||
else: | ||||
click.echo(click.style('{}'.format(message), fg='yellow'), nl=nl) | ||||
|
r1051 | pass | ||
|
r943 | |||
r1134 | def error(message, tag='Error', nl=True): | |||
if tag: | ||||
click.echo(click.style('[{}] {}'.format(tag, message), fg='red'), nl=nl) | ||||
else: | ||||
click.echo(click.style('{}'.format(message), fg='red'), nl=nl) | ||||
|
r1051 | pass | ||
|
r943 | |||
r1134 | def success(message, tag='Success', nl=True): | |||
if tag: | ||||
click.echo(click.style('[{}] {}'.format(tag, message), fg='green'), nl=nl) | ||||
else: | ||||
click.echo(click.style('{}'.format(message), fg='green'), nl=nl) | ||||
|
r1051 | pass | ||
|
r943 | |||
r1134 | def log(message, tag='Info', nl=True): | |||
if tag: | ||||
click.echo('[{}] {}'.format(tag, message), nl=nl) | ||||
else: | ||||
click.echo('{}'.format(message), nl=nl) | ||||
|
r1051 | pass | ||
|
r943 | |||
|
r1051 | def makelogger(tag, bg='reset', fg='reset'): | ||
|
r943 | def func(message): | ||
|
r1084 | click.echo(click.style('[{}] {}'.format( | ||
tag.upper(), message), bg=bg, fg=fg)) | ||||
|
r943 | return func | ||