Skip to content

Instantly share code, notes, and snippets.

@kazukitanaka0611
Last active August 29, 2015 14:16
Show Gist options
  • Save kazukitanaka0611/f2d598ac82a6fb074aee to your computer and use it in GitHub Desktop.
Save kazukitanaka0611/f2d598ac82a6fb074aee to your computer and use it in GitHub Desktop.
CocoaLumberjack.swift
import UIKit
class LogFormatter: DDDispatchQueueLogFormatter, DDLogFormatter {
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 & .Error == .Error {
logLevel = "E"
} else if logFlag & .Warning == .Warning {
logLevel = "W"
} else if logFlag & .Info == .Info {
logLevel = "I"
} else if logFlag & .Debug == .Debug {
logLevel = "D"
} else if logFlag & .Verbose == .Verbose {
logLevel = "V"
} else {
logLevel = "?"
}
let formattedLog = "\(dateAndTime) |\(logLevel)| [\(logMessage.fileName) \(logMessage.function)] #\(logMessage.line): \(logMessage.message)"
return formattedLog;
}
}
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// Override point for customization after application launch.
defaultDebugLevel = DDLogLevel.Warning
var ttyLogger = DDTTYLogger.sharedInstance()
ttyLogger.logFormatter = LogFormatter()
DDLog.addLogger(ttyLogger)
PTEDashboard.sharedDashboard().show()
DDLogWarn("DDLogWarn");
DDLogDebug("DDLogDebug");
return true
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment