2012年2月1日水曜日

sqliteでログをとってみよう。php編

sqlite3でログをとってみたら有用ではないのか?とおもったので、いろいろやってみます。
今回はphpでの動作。

ログを保存するのは、当然としてphpでデータを解析してページで確認とかしそうなので、その動作についていろいろ調べてみます。

とりあえず、UbuntuのVMでテストしたところ、問題なく動作しましたが、サクラのVPSでつかっているCentOSではsqlite_open等の関数が利用できませんでしたので、準備を進めます。

早速yumでせめて見ますが、僕の環境では、json_encodeがつかいたくてphp53(version 5.3)をインストールしていました。なのでphp_develをインストールするわけにはいかないみたいです。

# yum install php53-devel
を実行、とりあえずdevelをいれた
# yum install php-*
を実行、準備されているphp53シリーズを確認→動作自体はキャンセル
# yum install php-pear
peclをつかいたいのでpearをいれる。
入ったのでさっそくpeclの力を借りる
# pecl install SQLite
→makeに失敗。
ソースからいかなきゃいかんのね・・・

# pecl download SQLite
# tar zxvf SQLite-1.0.3.tgz
# cd SQLite-1.0.3
# ./configure
# make
ここでこけた。
とりあえずこちらを参考に・・・
CentOS5.1でphp-sqliteを利用するときのメモ
該当箇所をコメントアウトしていく・・・

うぅ〜だめだ。書いてあるとおりに変更しても通らない・・・peclはあきらめてphp-5.3のソースからいってみようとおもいます。
http://php.net/downloads.php
ここからソースを取得
5.3.9だけどまぁいいでしょう。
# tar zxvf php-5.3.9.tar.gz
解凍して・・・
# cd php-5.3.9/ext/sqlite
# phpize
やってみたところwarningがでた。が、まいいや。
# ./configure
# make
すんなり終わる。
# make test

FAIL sqlite, session storage test [tests/sqlite_session_001.phpt]
FAIL sqlite, session destroy test [tests/sqlite_session_002.phpt]
エラーでた・・・

とりあえずレポートを投げることにする。
エラーでてるけど、とりあえずmake installやっちゃう。
/usr/lib64/php/modulesと/usr/include/phpにデータがはいった。
起動時にうまく動作しなかった・・・orz

仕方ないので、古いphpをつかってみることにします。
というわけでphp.5.3.4をゲット
# phpize
# ./configure
# make
# make test
今度はどうだ!?
だめだ同じところでエラーになる。このエラーがなんなのかやってみないとだめっぽいな・・・

仕方ないので、次回やるときには、yumではなくphpをソースから入れようと思いました。
とりあえず今日はここまで・・・

0 件のコメント:

コメントを投稿