MCPcopy Create free account
hub / github.com/aaPanel/BaoTa / write_log

Function write_log

task.py:71–125  ·  view source on GitHub ↗

@name 写入日志 @author hwliang<2021-08-12> @param *args 要写入到日志文件的信息可以是多个,任意类型 @param _level 日志级别 @param color 日志颜色,可选值:red,green,yellow,blue,purple,cyan,white,gray,black,info,success,warning,warn,err,error,debug,trace,critical,fatal

(*args, _level='INFO', color="debug")

Source from the content-addressed store, hash-verified

69
70
71def write_log(*args, _level='INFO', color="debug"):
72 """
73 @name 写入日志
74 @author hwliang<2021-08-12>
75 @param *args <any> 要写入到日志文件的信息可以是多个,任意类型
76 @param _level<string> 日志级别
77 @param color<string> 日志颜色,可选值:red,green,yellow,blue,purple,cyan,white,gray,black,info,success,warning,warn,err,error,debug,trace,critical,fatal
78 @return void
79 """
80
81 color_dict = {
82 'red': '\033[31m',
83 'green': '\033[32m',
84 'yellow': '\033[33m',
85 'blue': '\033[34m',
86 'purple': '\033[35m',
87 'cyan': '\033[36m',
88 'white': '\033[37m',
89 'gray': '\033[90m',
90 'black': '\033[30m',
91 'info': '\033[0m',
92 'success': '\033[32m',
93 'warning': '\033[33m',
94 'warn': '\033[33m',
95 'err': '\033[31m',
96 'error': '\033[31m',
97 'debug': '\033[36m',
98 'trace': '\033[35m',
99 'critical': '\033[31m',
100 'fatal': '\033[31m'
101 }
102
103 _log = []
104 if color:
105 color_start = color_dict.get(color.strip().lower(), "")
106 if color_start:
107 _log.append(color_start)
108
109 _log.append("[{}][{}]".format(datetime.now().strftime("%Y-%m-%d %H:%M:%S"), _level.upper()))
110 for _info in args:
111 try:
112 if isinstance(_info, (list, tuple)):
113 _log.append(json.dumps(_info, ensure_ascii=False))
114 elif isinstance(_info, dict):
115 _log.append(json.dumps(_info, indent=4, ensure_ascii=False))
116 else:
117 _log.append(str(_info))
118 except:
119 _log.append(str(_info))
120 _log.append(" ")
121
122 if _log[0].startswith('\033'):
123 _log.append('\033[0m')
124
125 write_file(TASK_LOG_FILE, ''.join(_log) + '\n', mode='a+')
126
127
128def exec_shell(cmd_string, cwd=None, shell=True):

Callers 15

proc_execute_taskMethod · 0.70
do_onceMethod · 0.70
startMethod · 0.70
startMethod · 0.70
do_onceMethod · 0.70
proc_workerMethod · 0.70
startMethod · 0.70
service_panelMethod · 0.70
save_installed_msgMethod · 0.70
update_installed_msgMethod · 0.70
do_oneMethod · 0.70
_init_tableMethod · 0.70

Calls 7

nowMethod · 0.80
write_fileFunction · 0.70
getMethod · 0.45
appendMethod · 0.45
formatMethod · 0.45
dumpsMethod · 0.45
joinMethod · 0.45

Tested by

no test coverage detected