次の方法で共有


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

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

重要

レガシの Log Analytics エージェントは、2024 年 8 月 31 日の時点で非推奨となっています。 今後 Microsoft は、Log Analytics エージェントに関するすべてのサポートを提供しません。 Azure Monitor にデータを取り込むために Log Analytics エージェントを使用している場合は、Azure Monitor エージェントに移行してください。

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

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

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

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

Windows のパフォーマンス カウンターの場合、パフォーマンス カウンターごとに特定のインスタンスを選択できます。 Linux のパフォーマンス カウンターの場合、各カウンターに対して選択したインスタンスが、そのすべての子カウンターに適用されます。 次の表は、Windows と Linux の両方のパフォーマンス カウンターで利用できる共通のインスタンスを示しています。

インスタンス名 説明
合計 すべてのインスタンスの合計
* すべてのインスタンス
(/|/var) / または /var という名前のインスタンスと一致します

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

この要素のパラメーターを次の表に示します。

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

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

オブジェクト名 カウンター名
論理ディスク % Free Inodes
論理ディスク 空き容量の割合
論理ディスク % Used Inodes
論理ディスク 使用済みスペースの割合
論理ディスク ディスク読み取りバイト/秒
論理ディスク ディスクの読み取り/秒
論理ディスク ディスク転送/秒
論理ディスク ディスク書き込みバイト/秒
論理ディスク ディスク書き込み/秒
論理ディスク 空きメガバイト
論理ディスク 論理ディスクバイト数/秒
メモリ 使用可能なメモリの割合
メモリ % 利用可能なスワップ領域
メモリ 使用済みメモリの%
メモリ % Used Swap Space
メモリ 利用可能なメモリー容量(MB単位)
メモリ Available MBytes Swap
メモリ 秒あたりのページ読み取り
メモリ ページ書き込み/秒
メモリ ページ/秒
メモリ Used MBytes Swap Space
メモリ 使用メモリ メガバイト
ネットワーク 総送信バイト数
ネットワーク 受信バイト総数
ネットワーク 合計バイト数
ネットワーク 送信されたパケット総数
ネットワーク 受信したパケットの総数
ネットワーク Rx エラーの合計
ネットワーク 「送信エラー総数」
ネットワーク 総衝突件数
物理ディスク Avg.Disk sec/Read
物理ディスク Avg.Disk sec/Transfer
物理ディスク ディスク平均秒数/書き込み
物理ディスク 物理ディスク バイト/秒
プロセス Pct Privileged Time
プロセス Pct User Time
プロセス 使用済みメモリkバイト
プロセス 仮想共有メモリ
プロセッサ % DPC Time
プロセッサ 遊休時間%
プロセッサ % Interrupt Time
プロセッサ % IO Wait Time
プロセッサ % いい時間
プロセッサ % 特権時間
プロセッサ プロセッサ時間の使用率 (%)
プロセッサ % User Time
システム 空き物理メモリ
システム Free Space in Paging Files
システム 空き仮想メモリ
システム プロセス
システム Size Stored In Paging Files
システム Uptime
システム ユーザー

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

<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 の型と、次の表に一覧表示されているプロパティがあります。

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

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

サイズ見積もり

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

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

パフォーマンス レコードに対するログ クエリ

次の表は、パフォーマンス レコードを取得するログ クエリのさまざまな例をまとめたものです。

クエリ 説明
Perf すべてのパフォーマンス データ
Perf | where Computer == "MyComputer" 特定のコンピューターからのすべてのパフォーマンス データ
Perf | where CounterName == "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 コンピューター全体のディスク転送数/秒の 95 パーセンタイル
Perf | where CounterName == "% Processor Time" and InstanceName == "_Total" | summarize AggregatedValue = avg(CounterValue) by bin(TimeGenerated, 1h), Computer 全コンピューターの CPU 使用率の平均値 (1 時間ごと)
Perf | where Computer == "MyComputer" and CounterName startswith_cs "%" and InstanceName == "_Total" | summarize AggregatedValue = percentile(CounterValue, 70) by bin(TimeGenerated, 1h), CounterName 特定のコンピューターの各パーセントカウンターの70パーセンタイルを1時間ごとに計算する。
Perf | where CounterName == "% Processor Time" and InstanceName == "_Total" and Computer == "MyComputer" | summarize ["min(CounterValue)"] = min(CounterValue), ["avg(CounterValue)"] = avg(CounterValue), ["percentile75(CounterValue)"] = percentile(CounterValue, 75), ["max(CounterValue)"] = max(CounterValue) by bin(TimeGenerated, 1h), Computer 特定のコンピューターの CPU 使用率の平均、最小、最大、75 パーセンタイル (1 時間ごと)
Perf | where ObjectName == "MSSQL$INST2:Databases" and InstanceName == "master" 名前付き SQL Server インスタンス INST2 からのマスター データベースのデータベース パフォーマンス オブジェクトのすべてのパフォーマンス データ

次のステップ