Log Analytics での Windows および Linux のパフォーマンス データ ソース

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

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

パフォーマンス カウンターの構成

OMS ポータルのパフォーマンス カウンターは、Log Analytics の [設定] の [データ] メニューから構成します。

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

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

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

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

Windows パフォーマンス カウンターの構成

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

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

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

  2. + をクリックするか、または Enter キーを押して、一覧にカウンターを追加します。

  3. カウンターを追加すると、その [サンプルの間隔] には既定値の 10 秒が使用されます。 収集されたパフォーマンス データのストレージ要件を削減する場合は、この値を最大 1800 秒 (30 分) まで高く変更できます。
  4. カウンターの追加を完了したら、画面の上部にある [保存] ボタンをクリックして、構成を保存します。

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

Linux パフォーマンス カウンターの構成

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

  1. 既定では、すべての構成変更はすべてのエージェントに自動的にプッシュされます。 Linux エージェントの場合、構成ファイルが Fluentd データ コレクターに送信されます。 各 Linux エージェントでこのファイルを手動で変更する場合、[Apply below configuration to my Linux machines (Linux コンピューターに以下の構成を適用する)] チェック ボックスをオフにして、以下のガイダンスに従います。
  2. <オブジェクト (インスタンス)><カウンター> の形式で、テキスト ボックスにカウンターの名前を入力します。 入力を開始すると、入力内容に一致する一般的なカウンターの一覧が表示されます。 一覧からカウンターを選択するか、または独自の名前を入力することができます。
  3. + をクリックするか、または Enter キーを押して、オブジェクトのその他のカウンターの一覧にカウンターを追加します。
  4. オブジェクトのすべてのカウンターは、同じ [サンプルの間隔] を使用します。 既定値は 10 秒です。 収集されたパフォーマンス データのストレージ要件を削減したい場合は、1,800 秒 (30 分) を上限としてこの値を増やしてください。
  5. カウンターの追加を完了したら、画面の上部にある [保存] ボタンをクリックして、構成を保存します。

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

OMS ポータルを使用して 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>

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

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

次の表は、構成ファイルで指定できるオブジェクトとカウンターを一覧表示しています。 「Log Analytics で Linux アプリケーションのパフォーマンス カウンターを収集する」に記載されているとおり、特定のアプリケーションで使用できる追加のカウンターがあります。

オブジェクト名 カウンター名
論理ディスク % Free Inodes
論理ディスク % Free Space
論理ディスク % Used Inodes
論理ディスク % Used Space
論理ディスク Disk Read Bytes/sec
論理ディスク Disk Reads/sec
論理ディスク Disk Transfers/sec
論理ディスク Disk Write Bytes/sec
論理ディスク Disk Writes/sec
論理ディスク Free Megabytes
論理ディスク Logical Disk Bytes/sec
メモリ % Available Memory
メモリ % Available Swap Space
メモリ % Used Memory
メモリ % Used Swap Space
メモリ Available MBytes Memory
メモリ Available MBytes Swap
メモリ Page Reads/sec
メモリ Page Writes/sec
メモリ Pages/sec
メモリ Used MBytes Swap Space
メモリ Used Memory MBytes
ネットワーク Total Bytes Transmitted
ネットワーク Total Bytes Received
ネットワーク Total Bytes
ネットワーク Total Packets Transmitted
ネットワーク Total Packets Received
ネットワーク Total Rx Errors
ネットワーク Total Tx Errors
ネットワーク Total Collisions
物理ディスク Avg. Disk sec/Read
物理ディスク Avg. Disk sec/Transfer
物理ディスク Avg. Disk sec/Write
物理ディスク Physical Disk Bytes/sec
Process Pct Privileged Time
Process Pct User Time
Process Used Memory kBytes
Process Virtual Shared Memory
プロセッサ % DPC Time
プロセッサ % Idle Time
プロセッサ % Interrupt Time
プロセッサ % IO Wait Time
プロセッサ % Nice Time
プロセッサ % Privileged Time
プロセッサ % Processor Time
プロセッサ % User Time
システム Free Physical Memory
システム Free Space in Paging Files
システム Free Virtual Memory
システム 処理
システム 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>

