共通のカウンター

 

適用先: Exchange Server 2010 SP2, Exchange Server 2010 SP3

トピックの最終更新日: 2016-11-28

ここでは、Microsoft Exchange Server 2010 におけるすべてのサーバーの役割に共通なカウンターについて説明します。パフォーマンス モニター (perfmon.exe) を使用して、これらのカウンターを監視できます。詳細については、「ファースト ステップ ガイド - パフォーマンスの監視」を参照してください。Exchange 2010 に関連するその他のカウンターについては、「パフォーマンスとスケーラビリティのカウンターとしきい値」を参照してください。

プロセッサおよびプロセス カウンター

次の表に、プロセッサおよびプロセス カウンターに関する情報を示します。

カウンター 説明 しきい値 トラブルシューティング

Processor(_Total)\% Processor Time

プロセッサがアプリケーションまたはオペレーティング システム プロセスを実行している時間の割合を示します。これはプロセッサがアイドル状態ではない時間です。

平均 75% 未満である必要があります。

 

Processor(_Total)\% User Time

ユーザー モードで経過したプロセッサ時間の割合を示します。ユーザー モードは、アプリケーション、環境サブシステム、および統合サブシステム向けに設計された制限付きの処理モードです。

75% 未満を保つ必要があります。

 

Processor(_Total)\% Privileged Time

特権モードで経過したプロセッサ時間の割合を示します。特権モードは、オペレーティング システム コンポーネントとハードウェアを操作するドライバー向けに設計された処理モードです。このモードでは、ハードウェアとすべてのメモリへの直接アクセスが可能です。

75% 未満を保つ必要があります。

プロセッサ時間の合計値が高い場合は、このカウンターを使用して、高い CPU 使用率の原因となっているプロセスを判断します。

Process(*)\% Processor Time

すべてのプロセスのスレッドが命令を実行するために費やしたプロセッサ時間の割合を示します。命令とは、コンピューター内での実行の基本単位のことです。スレッドとは命令を実行するオブジェクトであり、プロセスとはプログラムの実行時に作成されるオブジェクトです。一部のハードウェア割り込みやトラップ条件を処理するために実行されるコードもこのカウントに含まれます。

 

プロセッサ時間の合計値が高い場合は、このカウンターを使用して、高い CPU 使用率の原因となっているプロセスを判断します。

System\Processor Queue Length (all instances)

各プロセッサが処理しているスレッドの数を示します。Processor Queue Length は、プロセッサの処理能力が不十分であるために割り当てられた負荷を処理できないことが原因で、プロセッサの競合または高い CPU 使用率が生じていないかどうかを判断するのに使用できます。また、Processor Queue Length は、Processor Ready Queue で遅延が生じ、実行対象としてスケジュールされるのを待っているスレッド数を示します。一覧表示される値は、測定が行われた時点での最新の観測値です。

プロセッサごとに 5 を超えない必要があります。

単一プロセッサのコンピューターで、キューの長さが 5 より大きくなっている場合、プロセッサが直ちに処理できる量よりも多くの処理が頻繁に利用可能な状態になっているという警告になります。この数が 10 より大きい場合 (特に、高い CPU 使用率を伴っている場合)、プロセッサが処理能力いっぱいになっているという強力な指標となります。

マルチプロセッサのシステムでは、キューの長さを物理プロセッサ数で割ります。ハード プロセッサの類似性を使用して構成されたマルチプロセッサ システム (プロセッサは特定の CPU コアに割り当てられます) で、キューの長さの値が大きくなっている場合、構成が不均衡であることを示している可能性があります。

通常、Processor Queue Length は容量計画のために使用されることはありませんが、環境内のシステムで負荷を実行できるかどうか、または今後のサーバー用に追加のプロセッサまたはより高速なプロセッサを購入する必要があるかどうかを判断するために使用できます。

メモリ カウンター

次の表に、共通のメモリ カウンターを示します。

カウンター 説明 しきい値 トラブルシューティング

Memory\Available Mbytes

