一応、日本語にも対応しています。
ソートや表示項目の制御等、一通り最低限の操作ができ、
クエリはPHPの配列的な書き方と、MongoDBのBSON(≒JSON)的な書き方とが両方使えて、普通に使える感じです。
phpMoAdminより全然良いです。
⇒RockMongo
ソートや表示項目の制御等、一通り最低限の操作ができ、
クエリはPHPの配列的な書き方と、MongoDBのBSON(≒JSON)的な書き方とが両方使えて、普通に使える感じです。
phpMoAdminより全然良いです。
最近、サーバ台数10台を越えるくらいの案件をメインでやっているのですが、
サーバ台数が増えると考えなくてはいけないことの一つがログの管理。
アプリケーションのログはlog4phpでファイルに書き出していたのですが、
log4phpにLoggerAppenderMongoDBなるものがあることに気がつきました。
「mongoDBってNoSQLの一種だよなー」程度にしか知らなかったので、
試しに検証してみたメモです。
インストール方法は公式サイトで調べました。
OSは、AWSのLinux AMIで検証しています。
公式サイトには、「Red Hat,Cent OS,fedoraでのインストール」としてまとめられていたので、
Red Hat系なら全て同じ方法で大丈夫だと思います。
まずは、yumでインストールできるように公式リポジトリの設定ファイルを設置します。
# vi /etc/yum.repos.d/10gen.repo
以下のように記載します。
[10gen] name=10gen Repository baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64 gpgcheck=0 enabled=1
そして、インストール
# yum install mongo-10gen mongo-10gen-server
インストール完了!
PECLは入っている前提です。
mongoDBモジュールのインストール。
# pecl install mongo
mongoDBモジュールを読みませるようにします。
# vi /etc/php.d/mongo.ini
以下のように記載します。php.iniに直で書いてもOKです。
extension=mongo.so
以上で、環境面の準備はOKです。
以下のようなlog4phpの設定ファイルを作って、log4phpに食わせます。
<configuration xmlns="http://logging.apache.org/log4php/"> <appender name="default" class="LoggerAppenderMongoDB"> <param name="host" value="mongodb://ホスト名またはIPアドレス" /> </appender> <root> <appender_ref ref="default" /> </root> </configuration>
以上で終了です。
mongoDBは、スキーマレスなデータベースなので、データベースの作成やテーブルの作成は必要ありません。
勝手に作って、勝手に保存してくれます。
今回は、検証用なので最低限の設定しかしていませんが、
実際に使う場合には、mongoDBへの接続IDやパスワードの設定をした方が良いでしょう。
mongoDBにちゃんと格納されているかは、
コマンドラインから確認しても良いですが、
phpMoAdminなるものを発見したので、使って見ました。
インストール方法は、Myの方と同じでダウンロードして公開ディレクトリ上で展開するだけだったと思います。
Myの方のような高機能さは無かったですが、
まずmongoDBのクエリの書き方がわからないので、GUIがあるだけでも良いかなと思いました。
クエリの書き方はマニュアル(日本語がありました)を見たところ難しくはなさそうだったので、
おいおい覚えたいと思います。
ApacheやNginxのアクセスログ等をリアルタイム収集するのに、
最近注目されているFluentdなんかもmongoDBに標準対応しているので、
組み合わせれば全部のログをmongoDBで一括管理できるんじゃね?って思ったりしています。
mongoDBはパフォーマンスも高そうなので期待しています。
Fluntedも近いうちに検証するので、その時にまた書きたいと思います。