@@ -150,48 +150,48 @@ public final class NKLogFileManager: @unchecked Sendable {
150150
151151 // MARK: - Public API
152152
153- public func writeLog( debug message: String ) {
154- writeLog ( " [DEBUG] \( message) " )
153+ public func writeLog( debug message: String , minimumLogLevel : NKLogLevel = . compact ) {
154+ writeLog ( " [DEBUG] \( message) " , minimumLogLevel : minimumLogLevel )
155155 }
156156
157- public func writeLog( info message: String ) {
158- writeLog ( " [INFO] \( message) " )
157+ public func writeLog( info message: String , minimumLogLevel : NKLogLevel = . compact ) {
158+ writeLog ( " [INFO] \( message) " , minimumLogLevel : minimumLogLevel )
159159 }
160160
161- public func writeLog( warning message: String ) {
162- writeLog ( " [WARNING] \( message) " )
161+ public func writeLog( warning message: String , minimumLogLevel : NKLogLevel = . compact ) {
162+ writeLog ( " [WARNING] \( message) " , minimumLogLevel : minimumLogLevel )
163163 }
164164
165- public func writeLog( error message: String ) {
166- writeLog ( " [ERROR] \( message) " )
165+ public func writeLog( error message: String , minimumLogLevel : NKLogLevel = . compact ) {
166+ writeLog ( " [ERROR] \( message) " , minimumLogLevel : minimumLogLevel )
167167 }
168168
169- public func writeLog( success message: String ) {
170- writeLog ( " [SUCCESS] \( message) " )
169+ public func writeLog( success message: String , minimumLogLevel : NKLogLevel = . compact ) {
170+ writeLog ( " [SUCCESS] \( message) " , minimumLogLevel : minimumLogLevel )
171171 }
172172
173- public func writeLog( network message: String ) {
174- writeLog ( " [NETWORK] \( message) " )
173+ public func writeLog( network message: String , minimumLogLevel : NKLogLevel = . compact ) {
174+ writeLog ( " [NETWORK] \( message) " , minimumLogLevel : minimumLogLevel )
175175 }
176176
177- public func writeLog( start message: String ) {
178- writeLog ( " [START] \( message) " )
177+ public func writeLog( start message: String , minimumLogLevel : NKLogLevel = . compact ) {
178+ writeLog ( " [START] \( message) " , minimumLogLevel : minimumLogLevel )
179179 }
180180
181- public func writeLog( stop message: String ) {
182- writeLog ( " [STOP] \( message) " )
181+ public func writeLog( stop message: String , minimumLogLevel : NKLogLevel = . compact ) {
182+ writeLog ( " [STOP] \( message) " , minimumLogLevel : minimumLogLevel )
183183 }
184184
185185 /// Writes a tagged log message with a specific log level.
186186 /// - Parameters:
187187 /// - tag: A custom tag to classify the log message (e.g. "SYNC", "AUTH").
188188 /// - emoji: .info, .debug, .warning, .error, .success ..
189189 /// - message: The log message content.
190- public func writeLog( tag: String , emoji: NKLogTagEmoji , message: String ) {
190+ public func writeLog( tag: String , emoji: NKLogTagEmoji , message: String , minimumLogLevel : NKLogLevel = . compact ) {
191191 guard !tag. isEmpty else { return }
192192
193193 let taggedMessage = " [ \( tag. uppercased ( ) ) ] \( message) "
194- writeLog ( taggedMessage, emoji: emoji)
194+ writeLog ( taggedMessage, emoji: emoji, minimumLogLevel : minimumLogLevel )
195195 }
196196
197197 /// Writes a log message with an optional typeTag to determine console emoji.
@@ -201,8 +201,14 @@ public final class NKLogFileManager: @unchecked Sendable {
201201 /// - Parameters:
202202 /// - message: The log message to record.
203203 /// - emoji: Optional type to determine console emoji (e.g. [INFO], [ERROR]).
204- public func writeLog( _ message: String ? , emoji: NKLogTagEmoji ? = nil ) {
205- guard logLevel != . disabled, let message = message else { return }
204+ public func writeLog( _ message: String ? , emoji: NKLogTagEmoji ? = nil , minimumLogLevel: NKLogLevel = . compact) {
205+ guard logLevel != . disabled,
206+ let message = message else {
207+ return
208+ }
209+ if minimumLogLevel > logLevel {
210+ return
211+ }
206212
207213 let fileTimestamp = Self . stableTimestampString ( )
208214 let consoleTimestamp = Self . localizedTimestampString ( )
0 commit comments