Aracılığıyla paylaş


Azure İzleyici'de bir dönüşüm oluşturun

Azure İzleyici'deki dönüştürmeler, gelen verileri Log Analytics çalışma alanında depolanmadan önce filtrelemenize veya değiştirmenize olanak sağlar. Bunlar, veri toplama kuralında (DCR) Kusto Sorgu Dili (KQL) deyimi olarak uygulanır. Bu makalede, dönüştürme sorgusu oluşturma ve test etme ve DCR'ye ekleme konusunda rehberlik sağlanır.

Uyarı

KQL hakkında bilginiz yoksa veya Azure İzleyici verileri için günlük sorguları oluşturuyorsanız, Azure İzleyici'de Log Analytics'e Genel Bakış ve Azure İzleyici'de Günlük sorguları ile başlayın.

Temel sorgu yapısı

Tüm dönüştürme sorguları, giriş akışını temsil eden bir sanal tablo olan ile sourcebaşlar. Daha sonra, diğer tablolarda olduğu gibi verileri filtrelemek, değiştirmek veya verilere sütun eklemek için desteklenen KQL işleçlerini kullanabilirsiniz. Sorgu, veri kaynağı tarafından gönderilen her girişe ayrı ayrı uygulanır.

Sorgunun çıktısı, aşağıdaki önemli noktalarla hedef tablonun şemasıyla eşleşmelidir:

  • Doldurulmaması gereken sütunları atlayabilirsiniz. Hedef tablodaki kayıt için sütun boş olacaktır.
  • Çıkış tablosuna dahil olmayan sütunları dışlamamaya özen gösterin. Veriler hatasız olarak kabul edilir, ancak depolanmamış olsa bile ek verilerin alınması için ücretlendirilirsiniz.
  • Her dönüşümün çıkışı, türü TimeGenerated olan datetime adlı bir sütunda geçerli bir zaman damgası içermelidir. Veri kaynağınız bu özelliği içermiyorsa, extend veya project ile dönüştürmeye ekleyebilirsiniz.

Aşağıda birkaç işlev gerçekleştiren bir dönüştürme örneği verilmiştir:

  • Gelen verileri bir where deyimle filtreler.
  • işlecini extend kullanarak yeni bir sütun ekler.
  • Çıkışı, project işlecini kullanarak hedef tablonun sütunlarıyla eşleşecek şekilde biçimlendirir.
source
| where severity == "Critical" 
| extend Properties = parse_json(properties)
| project
    TimeGenerated = todatetime(["time"]),
    Category = category,
    StatusDescription = StatusDescription,
    EventName = name,
    EventId = tostring(Properties.EventId)

Uyarı

Farklı senaryolar için çeşitli örnekler için Azure İzleyici'deki veri toplama kuralı (DCR) örneklerine ve senaryolarına bakın.

Dönüştürme sorgusu oluşturma

Dönüştürmenizi içerecek DCR'yi oluşturmadan veya düzenlemeden önce dönüştürme sorgusunu oluşturmanız ve test etmeniz gerekir. Bunu genellikle mevcut verilerde test sorguları çalıştırarak veya test verileriyle yaparsınız. İstediğiniz sonuçları aldığınızda, tablo adını source ile değiştirebilir ve aşağıda DCR'ye Dönüştürme Ekle bölümünde açıklandığı gibi DCR'nize yapıştırabilirsiniz.

Önemli

Dönüştürmeler tüm KQL özelliklerini desteklemez. Azure İzleyici dönüştürmelerinde desteklenen KQL özellikleri hakkında bilgi için desteklenen özellikler ve sınırlamalar bölümüne bakın.

Örneğin, Syslog olaylarını filtrelemek için bir dönüştürme oluşturuyorsanız, Log Analytics'te çalıştırabileceğiniz aşağıdaki sorguyla başlayabilirsiniz.

Syslog | where SeverityLevel != 'info'

Bu sorguyu DCR'nize yapıştırabilir ve ardından tablo adını olarak sourcedeğiştirebilirsiniz.

source | where SeverityLevel != 'info'

Sorgunuzu test etmek için kullanılacak veriler için aşağıdaki stratejilerden birini kullanın.

  • Dönüştürmek istediğiniz verileri zaten topluyorsanız Log Analytics'i kullanarak verileri gerektiği gibi filtreleyen veya değiştiren bir sorgu yazabilirsiniz. Sorgu metnini kopyalayın ve DCR'nize yapıştırın.
  • Gelen verilerinizi temsil eden bir örnek veri kümesi oluşturmak üzere işlecini kullanarak datatable sorgunuzu yazmak için Log Analytics'i kullanın. Sorgu metnini işleci olmadan datatable kopyalayın ve DCR'nize yapıştırın.
  • Azure portalında yeni bir tablo oluşturmak ve örnek veriler sağlamak için bu işlemi kullanın. Dönüşüm sorgunuzu oluşturmak ve test etmek için dahil edilen arabirimi kullanın. Sorgu metnini kopyalayıp DCR'nize yapıştırın veya işlemi tamamlayın ve DCR'yi düzenleyerek dönüştürme sorgusunu kopyalayın. Daha sonra ihtiyacınız yoksa yeni tabloyu silebilirsiniz.