プロセスに割り当てるかシステムで使用するのに直ちに利用可能な、物理メモリの量を MB 単位で示します。これは、スタンバイ (キャッシュ済み)、空き、ゼロ ページの一覧に割り当てられているメモリの合計と等しくなります。メモリ マネージャーに関する詳細な説明については、MSDN または『Windows Server 2003 リソース キット』の「システム パフォーマンスとトラブルシューティング ガイド」を参照してください。

常に 100 MB を上回っている必要があります。

 

Memory\Pool Nonpaged Bytes

常に物理メモリ内に存在することを保証されているシステム仮想アドレスで構成されるため、ページング入出力 (I/O) を発生させることなく、任意のアドレス スペースからアクセスできます。ページ プールと同様に、非ページ プールはシステムの初期化中に作成され、システム メモリを割り当てるためにカーネル モード コンポーネントによって使用されます。

該当なし。

 

Memory\Pool Paged Bytes

ディスク ページング ファイルにページングできる、共有システム メモリの部分を示します。ページ プールは、システムの初期化中に作成され、システム メモリを割り当てるためにカーネル モード コンポーネントによって使用されます。

該当なし。

メモリ リークの可能性を示す、プール ページ バイトの増加を監視します。

Memory\Cache Bytes

ファイル システム キャッシュの現在のサイズをバイト単位で示します。既定では、キャッシュは最大で利用可能な物理メモリの 50% を使用します。カウンター値は、Memory\System Cache Resident Bytes、Memory\System Driver Resident Bytes、Memory\System Code Resident Bytes、および Memory\Pool Paged Resident Bytes の合計です。

該当なし。

アプリケーションがメモリ使用量をキャッシュした後は安定した状態になる必要があります。ワーキング セット トリミングや過度なページングを原因とする、このカウンターの大幅な低下を確認します。

コンテンツ インデックス カタログと連続レプリケーション ログのコピーによって使用されます。

Memory\Committed Bytes

コミットされた仮想メモリの量をバイト単位で示します。コミットされたメモリは、領域がディスク ページング ファイルで予約されている物理メモリです。各物理ドライブにはページング ファイルを 1 つ以上置くことができます。このカウンターは、平均値ではなく最新の観測値のみを表示します。

該当なし。

使用中のコミットされたバイトの量を判断します。

Memory\%Committed Bytes in Use

Memory\Committed Bytes の Memory\Commit Limit に対する割合を示します。コミットされたメモリは、ディスクに書き込む必要のあるページング ファイルで領域が予約されている、使用中の物理メモリです。Commit Limit はページング ファイルのサイズにより決定されます。ページング ファイルが拡張されると、Commit Limit も増え、割合は低くなります。このカウンターは、平均値ではなく現在の値のみを割合で表示します。

該当なし。

この値が高い (90% を上回る) 場合、コミット エラーが発生する可能性があります。これは、システムでメモリの圧迫が生じていることを明らかに示しています。

メモリ ページング カウンター

次の表に、共通のメモリ ページング カウンターを示します。

カウンター 説明 しきい値 トラブルシューティング

Memory->Transition Pages Repurposed/sec

システム キャッシュの圧迫を示します。

平均 100 未満である必要があります。スパイクは 1,000 未満である必要があります。

 

Memory\Page Reads/sec

メモリではなく、ディスクからデータを読み取る必要があることを示します。メモリ不足であり、ページングが開始されていることを示します。1 秒あたりの値が 30 を上回っている場合、サーバーが負荷に対応できなくなっていることを示します。

平均 100 未満である必要があります。

 

Memory\Pages/Sec

ハード ページ フォールトを解決するためにディスクからページを読み取るか、ディスクにページを書き込む速度を示します。このカウンターは、システム全体の遅延を引き起こす種類のフォールトの主な指標です。これは Memory\Pages Input/sec と Memory\Pages Output/sec の合計です。ページの数がカウントされるので、変換せずに Memory\Page Faults/sec などの他のページ カウントと比較できます。(通常、アプリケーションが要求する) ファイル システム キャッシュ内および非キャッシュのマップされたメモリ ファイル内のフォールトを解決するために取得されたページが含まれます。

平均で 1,000 未満である必要があります。

このカウンターによって返される値は、予想した値を上回っている場合があります。これらの値は、ページング ファイル処理ともキャッシュ処理とも関連がない可能性があります。代わりに、これらの値は、メモリにマップされたファイルを順次読み取るアプリケーションによって生じる可能性があります。

Memory\Pages Input/sec と Memory\Pages Output/sec を使用してページ ファイル I/O を判断します。

Memory\Pages Input/sec

ハード ページ フォールトを解決するためにディスクからページを読み取る速度を示します。ワーキング セット内にないか、物理メモリのどこかにある仮想メモリ内のページをプロセスが参照すると、ハード ページ フォールトが発生し、ディスクから取得しなければならなくなります。ページ フォールトが発生すると、システムは読み取り操作の利点を最大限に高めるために、複数の連続したページをメモリに読み取ろうとします。Memory\Pages Input/sec の値と Memory\Page Reads/sec の値を比較して、それぞれの読み取り操作時にメモリに読み取られた平均ページ数を確認します。

平均で 1,000 未満である必要があります。

 

Memory\Pages Output/sec

物理メモリ内の領域を解放するためにページがディスクに書き込まれた速度を示します。ページは、物理メモリ内で変更された場合にのみディスクに書き戻されるので、コードではなくデータを保持します。高いページ出力率は、メモリ不足を示している場合があります。物理メモリが不足している場合、Microsoft Windows はメモリ領域を解放するためにさらにページをディスクに書き戻します。このカウンターはページ数を示すので、変換せずに他のページ カウントと比較できます。

平均で 1,000 未満である必要があります。

 

メモリ消費カウンター

次の表に、共通のプロセスのメモリ消費カウンターを示します。

カウンター 説明 しきい値 トラブルシューティング

Process(*)\Private Bytes

他のプロセスと共有できない、このプロセスに割り当てられている現在のバイト数を示します。

該当なし。

このカウンターを使用して、プロセスに対するメモリ リークがないかどうかを判断できます。

インフォメーション ストア プロセスについて、このカウンター値をデータベース キャッシュ サイズと比較して、インフォメーション ストア プロセスでメモリ リークが発生していないかどうかを判断します。インフォメーション ストア プライベート バイトが増加し、データベース キャッシュでも同様の増加が見られる場合、正しく動作しています (メモリ リークではありません)。

Process(*)\Virtual Bytes

プロセスが現在消費している仮想アドレス領域の量をバイト単位で表します。

該当なし。

プロセスが大量の仮想メモリを消費していないかどうかを判断するために使用します。

プロセスのワーキング セット カウンター

次の表に、共通のプロセスのワーキング セット カウンターを示します。

カウンター 説明 しきい値 トラブルシューティング

Process(_Total)\Working Set

このプロセスのワーキング セットの現在のサイズをバイト単位で示します。ワーキング セットは、プロセスのスレッドが最後に参照したメモリ ページのセットです。コンピューターの空きメモリ領域がしきい値よりも大きい場合、ページが使用中でなくてもプロセスのワーキング セットに残されます。空きメモリ領域がしきい値を下回ると、ページはワーキング セットから削除されます。削除されたページが必要な場合、このページはメイン メモリから出される前にワーキング セットに戻されます。

該当なし。

ワーキング セットの大幅な増加や減少により、ページングが発生します。

ページング ファイルが推奨値である RAM + 10 に設定されていることを確認します。ワーキング セットが削除されている場合、Process(*)\Working Set を追加して、どのプロセスが影響を受けているのかを確認します。このカウンターは、システム全体の問題またはプロセス全体の問題のいずれかを示している場合があります。このカウンターを Memory\System Cache Resident Bytes と相互参照して、システム全体のワーキング セット トリミングが発生しているかどうかを判断します。

プロセスのハンドル カウンター

