let ステートメントを使用する

完了

let ステートメントは、式に名前をバインドするために使用します。 let ステートメントが使用されているスコープの残りの部分では、そのバインドされた値を名前で参照します。 let ステートメントを使用すると、潜在的に複雑な式を複数の部分に分割できるため、モジュール化と再利用が向上します。 let ステートメントによって各部分が名前にバインドされ、それらをまとめたもので全体が構成されます。 let ステートメントを使用すると、ユーザー定義の関数およびビューを作成できます。 ビューは式であり、その結果は新しいテーブルのように見えます。

変数の宣言と再利用

let ステートメントを使用すると、後のステートメントで使用する変数を作成できます。 この例では、timeOffSet と discardEventId が作成され、SecurityEvent の "where" 句の一部として使用されています。

let timeOffset = 7d;
let discardEventId = 4688;
SecurityEvent
| where TimeGenerated > ago(timeOffset*2) and TimeGenerated < ago(timeOffset)
| where EventID != discardEventId

ヒント

"ago()" は、現在の日付と時刻を受け取り、指定された値を減算する関数です。

動的なテーブルまたはリストの宣言

let ステートメントを使用すると、動的なテーブルまたはリストを作成できます。

let suspiciousAccounts = datatable(account: string) [
    @"\administrator", 
    @"NT AUTHORITY\SYSTEM"
];
SecurityEvent | where Account in (suspiciousAccounts)
let LowActivityAccounts =
    SecurityEvent 
    | summarize cnt = count() by Account 
    | where cnt < 1000;
LowActivityAccounts | where Account contains "SQL"