From cdbc0e02f38f02a5b69835382a56e17aee54ddfa Mon Sep 17 00:00:00 2001 From: ZacharyZcR <2903735704@qq.com> Date: Wed, 15 Jan 2025 15:14:15 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E4=BF=AE=E6=94=B9=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E6=98=BE=E7=A4=BA=E7=AD=89=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Common/Flag.go | 2 +- Common/Log.go | 36 ++++++++++++++++++++++++------------ 2 files changed, 25 insertions(+), 13 deletions(-) diff --git a/Common/Flag.go b/Common/Flag.go index 1dd8f9e..cca6085 100644 --- a/Common/Flag.go +++ b/Common/Flag.go @@ -165,7 +165,7 @@ func Flag(Info *HostInfo) { flag.BoolVar(&Silent, "silent", false, "启用静默扫描模式(减少屏幕输出)") flag.BoolVar(&NoColor, "nocolor", false, "禁用彩色输出显示") flag.BoolVar(&JsonFormat, "json", false, "以JSON格式输出结果") - flag.StringVar(&LogLevel, "log", LogLevelInfo, "日志输出级别(ALL/SUCCESS/ERROR/INFO/DEBUG)") + flag.StringVar(&LogLevel, "log", LogLevelSuccess, "日志输出级别(ALL/SUCCESS/ERROR/INFO/DEBUG)") flag.BoolVar(&ShowProgress, "pg", false, "开启进度条显示") flag.Parse() diff --git a/Common/Log.go b/Common/Log.go index 47ab09f..a645223 100644 --- a/Common/Log.go +++ b/Common/Log.go @@ -73,21 +73,33 @@ func formatLogMessage(entry *LogEntry) string { // printLog 根据日志级别打印日志 func printLog(entry *LogEntry) { // 根据当前设置的日志级别过滤日志 + shouldPrint := false switch LogLevel { + case LogLevelDebug: + // DEBUG级别显示所有日志 + shouldPrint = true + case LogLevelError: + // ERROR级别显示 ERROR、SUCCESS、INFO + shouldPrint = entry.Level == LogLevelError || + entry.Level == LogLevelSuccess || + entry.Level == LogLevelInfo + case LogLevelSuccess: + // SUCCESS级别显示 SUCCESS、INFO + shouldPrint = entry.Level == LogLevelSuccess || + entry.Level == LogLevelInfo case LogLevelInfo: - // INFO模式下只打印 INFO、SUCCESS、ERROR 级别的日志 - if entry.Level != LogLevelInfo && - entry.Level != LogLevelSuccess && - entry.Level != LogLevelError { - return - } - case LogLevelDebug, LogLevelAll: - // Debug或ALL模式下打印所有日志 + // INFO级别只显示 INFO + shouldPrint = entry.Level == LogLevelInfo + case LogLevelAll: + // ALL显示所有日志 + shouldPrint = true default: - // 其他模式下只打印指定级别的日志 - if entry.Level != LogLevel { - return - } + // 默认只显示 INFO + shouldPrint = entry.Level == LogLevelInfo + } + + if !shouldPrint { + return } OutputMutex.Lock()