Help us understand the problem. What is going on with this article?

iOSのログをリモートで確認するために安定のmatttさん製のAntennaを使う

More than 3 years have passed since last update.

USBで繋いでないときもNSLogの内容がみたい時ってありますよね?

特に位置情報系を使ったりするアプリなんかでは、今Regionに入った?出た?近づいている?って情報がとても気になります。

まあLocalNotificationでもいい場合も多いのですが、うざいし、iOS8以下だと過去分も見返せないなんてこともあると思います。

そんなときは、ここで紹介するAntennaという世界的に超有名なiOSエンジニアであるmatttさん作のライブラリを使って見ましょう!

自分が立てたサーバーに簡単にログ情報を送ってくれますよ!

アプリ側の準備

Antennaを導入します。

https://github.com/mattt/Antenna

pod 'Antenna'

と書いて、

$ pod install

あとは使用する前にかならず

    [[Antenna sharedLogger] addChannelWithURL:[NSURL URLWithString:@"http://<YOUR_IP_OR_DOMAIN>:5000"] method:@"LOG"];

を実行しておきます。

あとはログがほしい場所で、

[[Antenna sharedLogger] log:@"Logging!!"];

or

[[Antenna sharedLogger] log:[NSString stringWithFormat:@"%@", @"hoge"]];

と書くだけです。NSLogの代わりに使って見ましょう。

サーバー側の準備

https://github.com/mattt/rack-http-logger

Antennaと対になるWebアプリケーションが用意されてます。
Ruby製なのですが、これを書いたのもmatttさんってのがすごいですね(^q^)

こちらの構築も簡単です(Ruby自体の導入は省きます)。

git clone git@github.com:mattt/rack-http-logger.git
cd rack-http-logger/example
gem install foreman
bundle install
foreman start

これだけです!localhost:5000で立ち上がっているはずです。

あとはローカルネットワーク内であれば、ifconfigなど叩いてIPを取得して

Antennaの方の設定でhttp://<確認したIP>:5000などとして、自分のiPhoneの実機を同じWi-Fiにつなぐだけです。

これだけで、順次Logが呼ばれるたびに、出力が更新されていきます。

簡単便利!

kazuph
はて風呂にはポエム、QiitaにはTipsを書くようにしています。起業してIoTプロダクト開発のリードエンジニアを経験し、同社CTOに就任。その後転職し再度エンジニアとして開発に従事。AWS、Rails、iOS、Android、組み込みらへんが守備範囲です。最近はVim派をやめてVScodeでNode書いてます。
http://kazuph.hateblo.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away