その他
MongoLog::getCallback
その他
PHP Manual

# MongoLog クラス

(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 {
/* 定数 */
const int NONE = 0 ;
const int ALL = 31 ;
レベル定数 {
const int WARNING = 1 ;
const int INFO = 2 ;
const int FINE = 4 ;
モジュール定数 {
const int RS = 1 ;
const int POOL = 2 ;
const int IO = 4 ;
const int SERVER = 8 ;
const int PARSE = 16 ;
/* フィールド */
public int $level ;
public int $module ;
/* メソッド */
public static void getCallback ( void )
public static int getLevel ( void )
public static int getModule ( void )
public static void setCallback ( callable `$log_function` )
public static void setLevel ( int `$level` )
public static void setModule ( int `$module` )
}

## 定義済み定数

## MongoLog 定数

これらの定数は MongoLog::setLevel() および MongoLog::setModule() の両方で使えます。

`MongoLog::NONE`
  ログ出力を無効にする定数。
`MongoLog::ALL`
  すべてをログ出力する定数。

## MongoLog レベル定数

これらの定数は MongoLog::setLevel() で使えます。

`MongoLog::WARNING`
  これは、何かおかしいけれども例外を発生させるほどではないハプニングのログメッセージを表示します。
`MongoLog::INFO`
  管理者にとっては有用だと思われるが 特に注目には値しないできごとを記録します。
`MongoLog::FINE`
  ドライバの動作における大半のできごとを記録します。記録対象のモジュールにもよりますが、 ログがノイズまみれになる可能性もあります。主な用途はデバッグです。

## MongoLog モジュール定数

これらの定数は MongoLog::setModule() で使えます。

`MongoLog::IO`
  データベースとのトラフィックを記録します。 ちょっとした小物プログラムでない限り、 これを有効にすると大量のログメッセージが記録されます。
`MongoLog::PARSE`
  サーバーの文字列パースを記録します。
`MongoLog::POOL`
  接続プールの活動を記録します。新しい接続の作成や 既存の接続の再利用、そして接続の切断などです。
`MongoLog::RS`
  レプリカセットの活動を記録します。フェイルオーバーや ping、 読み込み元のセカンダリの選択などです。
`MongoLog::SERVER`
  サーバーの状態の変更を記録します。 プライマリやセカンダリ、そして複製の検出をします。

## 目次

- MongoLog::getCallback — 以前に設定されたコールバック関数の名前を取得する
- MongoLog::getLevel — ログレベルを取得する
- MongoLog::getModule — 現在ログを記録しているモジュールを取得する
- MongoLog::setCallback — イベントに対応して呼ばれるコールバック関数を設定する
- MongoLog::setLevel — ログレベルを設定する
- MongoLog::setModule — ログに記録するドライバの機能を設定する

その他
MongoLog::getCallback
その他
PHP Manual