DCR'ye dönüştürme ekleme

Dönüştürme sorgunuzu aldıktan sonra bir DCR'ye ekleyebilirsiniz. DCR tanımına dönüştürme sorgusunu eklemek üzere bu bölümdeki bilgileri kullanarak DCR'yi oluşturmak veya düzenlemek için Azure İzleyici'de veri toplama kuralları (DCR) oluşturma ve düzenleme başlığı altında yer alan kılavuzu kullanın.

Uyarı

Bazı veri kaynakları, DCR'ye dönüştürme eklemek için Azure portalını kullanan bir yöntem sağlar. Örneğin, bir sanal makineden metin toplamak, Azure portalında bir dönüştürme sorgusu belirtmenize olanak tanır. Ancak veri toplama senaryolarının çoğu şu anda bir dönüştürme eklemek için doğrudan DCR tanımıyla çalışmanızı gerektirir. Bu bölümde açıklanan işlem budur.

Dönüştürme sorgusu, DCR'nin transformKqlVeri Akışı s bölümünde özelliğinde belirtilir. Bu, bir veri kaynağını hedefle eşleştiren bölümdür. Dönüştürme, hedefe gönderilmeden önce veri akışının gelen akışına uygulanır. Yalnızca diğer veri akışlarında aynı akış veya hedef kullanılıyor olsa bile bu veri akışına uygulanır.

transformKql Özellik atlanırsa veya değeri basitçe sourceise, hiçbir dönüştürme uygulanmaz ve gelen veriler değiştirilmeden hedefe gönderilir.

Önemli

Dönüştürme sorgusu DCR'de tek bir satırda olmalıdır. Dönüştürmeyi Azure portalında oluşturuyorsanız, okunabilirlik için birden çok satır kullanabilirsiniz ve \n her yeni satır için sorguya eklenir.

Aşağıdaki örnekte özellik olmadığından transformKql , gelen veriler değiştirilmeden hedefe gönderilir.

"dataFlows": [ 
    { 
        "streams": [ 
        "Microsoft-Syslog" 
        ], 
        "destinations": [ 
        "centralWorkspace" 
        ] 
    } 
] 

Aşağıdaki örnekte, transformKql basit bir sorgusu sourcevardır, bu nedenle gelen veriler değiştirilmeden hedefe gönderilir. İşlevselliği önceki örnekle aynıdır.

"dataFlows": [ 
    { 
        "streams": [ 
        "Microsoft-Syslog" 
        ], 
        "transformKql": "source", 
        "destinations": [ 
        "centralWorkspace" 
        ] 
    } 
] 

Aşağıdaki örnekte, transformKql verileri filtreleyen bir sorgu vardır, bu nedenle hedefe yalnızca hata iletileri gönderilir.

"dataFlows": [ 
    { 
        "streams": [ 
        "Microsoft-Syslog" 
        ], 
        "transformKql": "source | where message has 'error'", 
        "destinations": [ 
        "centralWorkspace" 
        ] 
    } 
] 

Çalışma alanı dönüşümü için DCR oluşturma

Çalışma alanı dönüştürme veri toplama kuralı (DCR), doğrudan Log Analytics çalışma alanına uygulanan özel bir DCR'dir . Her çalışma alanı için yalnızca bir çalışma alanı dönüştürme DCR'si olabilir, ancak herhangi bir sayıda tablo için dönüştürmeler içerebilir.

Çalışma alanınız için bir çalışma alanı dönüştürme DCR'sini oluşturmak ve buna bir veya daha fazla dönüştürme eklemek için aşağıdaki yöntemlerden birini kullanın.

Uyarı

Yeni bir dönüştürme sorgusu etkinleştirilmesi 60 dakika kadar sürebilir.

Desteklenen bir tabloya dönüştürme ekleyerek Azure portalında bir çalışma alanı dönüştürme DCR'sini oluşturabilirsiniz.

  1. Azure portalındaki Log Analytics çalışma alanları menüsünde Tablolar'ı seçin. İlgilendiğiniz tablonun sağındaki öğesine tıklayın ve Dönüştürme oluştur'u seçin.

    Azure portalında bir tablo için dönüştürme oluşturma seçeneğini gösteren ekran görüntüsü.

  2. Bu çalışma alanı için çalışma alanı dönüşümü DCR henüz oluşturulmadıysa, oluşturma seçeneğini belirleyin. Daha önceden oluşturulmuşsa, o DCR zaten seçilmiş olur. Her çalışma alanında yalnızca bir çalışma alanı dönüştürme DCR'si olabilir.

    Yeni veri toplama kuralı oluşturmayı gösteren ekran görüntüsü.

  3. Tablodan örnek verileri görüntülemek için İleri'yi seçin. Dönüştürme sorgusunu tanımlamak için Dönüştürme düzenleyicisi'ne tıklayın.

    Günlük tablosundaki örnek verileri gösteren ekran görüntüsü.

  4. Ardından, tablodaki gerçek verilere göre sonuçları görmek için dönüştürme sorgusunu düzenleyebilir ve çalıştırabilirsiniz. İstediğiniz sonuçları elde edene kadar sorguyu değiştirmeye ve test etmeye devam edin.

  5. Sorgudan memnun olduğunuzda, DCR'yi yeni dönüşümünüzle kaydetmek için Uygula'ya ve ardından İleri ve Oluştur'a tıklayın.

    Dönüşümü kaydetmeyi gösteren ekran görüntüsü.