次の表に、共通のプロセスのハンドル カウンターを示します。

カウンター 説明 しきい値 トラブルシューティング

Process(*)\Handle Count

このプロセスによって現在開かれているハンドルの総数を示します。この数は、このプロセスの各スレッドによって現在開かれているハンドルの合計です。

該当なし。

特定のプロセスのハンドルの数が増加している場合、サーバー上でパフォーマンスの問題を引き起こす、ハンドル リークによるプロセスの問題の兆候がある可能性があります。これは必ずしも問題とは限りませんが、長期にわたって監視し、ハンドル リークが発生していないかどうかを判断する必要があります。

.NET Framework カウンター

次の表に、Microsoft .NET Framework カウンターを示します。

カウンター 説明 しきい値 トラブルシューティング

.NET CLR Memory(*)\% Time in GC

ガベージ コレクションが発生した時間を示します。カウンターがしきい値を超えた場合、CPU がクリーンアップされ、負荷に対して効率的に使用されていないことを示します。サーバーにメモリを追加すると、この状況が改善される可能性があります。

平均で 10% 未満である必要があります。

このカウンターが高い値になっている場合、一部のオブジェクトが Gen 1 ガベージ コレクションの後に残り、Gen 2 に昇格される可能性があります。Gen 2 のコレクションには、クリーンアップのために完全なグローバル カタログが必要です。この場合には、他の .NET Framework メモリ カウンターを追加して判断します。

.NET CLR Exceptions(*)\# of Excepts Thrown / sec

1 秒間にスローされた例外の数を表示します。これらには, .NET Framework 例外と, .NET Framework 例外に変換されるアンマネージ例外の両方が含まれます。たとえば、アンマネージ コード内の NULL ポインター参照の例外は、マネージ コード内で .NET Framework System.NullReferenceException として再度スローされる可能性があります。このカウンターには、処理された例外と処理不能な例外の両方が含まれます。

1 秒あたりの要求 (RPS) の合計の 5% 未満 (Web Server(_Total)\Connection Attempts/sec * .05) である必要があります。

例外は、プログラムの通常の制御フローではなく、まれな状況でしか発生しません。このカウンターは、大量の例外が (>100 秒) スローされたために発生する可能性のあるパフォーマンスの問題の指標として設計されました。このカウンターは、長期にわたる平均ではありません。これは、最新の 2 つのサンプルで監視された値の差をサンプリング間隔の時間で割った値を表示します。

.NET CLR Memory(*)\# Bytes in all Heaps

他の 4 つのカウンターの合計を示します。他のカウンターは、Gen 0 Heap Size、Gen 1 Heap Size、Gen 2 Heap Size、および Large Object Heap Size です。このカウンターは、GC ヒープに割り当てられている現在のメモリをバイト単位で示します。

該当なし。

メモリのこれらの領域は、MEM_COMMIT という種類です。このカウンターの値は常に、プロセスのすべての MEM_COMMIT 領域をカウントする、Process\Private Bytes の値未満になります。プライベート バイトからすべてのヒープ内のバイト数を引いた値が、アンマネージ オブジェクトによりコミットされたバイト数となります。

メモリ リークの可能性や、管理されているオブジェクトまたはアンマネージ オブジェクトの過度なメモリ使用を監視するために使用されます。

ネットワーク カウンター

次の表に、共通のネットワーク カウンターを示します。

カウンター 説明 しきい値 トラブルシューティング

Network Interface(*)\Bytes Total/sec

ネットワーク アダプターがデータ バイトを処理する速度を示します。このカウンターには、すべてのアプリケーションやファイルのデータ、およびパケット ヘッダーなどのプロトコル情報が含まれます。

100 メガバイト/秒 (MBps) のネットワーク アダプターの場合、6 ~ 7 MBps 未満である必要があります。

1000 メガビット/秒 (Mbps) のネットワーク アダプターの場合、60 ~ 70 Mbps 未満である必要があります。

 

Network Interface(*)\Packets Outbound Errors

エラーのために送信できなかった送信パケットの数を示します。

