(PECL mongo >=1.2.3)
ログ機能を使うと、ドライバが何をしているのかに関する詳細な情報を取得できます。 MongoLog が使うログ機能は、すべてのメッセージを PHP の notice として記録します。 使っているサーバーのインターフェイスによって出力先は変わり、 PHP-CLI の場合は標準エラー出力に送られ それ以外の場合はウェブサーバーのエラーログに送られます。 ログメッセージを出力するには、PHP の設定で E_NOTICE を表示するようにしておかねばなりません。 つまり、E_NOTICE を error_reporting に含めて display_errors を 1 にするということです。
ログ機能はデフォルトでは無効になっています。このクラスを使うと、 ドライバの特定の部分について指定したレベルでのログ出力を有効にできます。 たとえば次のように使います。
<?php
// すべてのログ出力を有効にします
MongoLog::setLevel(MongoLog::ALL); // すべてのログレベル
MongoLog::setModule(MongoLog::ALL); // ドライバのすべての部分
// レプリカセットのフェイルオーバーに関する重大なイベントを表示します
MongoLog::setLevel(MongoLog::INFO);
MongoLog::setModule(MongoLog::RS);
// レプリカセットと接続プーリングに関する info および server tuning レベルのイベントを表示します
MongoLog::setLevel(MongoLog::INFO|MongoLog::FINE);
MongoLog::setModule(MongoLog::RS|MongoLog::POOL);
?>
これらの定数は MongoLog::setLevel() および MongoLog::setModule() の両方で使えます。
MongoLog::NONE
MongoLog::ALL
これらの定数は MongoLog::setLevel() で使えます。
MongoLog::WARNING
MongoLog::INFO
MongoLog::FINE
これらの定数は MongoLog::setModule() で使えます。
MongoLog::IO
MongoLog::PARSE
MongoLog::POOL
MongoLog::RS
MongoLog::SERVER