Azure
AzureLogAnalytics

そのまま使えるAzure Log Analytics検索クエリサンプル

More than 1 year has passed since last update.


概要

OMS、Azure Log Analyticsの1つの特徴はそのとても強力な検索機能です。非常な柔軟なクエリによって様々なものを抽出、可視化することができます。

一方で、柔軟に生成できるからこそクエリの記述が難しいと感じたり、具体的に何にどのように使っていいかわからないという印象を持つ方も少なからずいるようです。(実際にはそんなに難しくないのですが)

そこで、この記事では、現場ですぐに使えるサンプルクエリを集めてみました。


クエリ入力方法

検索クエリを入力するにはAzure管理ポータルのLog Analytics、あるいはOMSワークスペースにて「ログ検索」をクリックします。

image.png

ログの検索画面になり検索クエリを入力することができるようになります。

image.png

クエリを入力すると結果が表示されます。

image.png

種類によってはグラフで表示することもできます。

image.png

image.png

image.png


OMS管理系


コンピューターの最終データ報告日時

ObjectName!="Advisor Metrics" ObjectName!=ManagedSpace | measure max(TimeGenerated) as LastReportTime by Computer | Sort Computer


種類別のレコード件数

* | Measure count() by Type


サーバー管理系


CPU使用率

Type:Perf CounterName="% Processor Time" InstanceName="_Total" | measure avg(CounterValue) by Computer Interval 1HOUR


予期せぬシャットダウンが発生したコンピュータ

Type=Event EventID=6008 Source=EventLog


ディスク空き容量

* Type=Perf CounterName="Free Megabytes"


過去1時間の平均CPU使用率 Top10

* Type=Perf CounterName="% Processor Time" InstanceName="_Total" TimeGenerated>NOW-1HOUR | Measure avg(CounterValue) as AVGCPU by Computer | Sort AVGCPU desc | Top 10


過去24時間で最もDiskQueueLengthが高かったコンピューターTop10

* Type=Perf ObjectName=LogicalDisk CounterName="Current Disk Queue Length" TimeGenerated>NOW-24HOUR| Measure Max(CounterValue) as MAXDiskQueue by Computer | Sort MAXDiskQueue desc | Top 10


SQL Server がIOを15秒以上待った管理対象

EventID=833 EventLog=Application Source=MSSQLSERVER | measure count() by Computer


セキュリティ関連


重要な更新プログラムまたはセキュリティ更新プログラムがインストールされていないすべてのコンピューター

Type=Update UpdateState=Needed Optional=false (Classification="Security Updates" OR Classification="Critical Updates")


ゲスト アカウントによるログオンがあったコンピューター

Type=SecurityEvent EventID=4624 (LogonType=10 or LogonType=3) TargetUserName="Guest" | Measure count() by Computer


クリアテキストのパスワードによるログオン

Type=SecurityEvent EventID=4624 (LogonType=10 or LogonType=3) TargetUserName="Guest" | Measure count() by Computer


アカウントのログオン失敗

Type=SecurityEvent EventID=4625 | measure count() by TargetAccount


Windows Updateの自動更新が無効のコンピューターに対して適用されていない更新プログラム

Type=Update UpdateState=Needed Optional=false Computer IN {Type=UpdateSummary WindowsUpdateSetting=Manual | measure count() by Computer} | measure count() by KBID


DOMAIN\userがログインしたコンピューターにログインしたその他のユーザー

Type=SecurityEvent EventID=4624 Account!="DOMAIN\\user" Computer IN { Type=SecurityEvent EventID=4624 Account="DOMAIN\\user" | measure count() by Computer } | measure count() by Account