(PECL memcache >= 2.0.0)
Memcache::getExtendedStats — プール内のすべてのサーバーの統計情報を取得する
$type
= ?, int $slabid
= ?, int $limit
= 100): array
Memcache::getExtendedStats() は、サーバーの
統計情報を含む二次元の配列を返します。配列のキーが各サーバーの
host:port に対応し、その値として個々のサーバーの統計情報を保持します。
取得に失敗したサーバーは、値に false
が設定されます。
memcache_get_extended_stats() 関数を使用することも可能です。
注意:
この関数は、Memcache バージョン 2.0.0 で追加されました。
type
取得する統計情報の型。使用可能な値は {reset, malloc, maps, cachedump, slabs, items, sizes} のいずれかです。 memcached プロトコルの仕様によると、これらの追加の引数は 「memcache の開発者の都合により、変更される可能性があります」 ということです。
slabid
type
を cachedump
と設定した場合に使用し、ダンプを取得する slab を指定します。
cachedump コマンドはサーバーと結びついており、デバッグ目的でのみ使用します。
limit
type
を cachedump
と設定した場合に使用し、ダンプするエントリの数を制限します。
統計情報の型 cachedump は、セキュリティ上の理由により memcached デーモンから削除されました。
サーバーの統計情報を含む二次元の配列を返します。失敗した場合は
false
を返します。
例1 Memcache::getExtendedStats() の例
<?php
$memcache_obj = new Memcache;
$memcache_obj->addServer('memcache_host', 11211);
$memcache_obj->addServer('failed_host', 11211);
$stats = $memcache_obj->getExtendedStats();
print_r($stats);
?>
上の例の出力は以下となります。
Array ( [memcache_host:11211] => Array ( [pid] => 3756 [uptime] => 603011 [time] => 1133810435 [version] => 1.1.12 [rusage_user] => 0.451931 [rusage_system] => 0.634903 [curr_items] => 2483 [total_items] => 3079 [bytes] => 2718136 [curr_connections] => 2 [total_connections] => 807 [connection_structures] => 13 [cmd_get] => 9748 [cmd_set] => 3096 [get_hits] => 5976 [get_misses] => 3772 [bytes_read] => 3448968 [bytes_written] => 2318883 [limit_maxbytes] => 33554432 ) [failed_host:11211] => false )