Aracılığıyla paylaş


Azure İzleyici'de günlük araması uyarılarıyla ilgili sorunları giderme

Bu makalede, Azure İzleyici'de günlük araması uyarılarıyla ilgili yaygın sorunların nasıl çözüldiği açıklanır. Ayrıca günlük uyarılarının işlevselliği ve yapılandırmasıyla ilgili yaygın sorunların çözümlerini de sağlar.

Log Analytics sorgusu kullanarak kaynakların günlüklerini her ayarlanan sıklıkta değerlendirmek için günlük uyarılarını kullanabilir ve sonuçlara göre bir uyarı tetikleyebilirsiniz. Kurallar, Eylem Gruplarını kullanarak bir veya daha fazla eylemi tetikleyebilir. Günlük araması uyarılarının işlevselliği ve terminolojisi hakkında daha fazla bilgi edinmek için bkz . Azure İzleyici'de günlük uyarıları.

Not

Bu makalede uyarı kuralının tetiklendiği durumlar ele alınmaz, bunu Azure portalında görebilirsiniz, ancak bildirim gönderilmedi. Bu gibi durumlar için sorun giderme uyarılarına bakın.

Günlük araması uyarısı olması gerektiğinde tetiklenmedi

Günlük araması uyarınız tetiklenmesi gereken durumlarda tetiklenmediyse aşağıdaki öğeleri denetleyin:

  1. Uyarı kuralı düzeyi düşürülmüş veya kullanılamıyor durumda mı?

    Günlük araması uyarı kuralınızın sistem durumunu görüntüleyin:

    1. Portalda İzleyici'yi ve ardından Uyarılar'ı seçin.

    2. Üst komut çubuğundan Uyarı kuralları'nı seçin. Sayfa, tüm aboneliklerdeki tüm uyarı kurallarınızı gösterir.

    3. İzlemek istediğiniz günlük araması uyarı kuralını seçin.

    4. Sol bölmedeki Yardım'ın altında Kaynak durumu'na tıklayın.

      Günlük araması uyarı kuralındaki Kaynak durumu bölümünün ekran görüntüsü.

    Daha fazla bilgi edinmek için bkz . Günlük araması uyarı kurallarının sistem durumunu izleme.

  2. Günlük alımı gecikme süresini denetleyin.

    Azure İzleyici, dünyanın her yerinden terabaytlar tarafından gerçekleştirilen günlükleri işler ve bu da günlük alımı gecikmesine neden olabilir.

    Günlükler yarı yapılandırılmış verilerdir ve doğal olarak ölçümlerden daha gizlidir. Tetiklenen uyarılarda 4 dakikadan fazla gecikmeyle karşılaşıyorsanız ölçüm uyarılarını kullanmayı düşünmelisiniz. Günlükler için ölçüm uyarılarını kullanarak günlüklerden ölçüm deposuna veri gönderebilirsiniz.

    Sistem, gecikme süresini azaltmak için uyarı değerlendirmesini birden çok kez yeniden denenir. Veriler geldikten sonra uyarı tetikler ve çoğu durumda günlük kaydı süresine eşit değildir.

  3. Eylemler kapatıldı mı yoksa uyarı kuralı otomatik olarak çözülecek şekilde yapılandırıldı mı?

    Yaygın bir sorun, uyarının tetiklenmediğini düşünmenizdir, ancak kural uyarının tetiklenmemesi için yapılandırılmıştır. Aşağıdakilerin ikisinin de seçilmediğini doğrulamak için günlük araması uyarı kuralının gelişmiş seçeneklerine bakın:

    • Eylemlerin sesini kapat onay kutusu: Tetiklenen uyarı eylemlerini belirli bir süre boyunca sessize almanızı sağlar.
    • Uyarıları otomatik olarak çözümle: Uyarıyı, her koşul karşılandığında yalnızca bir kez tetiklenmek üzere yapılandırılır.

    Uyarıları gizleme

  4. Uyarı kuralı kaynağı taşındı mı yoksa silindi mi?

    Uyarı kuralı hedef kaynağı taşınırsa, yeniden adlandırılırsa veya silinirse, bu kaynağa başvuran tüm günlük uyarı kuralları bozulur. Bu sorunu düzeltmek için uyarı kurallarının kapsam için geçerli bir hedef kaynak kullanılarak yeniden oluşturulması gerekir.

  5. Uyarı kuralı sistem tarafından atanan yönetilen kimlik kullanıyor mu?

    Sistem tarafından atanan yönetilen kimlikle bir günlük uyarısı kuralı oluşturduğunuzda, kimlik herhangi bir izin olmadan oluşturulur. Kuralı oluşturduktan sonra, sorgulamak istediğiniz verilere erişebilmesi için kuralın kimliğine uygun rolleri atamanız gerekir. Örneğin, ilgili Log Analytics çalışma alanları için bir Okuyucu rolü veya ilgili ADX kümesi için okuyucu rolü ve Veritabanı Görüntüleyicisi rolü vermeniz gerekebilir. Günlük uyarılarında yönetilen kimlikleri kullanma hakkında daha fazla bilgi için bkz. yönetilen kimlikler.

  6. Günlük araması uyarı kuralında kullanılan sorgu geçerli mi?

    Günlük uyarısı kuralı oluşturulduğunda, sorgu doğru söz dizimi için doğrulanır. Ancak bazen günlük uyarı kuralında sağlanan sorgu başarısız olabilir. Yaygın nedenlerden bazıları şunlardır:

    Azure Kaynak Durumu, günlük araması uyarı kuralları dahil olmak üzere bulut kaynaklarınızın durumunu izler. Günlük araması uyarı kuralı iyi durumda olduğunda, kural çalışır ve sorgu başarıyla yürütülür. Günlük araması uyarı kurallarınızı etkileyen sorunlar hakkında bilgi edinmek için günlük araması uyarı kuralları için kaynak durumunu kullanabilirsiniz.

  7. Günlük araması uyarı kuralı devre dışı bırakıldı mı?

    Günlük araması uyarı kuralı sorgusu bir hafta boyunca sürekli olarak değerlendirilemezse Azure İzleyici bunu otomatik olarak devre dışı bırakır.

