
Phân tích câu hỏi và PowerShell script:
PowerShell script này sử dụng Azure Monitor Log Alerts để tạo một alert dựa trên dữ liệu log từ Azure Monitor. Hãy phân tích từng phần:
- Nguồn dữ liệu log (
$source
):$source = New-AzScheduledQueryRuleSource -Query "Heartbeat | where TimeGenerated > ago(1h)" -DataSourceId "contoso"
- Truy vấn Kusto Query Language (KQL) kiểm tra “Heartbeat” trong 1 giờ qua.
- “Heartbeat” thường dùng để theo dõi trạng thái của VM trong Azure.
- Lịch chạy alert (
$schedule
):$schedule = New-AzScheduledQueryRuleSchedule -FrequencyInMinutes 60 -TimeWindowInMinutes 60
- Chạy mỗi 60 phút (1 giờ).
- Kiểm tra dữ liệu trong khoảng thời gian 60 phút.
- Điều kiện kích hoạt (
$triggerCondition
):$triggerCondition = New-AzScheduledQueryRuleTriggerCondition -ThresholdOperator "LessThan" -Threshold 5
- Kích hoạt khi giá trị nhỏ hơn 5.
- Không liên quan đến CPU, chỉ kiểm tra số lượng heartbeat.
- Gửi email alert (
$aznsActionGroup
):$aznsActionGroup = New-AzScheduledQueryRuleAznsActionGroup -ActionGroup "contoso" -EmailSubject "Custom email subject"
- Gửi email khi alert xảy ra.
- Tạo alert (
New-AzScheduledQueryRule
):New-AzScheduledQueryRule -ResourceGroupName "contoso" -Location "eastus" -Action $alertingAction -Enabled $true
- Định nghĩa toàn bộ rule để gửi alert.
Kiểm tra các đáp án:
Statements | Đúng/Sai | Giải thích |
---|---|---|
“A log alert is created that sends an email when the CPU percentage is above 60 percent for five minutes.” | ❌ No | Script không kiểm tra CPU, mà kiểm tra số lượng heartbeat. |
“A log alert is created that sends an email when the number of virtual machine heartbeats in the past hour is less than five.” | ✅ Yes | ThresholdOperator "LessThan" với Threshold 5 nghĩa là alert sẽ kích hoạt nếu số heartbeat < 5 trong 1 giờ qua. |
“The log alert is scheduled to run every two hours.” | ❌ No | -FrequencyInMinutes 60 nghĩa là chạy mỗi 60 phút (1 giờ), không phải 2 giờ. |
Đáp án chính xác:
- Câu 1: ❌ No (Vì script không kiểm tra CPU)
- Câu 2: ✅ Yes (Vì script kiểm tra số lượng heartbeat)
- Câu 3: ❌ No (Vì script chạy mỗi 1 giờ, không phải 2 giờ)
🚀 Chọn đáp án No – Yes – No!