Fix some style
This commit is contained in:
parent
35a64c4775
commit
f42c53dbd4
2 changed files with 47 additions and 20 deletions
|
@ -3,24 +3,32 @@
|
|||
#
|
||||
# This script is licensed under GNU GPL version 2.0 or above
|
||||
# (c) __authoring_date__ __author__
|
||||
# __description__
|
||||
"""__description__"""
|
||||
|
||||
import sys
|
||||
import os
|
||||
import logging
|
||||
from logging.handlers import SysLogHandler
|
||||
import click
|
||||
import click_config_file
|
||||
from logging.handlers import SysLogHandler
|
||||
|
||||
|
||||
class __project_codename__:
|
||||
|
||||
def __init__(self, debug_level, log_file, **kwargs):
|
||||
''' Initial function called when object is created '''
|
||||
self.config = dict()
|
||||
self.config['debug_level'] = debug_level
|
||||
if log_file is None:
|
||||
log_file = os.path.join(os.environ.get('HOME', os.environ.get('USERPROFILE', os.getcwd())), 'log', '__project_codename__.log')
|
||||
self.config['log_file'] = log_file
|
||||
def __init__(self, **kwargs):
|
||||
self.config = kwargs
|
||||
if 'log_file' not in kwargs or kwargs['log_file'] is None:
|
||||
self.config['log_file'] = os.path.join(
|
||||
os.environ.get(
|
||||
'HOME',
|
||||
os.environ.get(
|
||||
'USERPROFILE',
|
||||
os.getcwd()
|
||||
)
|
||||
),
|
||||
'log',
|
||||
'__project_codename__.log'
|
||||
)
|
||||
self._init_log()
|
||||
|
||||
def _init_log(self):
|
||||
|
@ -33,39 +41,54 @@ class __project_codename__:
|
|||
self._log.addHandler(sysloghandler)
|
||||
|
||||
streamhandler = logging.StreamHandler(sys.stdout)
|
||||
streamhandler.setLevel(logging.getLevelName(self.config.get("debug_level", 'INFO')))
|
||||
streamhandler.setLevel(
|
||||
logging.getLevelName(self.config.get("debug_level", 'INFO'))
|
||||
)
|
||||
self._log.addHandler(streamhandler)
|
||||
|
||||
if 'log_file' in self.config:
|
||||
log_file = self.config['log_file']
|
||||
else:
|
||||
home_folder = os.environ.get('HOME', os.environ.get('USERPROFILE', ''))
|
||||
home_folder = os.environ.get(
|
||||
'HOME', os.environ.get('USERPROFILE', '')
|
||||
)
|
||||
log_folder = os.path.join(home_folder, "log")
|
||||
log_file = os.path.join(log_folder, "__project_codename__.log")
|
||||
|
||||
if not os.path.exists(os.path.dirname(log_file)):
|
||||
os.mkdir(os.path.dirname(log_file))
|
||||
|
||||
filehandler = logging.handlers.RotatingFileHandler(log_file, maxBytes=102400000)
|
||||
filehandler = logging.handlers.RotatingFileHandler(
|
||||
log_file, maxBytes=102400000
|
||||
)
|
||||
# create formatter
|
||||
formatter = logging.Formatter('%(asctime)s %(name)-12s %(levelname)-8s %(message)s')
|
||||
formatter = logging.Formatter(
|
||||
'%(asctime)s %(name)-12s %(levelname)-8s %(message)s'
|
||||
)
|
||||
filehandler.setFormatter(formatter)
|
||||
filehandler.setLevel(logging.DEBUG)
|
||||
self._log.addHandler(filehandler)
|
||||
return True
|
||||
|
||||
|
||||
@click.command()
|
||||
@click.option("--debug-level", "-d", default="INFO",
|
||||
@click.option(
|
||||
"--debug-level",
|
||||
"-d",
|
||||
default="INFO",
|
||||
type=click.Choice(
|
||||
["CRITICAL", "ERROR", "WARNING", "INFO", "DEBUG", "NOTSET"],
|
||||
case_sensitive=False,
|
||||
), help='Set the debug level for the standard output.')
|
||||
),
|
||||
help='Set the debug level for the standard output.'
|
||||
)
|
||||
@click.option('--log-file', '-l', help="File to store all debug messages.")
|
||||
#@click.option("--dummy","-n", is_flag=True, help="Don't do anything, just show what would be done.") # Don't forget to add dummy to parameters of main function
|
||||
# @click.option("--dummy","-n", is_flag=True,
|
||||
# help="Don't do anything, just show what would be done.")
|
||||
@click_config_file.configuration_option()
|
||||
def __main__(debug_level, log_file, **kwargs):
|
||||
return __project_codename__(debug_level, log_file, **kwargs)
|
||||
def __main__(**kwargs):
|
||||
return __project_codename__(**kwargs)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
__main__()
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
"""Setup script"""
|
||||
|
||||
import setuptools
|
||||
setuptools.setup(
|
||||
scripts=['__project_codename__/__project_codename__.py'],
|
||||
|
|
Loading…
Reference in a new issue