Ayrıca, bir kural devre dışı bırakıldığında gönderilen Etkinlik günlüğü olayının bir örneği vardır.

Kural devre dışı bırakıldığında etkinlik günlüğü örneği

{
    "caller": "Microsoft.Insights/ScheduledQueryRules",
    "channels": "Operation",
    "claims": {
        "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/spn": "Microsoft.Insights/ScheduledQueryRules"
    },
    "correlationId": "abcdefg-4d12-1234-4256-21233554aff",
    "description": "Alert: test-bad-alerts is disabled by the System due to : Alert has been failing consistently with the same exception for the past week",
    "eventDataId": "f123e07-bf45-1234-4565-123a123455b",
    "eventName": {
        "value": "",
        "localizedValue": ""
    },
    "category": {
        "value": "Administrative",
        "localizedValue": "Administrative"
    },
    "eventTimestamp": "2019-03-22T04:18:22.8569543Z",
    "id": "/SUBSCRIPTIONS/<subscriptionId>/RESOURCEGROUPS/<ResourceGroup>/PROVIDERS/MICROSOFT.INSIGHTS/SCHEDULEDQUERYRULES/TEST-BAD-ALERTS",
    "level": "Informational",
    "operationId": "",
    "operationName": {
        "value": "Microsoft.Insights/ScheduledQueryRules/disable/action",
        "localizedValue": "Microsoft.Insights/ScheduledQueryRules/disable/action"
    },
    "resourceGroupName": "<Resource Group>",
    "resourceProviderName": {
        "value": "MICROSOFT.INSIGHTS",
        "localizedValue": "Microsoft Insights"
    },
    "resourceType": {
        "value": "MICROSOFT.INSIGHTS/scheduledqueryrules",
        "localizedValue": "MICROSOFT.INSIGHTS/scheduledqueryrules"
    },
    "resourceId": "/SUBSCRIPTIONS/<subscriptionId>/RESOURCEGROUPS/<ResourceGroup>/PROVIDERS/MICROSOFT.INSIGHTS/SCHEDULEDQUERYRULES/TEST-BAD-ALERTS",
    "status": {
        "value": "Succeeded",
        "localizedValue": "Succeeded"
    },
    "subStatus": {
        "value": "",
        "localizedValue": ""
    },
    "submissionTimestamp": "2019-03-22T04:18:22.8569543Z",
    "subscriptionId": "<SubscriptionId>",
    "properties": {
        "resourceId": "/SUBSCRIPTIONS/<subscriptionId>/RESOURCEGROUPS/<ResourceGroup>/PROVIDERS/MICROSOFT.INSIGHTS/SCHEDULEDQUERYRULES/TEST-BAD-ALERTS",
        "subscriptionId": "<SubscriptionId>",
        "resourceGroup": "<ResourceGroup>",
        "eventDataId": "12e12345-12dd-1234-8e3e-12345b7a1234",
        "eventTimeStamp": "03/22/2019 04:18:22",
        "issueStartTime": "03/22/2019 04:18:22",
        "operationName": "Microsoft.Insights/ScheduledQueryRules/disable/action",
        "status": "Succeeded",
        "reason": "Alert has been failing consistently with the same exception for the past week"
    },
    "relatedEvents": []
}

