curious4dev

中国旅行、Arduinoなどを使った電子工作、その他色々。

*

「カナかな?」を実機デバッグし、ログ送出機能を追加してリリースしてみた。

 

お疲れ様です。高橋です。

デバッグしてみた

先日リリースした、西野カナ風の歌詞を自動生成するアプリ「カナかな?」を、会社の人にダウンロードしてもらって、実機確認を行いました。

LINEボタンでの連携箇所で「ご利用のバージョンでは対応していない。不正なURL」的なメッセージが表示され、上手く連携出来ていませんでした。帰宅して早速ググってみると、どうもLINE側に受け渡す文字列をURLEncodeしないといけないみたいです。コードを確認すると確かにEncode部分が抜けていたので、サックリと実装しました。

アプリからログを送ってもらいたい

せっかくリリースするのにバグフィックスだけでは勿体無いので、アプリの挙動をサーバ側にログとして送信しようと思います。全体イメージはこんな感じです。

app01

「カナかな?」が起動したり、歌詞再作成したり、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はエミュだと取得出来ないようなので、また来週誰かに実機デバッグをしてもらいます。

以上、よろしくお願い致します。

 - アプリ開発

  関連記事

遅刻の言い訳アプリ ~ボタンの幅を動的に決定~

お疲れ様です。高橋です。 遅刻の言い訳アプリを着々と実装しています。 全体進捗 …

街頭インタビュー 背景人物切り替え機能の実装

お疲れ様です。高橋です。 本日は、背景人物を切り替える機能を実装しました。とりあ …

SurfaceViewを使って絵を書き動かすサンプルをコピペして動かしてみた

お疲れ様です。高橋です。 本日はcocos2d-xの3.3rc0を導入しようと試 …

「寝坊した」人に自動的に遅刻の言い訳を提案する仕組みを稼働させてみた。

お疲れ様です。高橋です。 寝坊した人にアプリをオススメする仕組みを作りましたが、 …

選挙運動を疑似体験出来るシミュレータ「衆院選2014」を作った、が。

お疲れ様です。高橋です。 2014年11月21日に衆議院が解散され、12月2日に …

FreeなWindows向けDAWを使って作った音楽をwavからoggにしてAndroidアプリで鳴らしてみた。

お疲れ様です。高橋です。 先日POSTした「DAWを使って、ゲームの裏側で鳴らす …

遅刻の言い訳アプリのDL数が急増した原因

お疲れ様です。高橋です。 ふとgooglePlayのダウンロード状況を見たら、言 …

遅刻の言い訳提案システム 稼働二日目

お疲れ様です。高橋です。 遅刻の言い訳提案システムについて、先日課題として上げた …

DLリンク付き言い訳提案システムとDL数の関係について

お疲れ様です。高橋です。 DLリンク付きの言い訳提案システムを1週間稼働させ、そ …

遅刻の言い訳提案システム 稼働三日目 ~大失敗~

お疲れ様です。高橋です。 三日目を迎えた遅刻の言い訳提案システムですが、重大なバ …