Använda let-instruktionen

Slutförd

Låt uttryck binda namn till uttryck. För resten av omfånget, där let-instruktionen visas, refererar namnet till dess bundna värde. Låt instruktioner förbättra modularitet och återanvändning eftersom de gör att du kan dela upp ett potentiellt komplext uttryck i flera delar. Varje del är bunden till ett namn via let-instruktionen och tillsammans skapar de helheten. Let-instruktioner gör det möjligt att skapa användardefinierade funktioner och vyer. Vyerna är uttryck vars resultat ser ut som en ny tabell.

Deklarera och återanvända variabler

Let-instruktioner gör det möjligt att skapa variabler som ska användas i senare instruktioner. I det här exemplet skapas timeOffSet och discardEventId som en del av SecurityEvent-satsen "where".

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

Dricks

"ago()" är en funktion som tar aktuellt datum och tid och subtraherar det angivna värdet.

Deklarera dynamiska tabeller eller listor

Let-instruktioner gör det möjligt att skapa dynamiska tabeller eller listor.

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"