この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
実機でログを確認したい!
以前、iOSで使える柔軟なログフレームワーク〜CocoaLumberjack | Developers.IOで紹介したCocoaLumberjackは出力先や出力レベルの設定が行える柔軟なログフレームワークですが、実機で確認するときにPCに接続しなければログが確認できませんでした。実機を持ち歩きながらログを確認できたら便利ですよね。
そういうときはLumberjackConsoleを使いましょう!
LumberjackConsoleを有効にすると、アプリの画面に専用のコンソール画面が追加されます。そこから直接実行中のログを確認することができ、更に検索やフィルタまでできちゃいます!便利!
それでは、実際に使ってみましょう。
尚、以下の環境を前提に解説します。
- Mac OS X 10.9
- Xcode 5.0.2
- iOS 7
今回は短いですよー。
インストール
インストールはCocoaPodsから行いましょう。Podfileを以下のように変更してください。
Podfile
pod 'CocoaLumberjack'
pod 'LumberjackConsole'
Podfileを書いたらいつものように、
pod install
を実行しましょう。
LumberjackConsoleを使う準備
iOSで使える柔軟なログフレームワーク〜CocoaLumberjack | Developers.IOでは、CocoaLumberjackの出力先として、
- DDLog
- DDTTYLogger
- DDASLLogger
- DDFileLogger
の4つを解説しました。LumberjackConsoleは新たに出力先としてアプリの画面が追加されるイメージです。なので、下記のように書くことができます。
AppDelegate.m
#import "AppDelegate.h"
#import <CocoaLumberjack/DDLog.h>
#import <CocoaLumberjack/DDTTYLogger.h>
#import <LumberjackConsole/PTEDashboard.h>
// 全レベルのログを表示する
static const int ddLogLevel = LOG_LEVEL_VERBOSE;
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// アプリ画面にログを出力する
[DDLog addLogger:[PTEDashboard sharedDashboard].logger];
// エラーが発生した場合
DDLogError(@"エラーが発生したぞ!");
// 警告が発生した場合
DDLogWarn(@"Warning!");
// おおまかな情報を表示したりなど
DDLogInfo(@"APIから〇〇情報をゲット");
// デバッグ情報
DDLogDebug(@"XXXメソッドが実行されました。");
// デバッグに必要なより細かい情報など
NSString *str = @"文字列です";
DDLogVerbose(@"strの内容: %@", str);
return YES;
}
@end
前回説明したように、ログレベルも忘れずに定義しましょう。
LumberjackConsoleを試す!
それでは実際に実行してみましょう。すると、ステータスバーの上に見覚えのないビューが追加されているはずです。左側にあるアイコンをタップすると、コンソール画面が表示されます。ソースコードに書いたログが出力されていることが確認できるはずです。
当然、テキストフィールドから文字を検索したり、ログレベルによるフィルタ機能が使えます。
まとめ
位置情報サービスのテストなどの場合は、どうしても実機を持ち歩かなければならないですよね。でもこれで、実機を持ち歩きながらログの確認ができますね!