常に 0 である必要があります。

 

TCPv4\Connections Established

現在の状態が ESTABLISHED または CLOSE-WAIT のいずれかである TCP 接続の数を示します。確立できる TCP 接続の数は、非ページ プールのサイズに制約されます。非ページ プールが使い果たされた場合は、新しい接続を確立することはできません。

該当なし。

現在のユーザー負荷で判断されます。

TCPv6\Connection Failures

現在の状態が ESTABLISHED または CLOSE-WAIT のいずれかである TCP 接続の数を示します。確立できる TCP 接続の数は、非ページ プールのサイズに制約されます。非ページ プールが使い果たされた場合は、新しい接続を確立することはできません。

該当なし。

現在のユーザー負荷で判断されます。

TCPv4\Connections Reset

TCP 接続が ESTABLISHED 状態または CLOSE-WAIT 状態のいずれかから CLOSED 状態に直接移行した回数を示します。

リセット数の増加や、一貫して増加するリセット率は、帯域幅の不足を示している場合があります。

一部のブラウザーは TCP リセット (RST) パケットを送信するため、このカウンターを使用してリセット率を判断するときは注意してください。

TCPv6\Connections Reset

TCP 接続が ESTABLISHED 状態または CLOSE-WAIT 状態のいずれかから CLOSED 状態に直接移行した回数を示します。

リセット数の増加や、一貫して増加するリセット率は、帯域幅の不足を示している場合があります。

一部のブラウザーは TCP リセット (RST) パケットを送信するため、このカウンターを使用してリセット率を判断するときは注意してください。

Exchange ドメイン コントローラー接続カウンター

次の表に、Exchange ドメイン コントローラー接続カウンターを示します。

カウンター 説明 しきい値 トラブルシューティング

MSExchange ADAccess Caches(*)\LDAP Searches/Sec

1 秒間に発行される LDAP 検索要求の数を示します。

該当なし。

現在の LDAP 検索の数を判断するために使用します。

MSExchange ADAccess Domain Controllers(*)\LDAP Read Time

指定されたドメイン コントローラーに LDAP 読み取り要求を送信し、応答を受信するためにかかる時間をミリ秒単位 (ms) で示します。

平均 50 ミリ秒未満である必要があります。スパイク (最大値) は 100 ミリ秒以下の値である必要があります。

 

MSExchange ADAccess Domain Controllers(*)\LDAP Search Time

LDAP 検索要求を送信し、応答を受信するためにかかる時間 (ミリ秒) を示します。

平均 50 ミリ秒未満である必要があります。スパイク (最大値) は 100 ミリ秒以下の値である必要があります。

 

MSExchange ADAccess Processes(*)\LDAP Read Time

指定されたドメイン コントローラーに LDAP 読み取り要求を送信し、応答を受信するためにかかる時間をミリ秒単位で示します。

平均 50 ミリ秒未満である必要があります。スパイク (最大値) は 100 ミリ秒以下の値である必要があります。

 

MSExchange ADAccess Processes(*)\LDAP Search Time

LDAP 検索要求を送信し、応答を受信するためにかかる時間 (ミリ秒) を示します。

平均 50 ミリ秒未満である必要があります。スパイク (最大値) は 100 ミリ秒以下の値である必要があります。

 

MSExchange ADAccess Domain Controllers(*)\LDAP Searches timed out per minute

最後の 1 分間に LDAP_Timeout を返した LDAP 検索の数を示します。

すべての役割で常に 10 未満である必要があります。これより高い値は Active Directory リソースの問題を示している可能性があります。

 

MSExchange ADAccess Domain Controllers(*)\Long running LDAP operations/Min

1 分間にこのドメイン コントローラーで実行された LDAP 操作のうち、指定されたしきい値を超えた LDAP 操作の数を示します (既定のしきい値は 15 秒です)。

常に 50 未満である必要があります。

これより高い値は Active Directory リソースの問題を示している可能性があります。

 © 2010 Microsoft Corporation.All rights reserved.