カテゴリー: iOS

[Swift]ログフレームワーク「CocoaLumberjack」をSwiftで使ってみた

はじめに

こんにちは、nukkyです。
今回はログ管理に便利なライブラリ「CocoaLumberjack」を紹介したいと思います。

準備

今回もおなじみCarthageを使用します。
Cartfileにこちらを記述してください。

github "CocoaLumberjack/CocoaLumberjack"

そうしたら、以下のコマンドでビルドしてください。

carthage update --platform iOS

 

実装

出力先の設定

「CocoaLumberjack」はログの出力先を選択することができます。
主な出力先は3つになります
・Xcodeのコンソール
・アップルのシステムロガー
・ファイル
以下の方法で設定できます。

// 可能であればXcodeのコンソールにログを出力する。
DDLog.add(DDTTYLogger.sharedInstance)

// アップルのシステムロガーに送信する(送信した内容はConsole.appで確認可能)。
DDLog.add(DDASLLogger.sharedInstance)

// ファイルにログを出力する。
let fileLogger: DDFileLogger = DDFileLogger()
// ファイルの生成周期
fileLogger.rollingFrequency = TimeInterval(60*60*24)
// 生成するファイル数の最大
fileLogger.logFileManager.maximumNumberOfLogFiles = 7
DDLog.add(fileLogger)

 

ログの出力レベルを設定する

プロジェクトで使用するログの出力レベルを設定します。
設定できるログの出力レベルは以下になります。
DDLogLevel.error
DDLogError関数を使用したログ出力を表示する。
DDLogLevel.warning
DDLogError関数とDDLogWarn関数を使用したログ出力を表示する。
DDLogLevel.info
DDLogError関数とDDLogWarn関数とDDLogInfo関数を使用したログ出力を表示する。
DDLogLevel.debug
DDLogError関数とDDLogWarn関数とDDLogInfo関数とDDLogDebug関数を使用したログ出力を表示する。
DDLogLevel.verbose
すべて(DDLogError関数、DDLogWarn関数、DDLogInfo関数、DDLogVerbose関数)のログ出力を表示する。
DDLogLevel.off
ログを表示しない。

設定方法は以下になります。

DDLog.add(DDTTYLogger.sharedInstance, with: DDLogLevel.info)

 

ログの出力

実際ログを出力する方法は以下になります、どの関数が出力レベルに関しているかは上記の通りです。

DDLogVerbose("Verbose");
DDLogDebug("Debug");
DDLogInfo("Info");
DDLogWarn("Warn");
DDLogError("Error");

 

 

さいごに

「CocoaLumberjack」いかがだったでしょうか?ログの出力は大事ですが開発や本番環境を考えると色々面倒なことが多いので、こういうライブラリを使用して快適に開発を進めたいですね。

nukky

シェア
執筆者:
nukky
タグ: Swift

最近の投稿

フロントエンドで動画デコレーション&レンダリング

はじめに 今回は、以下のように…

2週間 前

Goのクエリビルダー goqu を使ってみる

はじめに 最近携わっているとあ…

4週間 前

【Xcode15】プライバシーマニフェスト対応に備えて

はじめに こんにちは、suzu…

2か月 前

FSMを使った状態管理をGoで実装する

はじめに 一般的なアプリケーシ…

3か月 前