Cookpad Tech Kitchen #9 https://cookpad.connpass.com/event/60831/
モバイルファースト室の @rejasupotaro です。 クックパッドでは、サービスをリリースしてログを収集して分析して改善してまたリリースして、というサイクルを素早く回すことでより良いものを作るということをウェブではやってきました。 クックパッドのサービス開発のフレームワークをモバイルアプリでも適用したいのですが、モバイルアプリにはウェブアプリと違ったロギングの難しさがあります。 今回はモバイルアプリのロギングの問題点とPureeというログ収集ライブラリについて話します。 モバイルアプリのロギングの難しさ ウェブアプリでは、基本的にはサーバー側でログを収集することができますが、モバイルアプリの場合は画面の制御はアプリ側で行われ、APIを介してデータを受け取るため、クライアント側でログを収集して送信する必要があります。 アプリのログを収集するのに、画面遷移をしたりタップするたびにサーバー
View real-time data and statistics from any logfile on any server with SSH, in an intuitive and entertaining way. FEATURES Real-Time Multiple logfiles on multiple servers Configurable layout Multiple logfile parsers (Apache Combined, Rails, IIS, Postfix/spamd/clamd, Nginx, Squid, PostgreSQL, PureFTPD, MySQL, TShark, qmail/vmpop3d) Custom events Show rate, total or average If you can 'tail' it, you
とすればいいわけです。 ためしてみる GETの場合 GET /posts?password=abc123 を叩いた場合ログに Started GET "/posts?password=[FILTERED]" for 127.0.0.1 at 2012-09-20 05:16:44 +0900 Processing by PostsController#index as HTML Parameters: {"password"=>"[FILTERED]"} とURLもパラメータも [FILTERED] に変えられて出力されます。 POSTの場合 POST /posts data: password=abc123 を叩いた場合ログは Started POST "/posts" for 127.0.0.1 at 2012-09-20 05:18:12 +0900 Processing by Po
システムのログをつかさどるsyslogd ログには、アプリケーションが独自に出力するものと、syslogdを利用して出力するものの2種類があります。 独自のログを出力する代表的なアプリケーションにはApacheやSquid、Sambaなどがあります。独自のログ設定を持つアプリケーションに関してはアプリケーションのマニュアルなどを読んでいただくとして、ほとんどのアプリケーションはsyslogdを利用してログを出力しています。以後は、syslogdを利用したログについて説明します(注)。 注:LinuxおよびUNIXでsyslogdがインストールされていないことは考えにくいため、特にインストール方法については言及しません。また、後述するlogrotateに関しても同様です。 Linuxでは、主なログの出力先は/var/logディレクトリです。ディレクトリ内を確認すると分かりますが、前述したよう
MySQL 5.1で追加されたメジャーな機能の影に隠れた、地味だが便利な改善がある。それがスロークエリログに関する仕様である。MySQL 5.0まではスロークエリログは1秒未満のクエリを捕捉することが出来なかった。が、MySQL 5.1では1マイクロ秒までのクエリを記録できるようになっている。従って、0.5秒かかるけど大量に実行されてパフォーマンスに大きな影響を与えている!というようなクエリの発見が出来るようになった。1秒未満のクエリを追跡したい場合、例えば以下のような設定をする。 [mysqld] slow_query_log=ON slow_query_log_file=mysql-slow.log long_query_time=0.1 MySQL 5.0まではlog_slow_queryというオプションだったのが、MySQL 5.1ではslow_query_logというオプション名
複数台あるMySQLのスロークエリログを、いちいちDBサーバにログインして読むのがめんどうくさい log_output = FILE,TABLE としてテーブルに入れてリモートからSELECTできるようにするのは? → テーブルに入れた場合、query timeとlock timeの型がTIME型になり精度が秒になってしまうのでダメ ファイルに出力したものをログサーバーにどうにかして飛ばす 10分おきとかにscpする →これでできるのはわかるけど、他にいい方法ないかなぁ syslogで飛ばすのはどうか (id:stanaka++) →srd!! スロークエリログに限らず、追記されるファイル全般に適用できると思います。 rsyslogの方がいけてるそうですが、自分が使ってるのは syslog-ng 2.0.9 なのでそ の設定例です。 DBサーバ # follow_freq(180) で 3
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く