次の方法で共有


Log Analytics エージェントを使用して Windows および Linux のパフォーマンス データ ソースを収集する

Windows および Linux のパフォーマンス カウンターは、ハードウェア コンポーネント、オペレーティング システム、アプリケーションのパフォーマンスに関する分析情報を提供します。 Azure Monitor では、Log Analytics エージェントからパフォーマンス カウンターを頻繁に収集して、ほぼリアルタイムで分析できます。 Azure Monitor では、長期的な分析とレポートのためにパフォーマンス データを集計することもできます。

Important

従来の Log Analytics エージェントは、2024 年 8 月 31 日の時点で非推奨となっています。 Microsoft は Log Analytics エージェントのサポートを提供しなくなります。 Log Analytics エージェントを使用して Azure Monitor にデータを取り込む場合は、 ここで Azure Monitor エージェントに移行します

パフォーマンス カウンターを示すスクリーンショット。

パフォーマンス カウンターを構成する

Log Analytics ワークスペースの レガシ エージェント管理メニュー からパフォーマンス カウンターを構成します。

新しいワークスペースの Windows または Linux のパフォーマンス カウンターを初めて構成するときは、いくつかの一般的なカウンターをすばやく作成するオプションが提供されます。 それぞれの横にチェック ボックスが表示されます。 最初に作成するカウンターが選択されていることを確認し、[ 選択したパフォーマンス カウンターの追加] を選択します。

Windows パフォーマンス カウンターの場合は、パフォーマンス カウンターごとに特定のインスタンスを選択できます。 Linux パフォーマンス カウンターの場合、選択した各カウンターのインスタンスは、親カウンターのすべての子カウンターに適用されます。 次の表に、Windows と Linux の両方のパフォーマンス カウンターで使用できる一般的なインスタンスを示します。

インスタンス名 Description
_トータル すべてのインスタンスの合計
* すべてのインスタンス
(/|/var) /または /var という名前のインスタンスと一致します

Windows パフォーマンス カウンター

Windows パフォーマンス カウンターの構成を示すスクリーンショット。

収集する新しい Windows パフォーマンス カウンターを追加するには、次の手順に従います。 V2 Windows パフォーマンス カウンターはサポートされていません。

  1. [ パフォーマンス カウンターの追加] を選択します

  2. 書式 オブジェクト (インスタンス)\counter のテキスト ボックスにカウンターの名前を入力します。 入力を開始すると、一致する共通カウンターの一覧が表示されます。 一覧からカウンターを選択するか、独自のカウンターを入力します。 object\counter を指定することで、特定のカウンターのすべてのインスタンスを返すこともできます。

    SQL Server パフォーマンス カウンターが名前付きインスタンスから収集されると、すべての名前付きインスタンス カウンターは MSSQL$ で始まり、その後にインスタンスの名前が続きます。 たとえば、名前付き SQL インスタンス INST2 の Database パフォーマンス オブジェクトからすべてのデータベースのログ キャッシュ ヒット率カウンターを収集するには、 MSSQL$INST2:Databases(*)\Log Cache Hit Ratioを指定します。

  3. カウンターを追加すると、既定の 10 秒が サンプル間隔に使用されます。 収集されたパフォーマンス データのストレージ要件を減らす場合は、この既定値を最大 1,800 秒 (30 分) の高い値に変更します。

  4. カウンターの追加が完了したら、画面の上部にある [ 適用 ] を選択して構成を保存します。

Linux パフォーマンス カウンター

Linux パフォーマンス カウンターの構成を示すスクリーンショット。

収集する新しい Linux パフォーマンス カウンターを追加するには、次の手順に従います。

  1. [ パフォーマンス カウンターの追加] を選択します
  2. 書式 オブジェクト (インスタンス)\counter のテキスト ボックスにカウンターの名前を入力します。 入力を開始すると、一致する共通カウンターの一覧が表示されます。 一覧からカウンターを選択するか、独自のカウンターを入力します。
  3. オブジェクトのすべてのカウンターは、同じ サンプル間隔を使用します。 既定値は 10 秒です。 収集されたパフォーマンス データのストレージ要件を減らす場合は、この既定値を最大 1,800 秒 (30 分) の高い値に変更します。
  4. カウンターの追加が完了したら、画面の上部にある [ 適用 ] を選択して構成を保存します。

