blob: 1c2dcb572d762b54aaddf326193b5f3f2ea579e1 [file] [log] [blame]
//
// Formatter.swift
// Lumberjack
//
// Created by C.W. Betts on 10/3/14.
//
//
import Foundation
import CocoaLumberjack.DDDispatchQueueLogFormatter
class Formatter: DDDispatchQueueLogFormatter {
let threadUnsafeDateFormatter: NSDateFormatter
override init() {
threadUnsafeDateFormatter = NSDateFormatter()
threadUnsafeDateFormatter.formatterBehavior = .Behavior10_4
threadUnsafeDateFormatter.dateFormat = "HH:mm:ss.SSS"
super.init()
}
override func formatLogMessage(logMessage: DDLogMessage!) -> String {
let dateAndTime = threadUnsafeDateFormatter.stringFromDate(logMessage.timestamp)
var logLevel: String
let logFlag = logMessage.flag
if logFlag.contains(.Error) {
logLevel = "E"
} else if logFlag.contains(.Warning){
logLevel = "W"
} else if logFlag.contains(.Info) {
logLevel = "I"
} else if logFlag.contains(.Debug) {
logLevel = "D"
} else if logFlag.contains(.Verbose) {
logLevel = "V"
} else {
logLevel = "?"
}
let formattedLog = "\(dateAndTime) |\(logLevel)| [\(logMessage.fileName) \(logMessage.function)] #\(logMessage.line): \(logMessage.message)"
return formattedLog;
}
}