「カナかな?」を実機デバッグし、ログ送出機能を追加してリリースしてみた。
お疲れ様です。高橋です。
デバッグしてみた
先日リリースした、西野カナ風の歌詞を自動生成するアプリ「カナかな?」を、会社の人にダウンロードしてもらって、実機確認を行いました。
LINEボタンでの連携箇所で「ご利用のバージョンでは対応していない。不正なURL」的なメッセージが表示され、上手く連携出来ていませんでした。帰宅して早速ググってみると、どうもLINE側に受け渡す文字列をURLEncodeしないといけないみたいです。コードを確認すると確かにEncode部分が抜けていたので、サックリと実装しました。
アプリからログを送ってもらいたい
せっかくリリースするのにバグフィックスだけでは勿体無いので、アプリの挙動をサーバ側にログとして送信しようと思います。全体イメージはこんな感じです。
「カナかな?」が起動したり、歌詞再作成したり、tweetボタン押したり、LINEボタン押したりする全ての箇所で、非同期HTTP通信を走らせ、このblogが動いている遙かオレゴン州のwebサーバにログを送ります。
別にこのwebサーバ側で受け口のアプリケーションをわざわざ作る必要はなく、httpdがいい感じにaccess_logファイルに書き込んでくれます。STATUS CODE 404ですが。
で、それをfluentdでin_tailしたものを定期的にMySQLに差分insertしまくります。
んで、私が愛してやまないビジュアライゼーションツール「QlikView Personal Edition」を使い、自宅からssh tunenlしてEC2のMySQLにODBCして可視化する、という算段です。
106.153.34.10 - - [06/Dec/2014:00:01:34 +0900] "GET /appLogapp_id=jp.curious4dev.nishinokanakana&adid=&act=boot HTTP/1.1" 404 12045 "-" "Apache-HttpClient/UNAVAILABLE (java 1.4)" 106.153.34.10 - - [06/Dec/2014:00:01:36 +0900] "GET /appLogapp_id=jp.curious4dev.nishinokanakana&adid=&act=re_create HTTP/1.1" 404 12045 "-" "Apache-HttpClient/UNAVAILABLE (java 1.4)" 106.153.34.10 - - [06/Dec/2014:00:01:36 +0900] "GET /appLogapp_id=jp.curious4dev.nishinokanakana&adid=&act=tweet HTTP/1.1" 404 12045 "-" "Apache-HttpClient/UNAVAILABLE (java 1.4)" 106.153.34.10 - - [06/Dec/2014:00:01:37 +0900] "GET /appLogapp_id=jp.curious4dev.nishinokanakana&adid=&act=line HTTP/1.1" 404 12045 "-" "Apache-HttpClient/UNAVAILABLE (java 1.4)" 106.153.34.10 - - [06/Dec/2014:00:01:40 +0900] "GET /appLogapp_id=jp.curious4dev.nishinokanakana&adid=&act=tweet HTTP/1.1" 404 12045 "-" "Apache-HttpClient/UNAVAILABLE (java 1.4)" 106.153.34.10 - - [06/Dec/2014:00:01:41 +0900] "GET /appLogapp_id=jp.curious4dev.nishinokanakana&adid=&act=tweet HTTP/1.1" 404 12045 "-" "Apache-HttpClient/UNAVAILABLE (java 1.4)" 106.153.34.10 - - [06/Dec/2014:00:01:41 +0900] "GET /appLogapp_id=jp.curious4dev.nishinokanakana&adid=&act=tweet HTTP/1.1" 404 12045 "-" "Apache-HttpClient/UNAVAILABLE (java 1.4)"
これだけで、
- remote_addr – IPアドレス
- app_id – どのアプリケーションからのコールか
- datetime – イベント発生時の日付
- adid – 端末を特定する広告ID
- action – 起動/歌詞再作成/Tweet/Line
といった情報を得ることが出来ます。
残タスク
今日はログの出力部分までは行けたので、残タスクは
- fluentdの導入
- 自宅からODBC確立
- QlikViewでの接続と可視化
となります。
adidはプライバシーポリシーが無いと使ってはダメなようなので、「私の考える最強のプライバシーポリシー」を作り、Google側に設定しておきます。でないと、rejectされるようです。
広告IDはエミュだと取得出来ないようなので、また来週誰かに実機デバッグをしてもらいます。
以上、よろしくお願い致します。
関連記事
-
-
アプリ開発に必要な要素技術
お疲れ様です。高橋です。 androidアプリ開発に必要な要素技術はものすごーー …
-
-
androidアプリの作り方
お疲れ様です。高橋です。 androidアプリの作り方は、ググったところ大体下記 …
-
-
androidアプリから総務省APIをコールしてみる
お疲れ様です。高橋です。 androidアプリから総務省APIをコールする事に成 …
-
-
街頭インタビュー生成アプリ
お疲れ様です。高橋です。 街頭インタビューっぽいアプリ 街頭インタビューっぽい画 …
-
-
「カナかな?」の2週間分のダウンロード数
お疲れ様です。高橋です。 本日の貴重な帰宅後の時間は、妻からの「なんとかっていう …
-
-
遅刻の言い訳提案システム 稼働四日目
お疲れ様です。高橋です。 本日も遅刻の言い訳提案システムのデータの分析と改善のた …
-
-
街頭インタビュー 背景人物切り替え機能の実装
お疲れ様です。高橋です。 本日は、背景人物を切り替える機能を実装しました。とりあ …
-
-
遅刻の言い訳提案システムとウコンの力
お疲れ様です。高橋です。 現在稼働を続けている遅刻の言い訳提案システムは、改めて …
-
-
DLリンク付き言い訳提案システムとDL数の関係について
お疲れ様です。高橋です。 DLリンク付きの言い訳提案システムを1週間稼働させ、そ …
-
-
Google Play Developer登録
お疲れ様です。高橋です。 本日は引き続きwordpress周りの設定を行うと同時 …