Bir günlük araması uyarısı tetiklenmemesi gerekirken tetiklenir

Azure İzleyici'de yapılandırılmış bir günlük uyarısı kuralı beklenmedik bir şekilde tetiklenebilir. Aşağıdaki bölümlerde bazı yaygın nedenler açıklanmaktadır.

  1. Uyarı gecikme sorunları nedeniyle tetiklendi mi?

    Azure İzleyici genel olarak terabaytlarca müşteri günlüğünü işler ve bu da günlük alımı gecikmesine neden olabilir. Hatalı uyarıları önlemeye yönelik yerleşik özellikler vardır, ancak bunlar yine de çok gizli verilerde (yaklaşık 30 dakikadan fazla) ve gecikme süresi ani artışları olan verilerde gerçekleşebilir.

    Günlükler yarı yapılandırılmış verilerdir ve doğal olarak ölçümlerden daha gizlidir. Tetiklenen uyarılarda birçok yanlış sonuçla karşılaşıyorsanız ölçüm uyarılarını kullanmayı göz önünde bulundurun. Günlükler için ölçüm uyarılarını kullanarak günlüklerden ölçüm deposuna veri gönderebilirsiniz.

    Günlük arama uyarıları, günlüklerdeki belirli verileri algılamaya çalışırken en iyi şekilde çalışır. Sanal makine sinyalinde uyarı verme gibi günlüklerdeki veri eksikliğini algılamaya çalışırken daha az etkili olurlar.

Günlük araması uyarı kurallarını yapılandırırken hata iletileri

Belirli hata iletileri ve bunların çözümleri için aşağıdaki bölümlere bakın.

Günlükler için izin almanız gerektiğinden sorgu doğrulanamadı

Uyarı kuralı sorgunuzu oluştururken veya düzenlerken bu hata iletisini alırsanız, hedef kaynak günlüklerini okuma izinlerinizin olduğundan emin olun.

  • Çalışma alanı bağlamı erişim modunda günlükleri okumak için gereken izinler: Microsoft.OperationalInsights/workspaces/query/read.
  • Kaynak bağlamı erişim modundaki günlükleri okumak için gereken izinler (çalışma alanı tabanlı Application Insights kaynağı dahil): Microsoft.Insights/logs/tableName/read.

İzinler hakkında daha fazla bilgi edinmek için bkz . Log Analytics çalışma alanlarına erişimi yönetme.

Bu sorgu için bir dakikalık sıklık desteklenmiyor

Bir dakikalık uyarı kuralı sıklığı kullanmanın bazı sınırlamaları vardır. Uyarı kuralı sıklığını bir dakikaya ayarladığınızda, sorguyu iyileştirmek için bir iç düzenleme gerçekleştirilir. Bu düzenleme, desteklenmeyen işlemler içeriyorsa sorgunun başarısız olmasına neden olabilir.

Desteklenmeyen senaryoların listesi için bu nota bakın.

adlı skaler ifade çözümlenemedi <>

Aşağıdaki durumlarda uyarı kuralı sorgunuzu oluştururken veya düzenlerken bu hata iletisi döndürülebilir:

  • Tablo şemasında yer almayan bir sütuna başvuruda bulunuyorsunuz.
  • Sorgunun önceki bir proje yan tümcesinde kullanılmayan bir sütuna başvuruda bulunuyorsunuz.

