Xcodeで色付きログのライブラリ(ColorLogger.swift)を作った

  • 31
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

Swiftプロジェクトで色付きのログを出すシンプルなライブラリを作りましたので、よかったら使ってください。

https://github.com/nishiyamaosamu/ColorLogger

準備

  • まずXcodeColors をインストールする必要があります。XcodeColorsをダウンロードしてください。
  • XcodeColorsのプロジェクト(XcodeColors.xcodeproj)を開き、XcodeColors targetをコンパイルします。
  • そうすると、"~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/XcodeColors.xcplugin"が生成されるはずです。
  • Xcodeを再起動します。再度XcodeColorsのプロジェクトを開いてください。
  • TestXcodeColors targetを実行させて、ログに色がついていればXcodeColorsは有効です。

使い方

1 - ColorLogger.swiftをプロジェクトにいれてください。

2 - AppDelegate.swiftのグローバルなところに以下のようにインスタンスを定義しましょう。

let log = ColorLogger.defaultInstance

つまりこんな感じ


import UIKit

let log = ColorLogger.defaultInstance

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?


    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

3 - あとは好きなところで、ログを書きます。

log.verbose("This is Verbose Log")
log.debug("This is Debug Log")
log.info("This is Info Log")
log.warning("This is Warning Log")
log.error("This is Error Log")

4 - コンソールに以下のように表示されます。

screenshot

追加設定

ログレベルを調整できます。デフォルトは.Debugです。

log.outputLogLevel = .Warning

いくつかのメッセージを出し分けできます。デフォルトは全てtrueです。

log.showLogLevel = true
log.showFileInfo = false
log.showDate = false
log.showFunctionName = true

ログを止めたいときは、outputLogLevelを.Noneにしてください。

log.outputLogLevel = .None

最後に

最低限の要素で作りました。個人的に時間やファイル情報などは後ろで、グレーアウトしてたほうが見やすかったので、そんな感じになってますが、ご自身でカスタマイズされても良いと思います。
もちろんプルリクエストも歓迎です。

https://github.com/nishiyamaosamu/ColorLogger