Dönüştürmeleri iyileştirme ve izleme

Dönüştürmeler, DCR ile toplanan her kayıtta bir KQL sorgusu çalıştırır, bu nedenle bunların verimli bir şekilde çalıştırılması önemlidir. Dönüştürme yürütme süresi, genel veri alımı gecikme süresine katkıda bulunur ve çalışması aşırı zaman alan dönüşümler veri toplama performansını etkileyebilir ve veri kaybına neden olabilir. En iyi dönüştürmelerin çalıştırılması 1 saniyeden fazla sürmemelidir. Azure İzleyici'deki günlük sorgularını iyileştirme bölümüne bakarak sorgunuzu bir dönüştürme olarak uygulamadan önce test etme konusunda ve verimli çalışmayan sorguları iyileştirme hakkında öneriler alabilirsiniz.

Önemli

Dönüştürme işlemi 20 saniyeden uzun sürerse veri kaybıyla karşılaşabilirsiniz.

Dönüştürmeler etkileşimli çalışmadığından, düzgün çalıştığından ve verileri işlemek için aşırı zaman almadığından emin olmak için bunları sürekli izlemek önemlidir. Azure İzleyici'de DCR veri toplama işlemlerini izleme ve sorunlarını giderme hakkında ayrıntılı bilgi için bkz. sistem durumunu ve performansını izleyen günlükler ve ölçümler. Bu, KQL'de oluşan hataları ve bunların çalışma süresini izlemeye yönelik ölçümleri tanımlamayı içerir.

Aşağıdaki ölçümler dönüştürmeler için otomatik olarak toplanır ve dönüşümlerinizin beklendiği gibi çalışmaya devam ettiğini doğrulamak için düzenli olarak gözden geçirilmelidir. Bu ölçümlerden biri eşiği aştığında otomatik olarak bildirilecek ölçüm uyarı kuralları oluşturun.

  • Dakikada Log Dönüşümü Süresi
  • Dakikada Log Dönüştürme Hataları

Dönüştürmelerinizde veya diğer sorgularınızda oluşan hataları izlemek için DCR hata günlüklerini etkinleştirin. Bu tabloya bir girdi yazıldığında otomatik olarak bildirilecek bir günlük uyarı kuralı oluşturun.

Yönerge

Veri toplama yöntemine bağlı olarak dönüşüm oluşturmak için birden çok yöntem vardır. Aşağıdaki tabloda dönüşüm oluşturmaya yönelik farklı yöntemlere yönelik yönergeler listelemektedir.

Veri toplama Kaynak
Kayıtlar Alımı API'si REST API kullanarak Azure İzleyici Günlüklerine veri gönderme (Azure portalı)
REST API kullanarak Azure İzleyici Günlüklerine veri gönderme (Azure Resource Manager şablonları)
Azure İzleyici aracısı ile sanal makine Azure Monitor Günlüğüne dönüşüm ekleme
Kapsayıcı içgörüleri ile Kubernetes kümesi Kapsayıcı içgörülerinde veri dönüştürmeleri
Azure Event Hubs Öğretici: Olayları Azure Event Hubs'dan Azure İzleyici Günlüklerine alma (Genel Önizleme)

Sınırlamalar ve Dikkat Edilecek Hususlar

  • Log Analytics çalışma alanı içindeki tüm tablolar dönüştürmeleri desteklemez. Desteklenen tabloların listesi için bkz. Azure İzleyici Günlüklerinde dönüştürmeleri destekleyen tablolar.
  • Dönüştürme sorgularında tüm KQL işleçleri desteklenmez. Bkz . Azure İzleyici dönüşümlerinde desteklenen KQL özellikleri.
  • Dönüştürme birden çok tabloya tek bir veri kaynağı gönderese de, birden çok çalışma alanına veri gönderemez. Tek bir veri kaynağından birden çok çalışma alanına veri göndermek için birden çok DCR oluşturun.
  • Çalışma alanı dönüşümü DCR, dönüştürme tablonun kendisine uygulandığından birden çok tabloya tek bir veri kaynağı gönderemez.
  • Çalışma alanı dönüştürme DCR'sindeki dönüştürmeler, veri kaynağından bağımsız olarak tabloya gönderilen tüm verilere uygulanır. Farklı veri kaynaklarına farklı dönüştürmeler uygulamanız gerekiyorsa, farklı kaynaklardan gelen verilere farklı mantık uygulamak için dönüştürme sorgusundaki bir where deyimi kullanın.

Sonraki Adımlar