webアプリをデプロイしたら!

LAMP環境でwebアプリケーションをデプロイしたあと
なにをすべきかかんがえる!

  • log

一番大事なのはログっしょー。
とりあえず、ログを。。

アクセスがあるたびに出力されるログ。
行数=アクセス数(多分。大体。

    • error.log

エラーがあったら出力される。
ちなみにファイル無いとかでもエラーでるから、
CSSとかの名前まちがってるとどんどんたまってく。

クエリでエラーがあったらだす。無いはずのテーブル参照しようとしたり。

    • slow.log

クエリが返ってくるのが遅い場合に書き込まれる。

    • 一般ログ

これはあんま役に立たないと思う。
クエリが全部表示されるのみ。多分HDD逼迫するしパフォーマンスに影響があるはず。


mysqlのログで厄介だなーと思うのが、
デフォルトではログが出力されてないことかな。
errorは覚えてないけどslowとか一般ログは指定が必要。
なんでレスポンスが遅いんだークエリみてみよう!
ってなったときに、どうしても再起動をかける必要がある。

個人的にはあんまりいらないかな・・ておもうけど、必要があるなら出してあげる。

  • OSのログ

これは勝手にでる設定なってるはず。
これをみることになる場合は、、、結構クリティカル?
(ちなみに後述するローテートは自動で対応されてる、はず。連番がつく。Linuxなら。)

  • ログローテート

単純にログを出す設定で放置すると、ログはたまり続ける。
(こないだ数ギガたまったログファイルをみつけたw)
なので、ローテーションしてあげる。
具体的にどうするかっていうと

  1. ログファイルを別名でコピー
  2. 既存のログファイルをフラッシュする
  3. 必要に応じて、過去ログを圧縮、転送する。

Apacheはカスタムログをつかう!今度やるので書く。

普通は日ごとにローテーションする。

cp log.file log.yyyymmdd; // 名前付けてコピー
cat '' > log.file // フラッシュ

Cronとかで回します!daily!

  • 監視系

Cactiいれたり、XABBIXいれて負荷を確認できるようにする!
もちろん閾値設定して、アラートメールなげるようにしたり。

  • その他監視系

負荷だけでなく、エラーログから特定のキーワードが出力されたら、
メールでアラートとかもやるやる。
サービスとかによるけど、エラーのなかでもスルーできるエラーと
見逃せないエラーがあったり。。
ナレッジが必要か・・・w




結構アバウト。。
丁度設定する必要があるからまとめなおします。