データ収集

Log Analytics は、カウンターがインストールされているすべてのエージェントについて、指定されたサンプル間隔ですべての指定されたパフォーマンス カウンターを収集します。 データは集計されず、生データが、OMS サブスクリプションで指定した期間、すべてのログ検索ビューで利用可能です。

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

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

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

OpsManager – Windows エージェント、直接接続または SCOM
Linux – すべての Linux エージェント
AzureStorage – Azure 診断
TimeGenerated データがサンプリングされた日付と時刻。

サイズ見積もり

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

1 MB x (number of counters) x (number of agents) x (number of instances)

パフォーマンス レコードでのログ検索

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

クエリ 説明
Type=Perf すべてのパフォーマンス データ
Type=Perf Computer="MyComputer" 特定のコンピューターからのすべてのパフォーマンス データ
Type=Perf CounterName="Current Disk Queue Length" 特定のカウンターに関するすべてのパフォーマンス データ
Type=Perf (ObjectName=Processor) CounterName="% Processor Time" InstanceName=_Total | measure Avg(Average) as AVGCPU by Computer コンピューター全体の平均 CPU 使用率
Type=Perf (CounterName="% Processor Time") | measure max(Max) by Computer コンピューター全体の最大 CPU 使用率
Type=Perf ObjectName=LogicalDisk CounterName="Current Disk Queue Length" Computer="MyComputerName" | measure Avg(Average) by InstanceName 特定のコンピューターのインスタンス全体における現在のディスク キューの長さの平均
Type=Perf CounterName="DiskTransfers/sec" | measure percentile95(Average) by Computer コンピューター全体のディスク転送数/秒の 95 パーセンタイル
Type=Perf CounterName="% Processor Time" InstanceName="_Total" | measure avg(CounterValue) by Computer Interval 1HOUR 全コンピューターの CPU 使用率の平均値 (1 時間ごと)
Type=Perf Computer="MyComputer" CounterName=%* InstanceName=_Total | measure percentile70(CounterValue) by CounterName Interval 1HOUR 特定のコンピューターの各パーセント (%) カウンターの 70 パーセンタイル (1 時間ごと)
Type=Perf CounterName="% Processor Time" InstanceName="_Total" (Computer="MyComputer") | measure min(CounterValue), avg(CounterValue), percentile75(CounterValue), max(CounterValue) by Computer Interval 1HOUR 特定のコンピューターの CPU 使用率の平均、最小、最大、75 パーセンタイル (1 時間ごと)
Type=Perf ObjectName="MSSQL$INST2:Databases" InstanceName=master 名前付き SQL インスタンス INST2 のマスター データベースのデータベース パフォーマンス オブジェクトのすべてのパフォーマンス データ。
注意

ワークスペースが新しい Log Analytics クエリ言語にアップグレードされている場合は、上記のクエリによって次が変更されます。

クエリ Description
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(Average) by Computer コンピューター全体の平均 CPU 使用率
Perf | where CounterName == "% Processor Time" | summarize AggregatedValue = max(Max) by Computer コンピューター全体の最大 CPU 使用率
Perf | where ObjectName == "LogicalDisk" and CounterName == "Current Disk Queue Length" and Computer == "MyComputerName" | summarize AggregatedValue = avg(Average) by InstanceName 特定のコンピューターのインスタンス全体における現在のディスク キューの長さの平均
Perf | where CounterName == "DiskTransfers/sec" | summarize AggregatedValue = percentile(Average, 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 インスタンス INST2 のマスター データベースのデータベース パフォーマンス オブジェクトのすべてのパフォーマンス データ。

パフォーマンス データの表示

パフォーマンス データのログ検索を実行すると、既定で [リスト] ビューが表示されます。 グラフィカルな形式でデータを表示するには、 [メトリック]をクリックします。 詳細なグラフィック表示については、カウンターの横にある + をクリックします。

折りたたまれた [メトリック] ビュー

ログ検索でパフォーマンス データを集計する方法については、「On-demand metric aggregation and visualization in OMS (OMS におけるオンデマンドのメトリック集計と視覚化)」を参照してください。

次のステップ