構成ファイルで Linux パフォーマンス カウンターを構成する

Azure portal を使用して Linux パフォーマンス カウンターを構成する代わりに、Linux エージェントで構成ファイルを編集することもできます。 収集するパフォーマンス メトリックは、 /etc/opt/microsoft/omsagent/<workspace id>/conf/omsagent.conf の構成によって制御されます。

収集するパフォーマンス メトリックの各オブジェクト (カテゴリ) は、構成ファイルで 1 つの <source> 要素として定義する必要があります。 構文は、次のパターンに従います。

<source>
    type oms_omi
    object_name "Processor"
    instance_regex ".*"
    counter_name_regex ".*"
    interval 30s
</source>

この要素のパラメーターについては、次の表で説明します。

パラメーター Description
object_name コレクションのオブジェクト名。
instance_regex 収集するインスタンスを定義する 正規表現.*値は、すべてのインスタンスを指定します。 _Total インスタンスのみのプロセッサ メトリックを収集するには、 _Totalを指定できます。 crond インスタンスまたは sshd インスタンスのみのプロセス メトリックを収集するには、 (crond\|sshd)を指定できます。
counter_name_regex 収集する (オブジェクトの) カウンターを定義する 正規表現 。 オブジェクトのすべてのカウンターを収集するには、 .*を指定します。 メモリ オブジェクトのスワップ領域カウンターのみを収集するには、次のように指定できます。 .+Swap.+
サイクル間隔 オブジェクトのカウンターが収集される頻度。

次の表に、構成ファイルで指定できるオブジェクトとカウンターを示します。 特定のアプリケーションでは、より多くのカウンターを使用できます。 詳細については、「 Azure Monitor での Linux アプリケーションのパフォーマンス カウンターの収集」を参照してください。

オブジェクト名 カウンター名
論理ディスク % 無料の Inodes
論理ディスク % の空き領域
論理ディスク % 使用済み Inodes
論理ディスク % 使用済みスペース
論理ディスク ディスク読み取りバイト/秒
論理ディスク ディスク読み取り/秒
論理ディスク ディスク転送/秒
論理ディスク ディスク書き込みバイト/秒
論理ディスク ディスク書き込み/秒
論理ディスク 空きメガバイト
論理ディスク 論理ディスクバイト数/秒
記憶 使用可能なメモリの %
記憶 使用可能なスワップ領域の %
記憶 使用メモリの %
記憶 使用済みスワップ領域の割合%
記憶 使用可能なメガバイトメモリ
記憶 使用可能なメガバイトスワップ
記憶 ページ読み取り/秒
記憶 ページ書き込み数/秒
記憶 ページ/秒 (Pages/sec)
記憶 使用済みメガバイトスワップ領域
記憶 使用済みメモリ MBytes
ネットワーク 送信された合計バイト数
ネットワーク 受信した合計バイト数
ネットワーク 合計バイト数
ネットワーク 送信されたパケットの合計数
ネットワーク 受信したパケットの合計数
ネットワーク Rx エラーの合計
ネットワーク Tx エラーの合計
ネットワーク 合計衝突数
物理ディスク 平均ディスク秒/読み取り
物理ディスク 平均ディスク秒/転送
物理ディスク 平均ディスク書き込み秒数
物理ディスク 物理ディスクバイト数/秒
プロセス 特権時間パーセント
プロセス Pct ユーザー時間
プロセス 使用済みメモリ kBytes
プロセス 仮想共有メモリ
プロセッサ DPC 時間のパーセンテージ
プロセッサ % アイドル時間
プロセッサ % 割り込み時間
プロセッサ % IO 待機時間
プロセッサ % いい時間
プロセッサ 特権時間の %
プロセッサ プロセッサ時間の使用率 (%)
プロセッサ % ユーザー時間
System 空き物理メモリ
System ページング ファイルの空き領域
System 空き仮想メモリ
System Processes
System ページング ファイルに格納されているサイズ
System Uptime
System ユーザー

次の構成は、パフォーマンス メトリックの既定値です。

<source>
    type oms_omi
    object_name "Physical Disk"
    instance_regex ".*"
    counter_name_regex ".*"
    interval 5m
</source>

<source>
    type oms_omi
    object_name "Logical Disk"
    instance_regex ".*"
    counter_name_regex ".*"
    interval 5m
</source>

