結論
問題
遠隔にあるAndroidにインストールされた開発中のアプリのログを見たい。
例
- 開発中のアプリを使ってた時のログを後で見たい
- GPSの取得具合を見たい
- アプリ内で定期的に実行されるタスクのログを忘れずに確認したい
- など
例に賛同できなかったとしても、僕は見たい。
解決案
解決案1
google analytics とかでできそうだけど、あれは基本ユーザーが操作したことを保存する用だと思ってる。クリックとか。
解決案2
deploygateのログ機能がほしいものに近い。けど、過去ログは見れない。あと、月3,000円払う経済力が無い。
解決案3
Fabricなどのクラッシュレポートも近い。普段クラッシュ情報だけではなくExceptionが発生したときもFabricに送ったりしている。でもそうじゃなくて、もっと日常的なログをぶわーっと見たい。
解決案4
coolなAndroidエンジニア集団が居るcookpadさんもログツール作ってた。cookpad/puree-android: A log collector for Android
使ってないんだけど、なんかちょっと設定が大変そうなのと、ログクラスを別途作ったりしなきゃいけなさそうな感じがした。ログというより、google analyticsに近い感じがした。
解決案5
android_stackdriver_log
これは ログをGCMで送り、自前サーバーがその情報を受け取り、GCPのStackDriver に送るというもの。
Android -> GCM -> android_stackdriver_log(XMPP) -> StackDriver
みたいな流れです。
準備する流れをざっくり
githubのreadmeに書いてますので基本はそちらを御覧ください。
1.android_stackdriver_log を docker でdeployする。(GCPでしか動作確認してません)
2.AndroidのログをGCMで送信する仕組みを作る。(きっとみんなTimberなどを使っていることを祈る)
3.StackDriverにログが流れ出てくるのを見て(・∀・)ニヤニヤする。
なんかあったらコメントどうぞー