メインコンテンツまでスキップ
Sumo Logic Japanese

Windows パフォーマンス アプリケーションのログの収集

このページでは、Windows パフォーマンス アプリケーションのログ収集を設定する手順を説明し、ログ ファイルとクエリの例を示します。

Collector と Source の設定

Windows パフォーマンス アプリケーションのログを収集するには、Installed Collector、およびローカルまたはリモート Windows パフォーマンス モニタ ログ Source を設定する必要があります。

Windows パフォーマンス アプリケーションのログを収集するには、以下の手順を実行します。
  1. Installed Collector の説明に従って Collector をインストールします。
  2. Windows パフォーマンス Source を設定し、環境に合わせて以下のいずれかを選択します。

Windows パフォーマンス Source へのカスタム クエリの追加

設定を完了するには、ログの収集に使用している各 Windows パフォーマンス Source を編集し、カスタム クエリを追加する必要があります。

  1. [Manage Data (データの管理)] > [Collection (コレクション)] > [Collection (コレクション)] の順に移動します。
  2. [Collector (Collector)] と [Windows Performance Source (Windows パフォーマンス Source)] を見つけます。
  3. [Source] で、[Edit (編集)] をクリックします。
    PerformQueries.png
  4. [Perfmon Queries (Perfmon クエリ)] で、以下のクエリのチェックボックスをオンにします。
    • CPU
    • Physical Disk (物理ディスク)
    • メモリ
    • Network (ネットワーク)
  5. [Add Query (クエリの追加)] をクリックします。
    • [Name (名前)]「CPU per Process (プロセスあたりの CPU)」と入力します。
    • [Query (クエリ)]「select * from Win32_PerfFormattedData_PerfProc_Process」と入力します。
  6. [Save (保存)] をクリックします。

ログ メッセージのサンプル

instance of Win32_PerfFormattedData_PerfProc_Process
{
    CreatingProcessID = 2612;
    ElapsedTime = "3252";
    HandleCount = 756;
    IDProcess = 2580;
    IODataBytesPersec = "0";
    IODataOperationsPersec = "0";
    IOOtherBytesPersec = "0";
    IOOtherOperationsPersec = "0";
    IOReadBytesPersec = "0";
    IOReadOperationsPersec = "0";
    IOWriteBytesPersec = "0";
    IOWriteOperationsPersec = "0";
    Name = "explorer";
    PageFaultsPersec = 0;
    PageFileBytes = "38965248";
    PageFileBytesPeak = "48934912";
    PercentPrivilegedTime = "6";
    PercentProcessorTime = "7";
    PercentUserTime = "23";
    PoolNonpagedBytes = 53104;
    PoolPagedBytes = 410728;
    PriorityBase = 8;
    PrivateBytes = "38965248";
    ThreadCount = 27;
    VirtualBytes = "235999232";
    VirtualBytesPeak = "270917632";
    WorkingSet = "52269056";
    WorkingSetPeak = "56279040";
    WorkingSetPrivate = "23617536";
}
instance of Win32_PerfFormattedData_PerfOS_Memory
{
	AvailableBytes = "1238610176";
	AvailableKBytes = "1111924";
	AvailableMBytes = "1085";
	CacheBytes = "49934336";
	CacheBytesPeak = "155365376";
	CacheFaultsPersec = 0;
	CommitLimit = "4294033408";
	CommittedBytes = "1131204608";
	DemandZeroFaultsPersec = 175;
	FreeAndZeroPageListBytes = "630083584";
	FreeSystemPageTableEntries = 33555674;
	ModifiedPageListBytes = "46796800";
	PageFaultsPersec = 175;
	PageReadsPersec = 10;
	PagesInputPersec = 0;
	PagesOutputPersec = 0;
	PagesPersec = 0;
	PageWritesPersec = 3;
	PercentCommittedBytesInUse = 26;
	PoolNonpagedAllocs = 126788;
	PoolNonpagedBytes = "46321664";
	PoolPagedAllocs = 105056;
	PoolPagedBytes = "145367040";
	PoolPagedResidentBytes = "145051648";
	StandbyCacheCoreBytes = "0";
	StandbyCacheNormalPriorityBytes = "420179968";
	StandbyCacheReserveBytes = "88346624";
	SystemCacheResidentBytes = "49934336";
	SystemCodeResidentBytes = "2596864";
	SystemCodeTotalBytes = "7192576";
	SystemDriverResidentBytes = "5947392";
	SystemDriverTotalBytes = "5259264";
	TransitionFaultsPersec = 0;
	TransitionPagesRePurposedPersec = 0;
	WriteCopiesPersec = 0;
}

クエリのサンプル

使用可能なメモリが少ないホスト

_sourceCategory=OS/Windows "Win32_PerfFormattedData_PerfOS_Memory" "AvailableBytes"
| parse regex "winbox = (?<dest_host>\S+)" nodrop<dest_host>
| if (isNull(dest_host) or dest_host="",_sourceHost,dest_host) as host
| kv regex "= (?:\"|)(.*?)(?:\"|);" keys "AvailableBytes" as aBytes
| timeslice 1m
| avg(aBytes) as AvgAvailableBytes by host,_timeslice
| int(AvgAvailableBytes/(1024*1024)) as AvgAvailMBytes   
| where AvgAvailMBytes < 100 </dest_host><dest_host>// 100MB is the threshold for this alert</dest_host><dest_host>
| count as DataPoints by host   
| where DataPoints >10 </dest_host><dest_host>// another threshold: more than 10 minutes where the limit drops under the above threshold</dest_host><dest_host></dest_host>

ホスト別の平均 CPU 使用量 (%)

_sourceCategory=OS/Windows "Win32_PerfFormattedData_PerfOS_Processor" "_Total"
| parse regex "winbox = (?<dest_host>\S+)" nodrop 
| if (isNull(dest_host) or dest_host="",_sourceHost,dest_host) as host
| kv regex "= (?:\"|)(.*?)(?:\"|);" keys "PercentProcessorTime" as procTime
| timeslice 1m
| avg(procTime) as AvgProcTime by host,_timeslice | sort - _timeslice | transpose row _timeslice column host