Öğretici: Yaygın işleçleri öğrenme
Kusto Sorgu Dili (KQL), Azure Veri Gezgini, Azure İzleyici Log Analytics, Azure Sentinel ve daha fazlasında sorgu yazmak için kullanılır. Bu öğretici, verilerinize erişmek ve bunları analiz etmek için kullanılan temel KQL işleçlerine giriş niteliğindedir.
Azure İzleyici'de günlükleri sorgulama hakkında daha ayrıntılı yönergeler için bkz . Günlük sorgularını kullanmaya başlama.
Not
Aradığınızı bulamadınız mı? Bu makale kısa süre önce aşağıdaki gibi bölünmüştür:
- Yaygın işleçleri öğrenin (bu makale)
- Toplama işlevlerini kullanma
- Birden çok tablodan verileri birleştirme
- Jeo-uzamsal görselleştirmeler oluşturma
Bu öğreticide aşağıdakilerin nasıl yapılacağını öğreneceksiniz:
Bu öğreticideki örneklerde, yardım kümesinde genel kullanıma açık olan tablo kullanılırStormEvents
. Kendi verilerinizle keşfetmek için kendi ücretsiz kümenizi oluşturun.
Önkoşullar
Satırları say
Tablodaki storm kayıtlarının sayısını bulmak için count işlecini StormEvents
kullanarak başlayın.
StormEvents
| count
Çıktı
Sayı |
---|
59066 |
Veri örneğine bakın
Verileri algılamak için take işlecini kullanarak kayıtların bir örneğini görüntüleyin. Bu işleç tablodan belirtilen sayıda rastgele satır döndürür. Bu, genel veri yapısını ve içeriğini önizlemek için yararlı olabilir.
StormEvents
| take 5
Aşağıdaki tabloda döndürülen 22 sütunun yalnızca 5'i gösterilmektedir. Çıkışın tamamını görmek için sorguyu çalıştırın.
StartTime | EndTime | EpisodeId | EventId | Durum | EventType | ... |
---|---|---|---|---|---|---|
2007-09-20T21:57:00Z | 2007-09-20T22:05:00Z | 11078 | 60913 | FLORIDA | Kasırga | ... |
2007-12-20T07:50:00Z | 2007-12-20T07:53:00Z | 12554 | 68796 | MISSISSIPPI | Gök Gürültülü Fırtına | ... |
2007-12-30T16:00:00Z | 2007-12-30T16:05:00Z | 11749 | 64588 | GEORGIA | Gök Gürültülü Fırtına | ... |
2007-09-29T08:11:00Z | 2007-09-29T08:11:00Z | 11091 | 61032 | ATLANTIK GÜNEY | Su damlası | ... |
2007-09-18T20:00:00Z | 2007-09-19T18:00:00Z | 11074 | 60904 | FLORIDA | Şiddetli Yağmur | ... |
Sütunların alt kümesini seçme
Görünümü basitleştirmek ve sütunların belirli bir alt kümesini seçmek için proje işlecini kullanın. Kullanmak project
genellikle tüm sütunları görüntülemekten daha verimlidir ve okunmasını kolaylaştırır.
StormEvents
| take 5
| project State, EventType, DamageProperty
Çıktı
Durum | EventType | DamageProperty |
---|---|---|
ATLANTIK GÜNEY | Su damlası | 0 |
FLORIDA | Şiddetli Yağmur | 0 |
FLORIDA | Kasırga | 6200000 |
GEORGIA | Gök Gürültülü Fırtına | Kategori 2000 |
MISSISSIPPI | Gök Gürültülü Fırtına | 20000 |
Benzersiz değerleri listeleme
Önceki sorgunun sonuçlarına bağlı olarak birden çok tür fırtına olduğu görülüyor. Benzersiz fırtına türlerinin tümünü listelemek için distinct işlecini kullanın.
StormEvents
| distinct EventType
Tabloda 46 tür fırtına vardır. Burada bunlardan 10'unun bir örneği verilmiştir.
EventType |
---|
Gök Gürültülü Fırtına |
Dolu |
Flash Flood |
Kurak -lık |
Kış Hava Durumu |
Kış Fırtınası |
Yoğun Kar |
Kuvvetli Rüzgar |
Donma/Donma |
Sel |
... |
Koşula göre filtrele
Where işleci belirli ölçütlere göre veri satırlarını filtreler.
Aşağıdaki sorgu belirli bir State
içindeki fırtına olaylarını EventType
arar.
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| project StartTime, EndTime, State, EventType, DamageProperty
Bu koşullara uyan 146 olay vardır. Burada 5 örnek verilmiştir.
StartTime | EndTime | Durum | EventType | DamageProperty |
---|---|---|---|---|
2007-01-13T08:45:00Z | 2007-01-13T10:30:00Z | TEXAS | Sel | 0 |
2007-01-13T09:30:00Z | 2007-01-13T21:00:00Z | TEXAS | Sel | 0 |
2007-01-13T09:30:00Z | 2007-01-13T21:00:00Z | TEXAS | Sel | 0 |
2007-01-15T22:00:00Z | 2007-01-16T22:00:00Z | TEXAS | Sel | 20000 |
2007-03-12T02:30:00Z | 2007-03-12T06:45:00Z | TEXAS | Sel | 0 |
... | ... | ... | ... | ... |
Sonuçları sıralama
Texas'ta en çok hasara neden olan en çok zarar veren taşkınları görüntülemek için sıralama işlecini kullanarak satırları sütuna göre DamageProperty
azalan düzende düzenleyin. Varsayılan sıralama düzeni azalan düzendedir. Artan düzende sıralamak için belirtin asc
.
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| sort by DamageProperty
| project StartTime, EndTime, State, EventType, DamageProperty
Çıktı
StartTime | EndTime | Durum | EventType | DamageProperty |
---|---|---|---|---|
2007-08-18T21:30:00Z | 2007-08-19T23:00:00Z | TEXAS | Sel | 5.000.000 |
2007-06-27T00:00:00Z | 2007-06-27T12:00:00Z | TEXAS | Sel | 1200000 |
2007-06-28T18:00:00Z | 2007-06-28T23:00:00Z | TEXAS | Sel | 1000000 |
2007-06-27T00:00:00Z | 2007-06-27T08:00:00Z | TEXAS | Sel | 750000 |
2007-06-26T20:00:00Z | 2007-06-26T23:00:00Z | TEXAS | Sel | 750000 |
... | ... | ... | ... | ... |
İlk n satırı alma
Üst işleç, belirtilen sütuna göre sıralanmış ilk n satırı döndürür.
Aşağıdaki sorgu, en çok zarar gören özelliğe neden olan beş Texas selini döndürür.
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| top 5 by DamageProperty
| project StartTime, EndTime, State, EventType, DamageProperty
Çıktı
StartTime | EndTime | Durum | EventType | DamageProperty |
---|---|---|---|---|
2007-08-18T21:30:00Z | 2007-08-19T23:00:00Z | TEXAS | Sel | 5.000.000 |
2007-06-27T00:00:00Z | 2007-06-27T12:00:00Z | TEXAS | Sel | 1200000 |
2007-06-28T18:00:00Z | 2007-06-28T23:00:00Z | TEXAS | Sel | 1000000 |
2007-06-27T00:00:00Z | 2007-06-27T08:00:00Z | TEXAS | Sel | 750000 |
2007-06-26T20:00:00Z | 2007-06-26T23:00:00Z | TEXAS | Sel | 750000 |
Not
İşleçlerin sırası önemlidir. Daha önce where
buraya koyarsanız top
farklı sonuçlar alırsınız. Bunun nedeni verilerin her işleç tarafından sırayla dönüştürülmesidir. Daha fazla bilgi edinmek için bkz . tablosal ifade deyimleri.
Hesaplanmış sütunlar oluşturma
Hem proje hem de genişletme işleçleri hesaplanmış sütunlar oluşturabilir.
Yalnızca görüntülemek istediğiniz sütunları belirtmek için kullanın project
ve hesaplanan sütunu tablonun sonuna eklemek için kullanın extend
.
Aşağıdaki sorgu, ve EndTime
arasındaki StartTime
farka sahip bir hesaplanmış Duration
sütun oluşturur. Yalnızca birkaç seçme sütununu görüntülemek istediğimizden, project
kullanmak bu durumda daha iyi bir seçimdir.
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| top 5 by DamageProperty desc
| project StartTime, EndTime, Duration = EndTime - StartTime, DamageProperty
Çıktı
StartTime | EndTime | Süre | DamageProperty |
---|---|---|---|
2007-08-18T21:30:00Z | 2007-08-19T23:00:00Z | 1.01:30:00 | 5.000.000 |
2007-06-27T00:00:00Z | 2007-06-27T12:00:00Z | 12:00:00 | 1200000 |
2007-06-28T18:00:00Z | 2007-06-28T23:00:00Z | 05:00:00 | 1000000 |
2007-06-27T00:00:00Z | 2007-06-27T08:00:00Z | 08:00:00 | 750000 |
2007-06-26T20:00:00Z | 2007-06-26T23:00:00Z | 03:00:00 | 750000 |
Hesaplanan Duration
sütuna bakarsanız en çok hasara neden olan selin aynı zamanda en uzun sel olduğunu fark edebilirsiniz.
Hesaplanan Duration
sütunu diğer tüm sütunlarla birlikte görüntülemek için kullanınextend
. Sütun Duration
son sütun olarak eklenir.
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| top 5 by DamageProperty desc
| extend Duration = EndTime - StartTime
Çıktı
StartTime | EndTime | ... | Süre |
---|---|---|---|
2007-08-18T21:30:00Z | 2007-08-19T23:00:00Z | ... | 1.01:30:00 |
2007-06-27T00:00:00Z | 2007-06-27T12:00:00Z | ... | 12:00:00 |
2007-06-28T18:00:00Z | 2007-06-28T23:00:00Z | ... | 05:00:00 |
2007-06-27T00:00:00Z | 2007-06-27T08:00:00Z | ... | 08:00:00 |
2007-06-26T20:00:00Z | 2007-06-26T23:00:00Z | ... | 03:00:00 |
Değerleri bir kümeden diğerine eşleme
Statik eşleme, sonuçlarınızın sunumunu değiştirmek için kullanışlı bir tekniktir. KQL'de statik eşleme gerçekleştirmenin bir yolu, değerleri bir kümeden diğerine eşlemek için dinamik sözlük ve erişimciler kullanmaktır.
let sourceMapping = dynamic(
{
"Emergency Manager" : "Public",
"Utility Company" : "Private"
});
StormEvents
| where Source == "Emergency Manager" or Source == "Utility Company"
| project EventId, Source, FriendlyName = sourceMapping[Source]
Çıktı
EventId | Kaynak | Friendlyname |
---|---|---|
68796 | Acil Durum Yöneticisi | Genel |
... | ... | ... |
72609 | Yardımcı Program Şirketi | Özel |
... | ... | ... |
Sonraki adım
Kusto sorguları yazmanın temellerini öğrendiğinize göre, bir sonraki öğreticiye gidin ve verileriniz hakkında daha derin içgörüler elde etmek için toplama işlevlerini kullanmayı öğrenin.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin