Passed
Pull Request — master (#50)
by Cyb3r
01:40
created

bot.utils.logger   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 14
dl 0
loc 33
rs 10
c 0
b 0
f 0
wmc 1

1 Function

Rating   Name   Duplication   Size   Complexity  
A make_logger() 0 28 1
1
"""Makes the logger for the program"""
2
import logging
3
4
5
def make_logger(name: str, log_level: str) -> logging.Logger:
6
    """Make_logger
7
    ---
8
9
    Creates the logger that is used by the bot. Also imported to cogs and datahandler.
10
11
    Arguments:
12
    ---
13
        name {str} -- Name of the logger
14
        log_level {str} -- The logging level. Valid strings are 'DEBUG', 'INFO', 'WARNING',
15
            'ERROR', 'CRITICAL'
16
17
    Returns:
18
    ---
19
        logging.Logger -- Logger class that handled the logging.
20
    """
21
    logger = logging.getLogger(name)
22
    logger.setLevel(log_level)
23
    formatter = logging.Formatter(
24
        "%(levelname)s - %(name)s - %(asctime)s - %(message)s", "%Y-%m-%d %H:%M:%S"
25
    )
26
    fh = logging.FileHandler("{}.log".format(name), mode="w")
27
    fh.setFormatter(formatter)
28
    logger.addHandler(fh)
29
    ch = logging.StreamHandler()
30
    ch.setFormatter(formatter)
31
    logger.addHandler(ch)
32
    return logger
33