Bunu azaltmak için sütunu önceki proje yan tümcesine ekleyebilir veya columnifexists işlecini kullanabilirsiniz.

ScheduledQueryRules API'si salt okunur OMS Uyarıları için desteklenmiyor

Bu hata iletisi, Azure portalı kullanılarak eski API sürümüyle oluşturulan kuralları güncelleştirmeye veya silmeye çalışırken döndürülür.

  1. Log Analytics REST API'sini kullanarak kuralı program aracılığıyla düzenleyin veya silin.
  2. Önerilen: Uyarı kurallarınızı Zamanlanmış Sorgu Kuralları API'sini kullanacak şekilde yükseltin (eski API kullanımdan kaldırma yolundadır).

Uyarı kuralı hizmet sınırına ulaşıldı

Abonelik başına günlük araması uyarı kurallarının sayısı ve kaynak sınırları üst sınırı hakkında ayrıntılı bilgi için bkz . Azure İzleyici hizmet sınırları. Kullanımda olan ölçüm uyarı kuralı sayısını görmek için bkz . Kullanımdaki günlük uyarısı kurallarının toplam sayısını denetleme. Kota sınırına ulaştıysanız, aşağıdaki adımlar sorunu çözmeye yardımcı olabilir.

  1. Kullanılmayan günlük araması uyarı kurallarını silin veya devre dışı bırakın.

  2. Kuralların sayısını azaltmak için boyutlara göre bölmeyi kullanın. Boyutlara göre bölmeyi kullandığınızda, bir kural birçok kaynağı izleyebilir.

  3. Kota sınırının artırılmasını istiyorsanız, bir destek isteği açmaya devam edin ve aşağıdaki bilgileri sağlayın:

    • Kota sınırının artırılması gereken Abonelik Kimlikleri ve Kaynak Kimlikleri
    • Kota artışının nedeni
    • İstenen kota sınırı

ARG ve ADX Sorgularında Tamamlanmamış Zaman Filtreleme

Günlük arama uyarılarında Azure Veri Gezgini (ADX) veya Azure Kaynak Grafı (ARG) sorgularını kullanırken, "Toplama ayrıntı düzeyi" ayarının sorgularınıza zaman filtresi uygulamaması sorunuyla karşılaşabilirsiniz. Sorgu hedeflenen zaman aralığı yerine 30 günün tümünü döndürdüğünden bu beklenmeyen sonuçlara ve olası performans sorunlarına yol açabilir.

Bu sorunu çözmek için ARG ve ADX sorgularınıza zaman filtrelerini açıkça uygulamanız gerekir. Emin olmak için adımlar şunlardır:

  1. Doğru zaman filtreleme: Zaman Aralığını Tanımlama: Sorgulamak istediğiniz belirli zaman aralığını belirleyin. Örneğin, son 24 saat içindeki verileri sorgulamak istiyorsanız, sorgunuzda bu zaman aralığını belirtmeniz gerekir.

  2. Sorguyu Değiştirme: Döndürülen verileri istenen zaman aralığıyla sınırlamak için ARG veya ADX sorgunuza bir zaman filtresi ekleyin. Sorgunuzu değiştirme örneği aşağıda verilmiştir:

    // Original query without time filter
    resources
    | where type == "microsoft.compute/virtualmachines"

    // Modified query with time filter
    resources
    | where type == "microsoft.compute/virtualmachines"
    | where timestamp >= ago(24h)
  1. Sorguyu Test Etme: Belirtilen zaman aralığında beklenen sonuçları döndürdüğünden emin olmak için değiştirilen sorguyu çalıştırın.
  2. Uyarıları Güncelleştir: Değiştirilen sorguyu açık zaman filtresiyle kullanmak için günlük arama uyarılarınızı güncelleştirin. Bu, uyarılarınızın doğru verilere dayalı olmasını ve gereksiz geçmiş verileri içermemesini sağlar. ARG ve ADX sorgularınıza açık zaman filtreleri uygulayarak aşırı veri alma sorununu önleyebilir ve günlük arama uyarılarınızın doğru ve verimli olduğundan emin olabilirsiniz.

Sonraki adımlar