mirror of
https://github.com/TriM-Organization/Musicreater.git
synced 2024-11-11 01:27:35 +08:00
72 lines
2.2 KiB
Python
72 lines
2.2 KiB
Python
"""提供对于音创系列的日志"""
|
||
# 诸葛亮与八卦阵帮忙修改语法 日期:---2022年1月19日
|
||
# 统计:致命(三级)错误:0个;警告(二级)错误:0个;语法(一级)错误:9个
|
||
|
||
import logging
|
||
import os
|
||
import datetime
|
||
|
||
StrStartTime = str(datetime.datetime.now()).replace(':', '_')[:-7]
|
||
time = StrStartTime
|
||
|
||
main_path = './log/'
|
||
|
||
position = main_path + time
|
||
|
||
logger = logging.getLogger(__name__)
|
||
logger.setLevel(level=logging.INFO)
|
||
|
||
if not os.path.exists('./log/'):
|
||
os.makedirs('./log/')
|
||
|
||
# try:
|
||
# handler = logging.FileHandler(position + ".logger")
|
||
# except FileNotFoundError:
|
||
# os.makedirs('./log/')
|
||
handler = logging.FileHandler(position + ".logger")
|
||
print(position + ".logger")
|
||
|
||
handler.setLevel(logging.INFO)
|
||
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
|
||
handler.setFormatter(formatter)
|
||
|
||
console = logging.StreamHandler()
|
||
console.setLevel(logging.INFO)
|
||
|
||
logger.addHandler(handler)
|
||
logger.addHandler(console)
|
||
|
||
# import logger
|
||
|
||
# 载入日志功能
|
||
StrStartTime = str(datetime.datetime.now()).replace(':', '_')[:-7]
|
||
# logger.setting(StrStartTime)
|
||
"""字符串型的程序开始时间"""
|
||
|
||
|
||
def log(info: str = '', isWrite: bool = True, isPrinted: bool = False, isLoggerLibRecord: bool = True):
|
||
"""
|
||
info: 信息
|
||
isPrinted: 是否print(仅限金羿log,python官方的logging照常输出)
|
||
isLoggerLibRecord: 是否同时在logger库中记录
|
||
isWrite: 是否write(仅限金羿log,python官方的logging照常输出)
|
||
"""
|
||
"""将信息连同当前时间载入日志"""
|
||
# 致后来的开发者:请让金羿的log存在吧,不然他自己都看不懂你们写了什么了
|
||
# 我指的是程序内部
|
||
# ——金羿
|
||
if not os.path.exists('./log/'):
|
||
os.makedirs('./log/')
|
||
if isWrite:
|
||
with open('./log/' + StrStartTime + '.msct.log', 'a', encoding='UTF-8') as f:
|
||
f.write(str(datetime.datetime.now())[11:19] + ' ' + info + '\n')
|
||
if isPrinted:
|
||
print(str(datetime.datetime.now())[11:19] + ' ' + info)
|
||
if isLoggerLibRecord:
|
||
logger.info(info)
|
||
|
||
|
||
def end():
|
||
logging.disable(logging.INFO)
|
||
logging.shutdown()
|