<source>
    type oms_omi
    object_name "Processor"
    instance_regex ".*"
    counter_name_regex ".*"
    interval 30s
</source>

<source>
    type oms_omi
    object_name "Memory"
    instance_regex ".*"
    counter_name_regex ".*"
    interval 30s
</source>

データ コレクション

Azure Monitor は、そのカウンターがインストールされているすべてのエージェントについて、指定したサンプル間隔で、指定されたすべてのパフォーマンス カウンターを収集します。 データは集計されません。 生データは、Log Analytics ワークスペースで指定された期間、すべてのログ クエリ ビューで使用できます。

パフォーマンス レコードのプロパティ

パフォーマンス レコードの種類は Perf で、次の表に示すプロパティがあります。

プロパティ Description
コンピューター イベントが収集された元のコンピューター。
CounterName パフォーマンス カウンターの名前。
CounterPath \\<Computer>\object(instance)\counter という形式のカウンターの完全なパス。
カウンターバリュー カウンターの数値。
インスタンス名 イベント インスタンスの名前。 インスタンスがない場合は空。
オブジェクト名 パフォーマンス オブジェクトの名前。
ソースシステム データが収集されたエージェントの種類:

OpsManager – Windows エージェント (直接接続または SCOM)
Linux – すべての Linux エージェント
AzureStorage – Azure Diagnostics
タイムジェネレイテッド データがサンプリングされた日付と時刻。

サイズの見積もり

10 秒間隔での特定のカウンターの収集の大まかな見積もりは、インスタンスあたり 1 日あたり約 1 MB です。 次の式を使用して、特定のカウンターのストレージ要件を見積もることができます。

1 MB x (カウンター数) x (エージェントの数) x (インスタンス数)

パフォーマンス レコードを含むログ クエリ

次の表は、パフォーマンス レコードを取得するログ クエリのさまざまな例を示しています。

Query Description
Perf すべてのパフォーマンス データ
Perf |where Computer == "MyComputer" 特定のコンピューターのすべてのパフォーマンス データ
Perf | where カウンター名 == "Current Disk Queue Length" 特定のカウンターのすべてのパフォーマンス データ
Perf |where ObjectName == "Processor" and CounterName == "% Processor Time" and InstanceName == "_Total" |summarize AVGCPU = avg(CounterValue) by Computer すべてのコンピューターの平均 CPU 使用率
Perf |where CounterName == "% Processor Time" |summarize AggregatedValue = max(CounterValue) by Computer すべてのコンピューターの最大 CPU 使用率
Perf |where ObjectName == "LogicalDisk" and CounterName == "Current Disk Queue Length" and Computer == "MyComputerName" |summarize AggregatedValue = avg(CounterValue) by InstanceName 特定のコンピューターのすべてのインスタンスの現在のディスク キューの平均長
Perf |where CounterName == "Disk Transfers/sec" |summarize AggregatedValue = percentile(CounterValue, 95) by Computer すべてのコンピューターで 1 秒に 95 パーセンタイルのディスク転送
Perf | where CounterName == "% プロセッサ時間" and InstanceName == "_合計" | summarize AggregatedValue = avg(CounterValue) by bin(TimeGenerated, 1h), コンピューター すべてのコンピューターの CPU 使用率の 1 時間あたりの平均
Perf |where Computer == "MyComputer" and CounterName startswith_cs "%" and InstanceName == "_Total" |summarize AggregatedValue = percentile(CounterValue, 70) by bin(TimeGenerated, 1h), CounterName 特定のコンピューターにおける各パーセントカウンターの1時間ごとの70パーセンタイル
Perf | where CounterName == "% プロセッサ時間" and InstanceName == "_Total" and Computer == "MyComputer" | summarize ["最小値(CounterValue)"] = min(CounterValue), ["平均値(CounterValue)"] = avg(CounterValue), ["第75パーセンタイル値(CounterValue)"] = percentile(CounterValue, 75), ["最大値(CounterValue)"] = max(CounterValue) by bin(TimeGenerated, 1h), Computer 特定のコンピューターの 1 時間ごとの平均、最小、最大、および 75 パーセンタイル CPU 使用率
Perf |where ObjectName == "MSSQL$INST2:Databases" and InstanceName == "master" 名前付き SQL Server インスタンス INST2 のマスター データベースのデータベース パフォーマンス オブジェクトのすべてのパフォーマンス データ

次のステップ