Application Gateway için tanılama günlükleri

Application Gateway günlükleri, bir kaynak ve işlemleriyle ilgili olaylar için ayrıntılı bilgi sağlar. Bu günlükler Erişim, Etkinlik, Güvenlik Duvarı ve Performans gibi olaylar için kullanılabilir (yalnızca V1 için). Günlüklerdeki ayrıntılı bilgiler, bir sorunu giderirken veya bu ham verileri kullanarak analiz panosu oluştururken yararlı olur.

Günlükler Application Gateway'in tüm kaynakları için kullanılabilir; ancak, bunları kullanmak için koleksiyonlarını istediğiniz bir depolama konumunda etkinleştirmeniz gerekir. Azure Uygulaması lication Gateway'de oturum açmak Azure İzleyici hizmeti tarafından etkinleştirilir. Önceden tanımlanmış sorgularını kullanmaya ve belirli günlük koşullarına göre uyarılar ayarlayabildiğiniz için Log Analytics çalışma alanını kullanmanızı öneririz.

Tanılama günlüklerinin türleri

Uygulama ağ geçitlerini yönetmek ve sorunlarını gidermek için Azure'da farklı günlük türlerini kullanabilirsiniz. Aşağıdaki türler hakkında daha fazla bilgi edinebilirsiniz:

  • Etkinlik günlüğü: Azure aboneliğinize gönderilen tüm işlemleri ve bunların durumunu görüntülemek için Azure etkinlik günlüklerini (eski adıyla işlem günlükleri ve denetim günlükleri) kullanabilirsiniz. Etkinlik günlüğü girişleri varsayılan olarak toplanır ve bunları Azure portalda görüntüleyebilirsiniz.
  • Erişim günlüğü: Application Gateway erişim desenlerini görüntülemek ve önemli bilgileri analiz etmek için bu günlüğü kullanabilirsiniz. Bu, çağıranın IP'sini, istenen URL'yi, yanıt gecikme süresini, dönüş kodunu ve baytları içeri ve dışarı aktarmayı içerir. Her 60 saniyede bir erişim günlüğü toplanır. Bu günlük Application Gateway örneği başına bir kayıt içerir. Application Gateway örneği instanceId özelliği tarafından tanımlanır.
  • Performans günlüğü: Application Gateway örneklerinin performansını görüntülemek için bu günlüğü kullanabilirsiniz. Bu günlük sunulan toplam istek sayısı, bayt cinsinden aktarım hızı, sunulan toplam istek sayısı, başarısız istek sayısı ve iyi durumda ve iyi durumda olmayan arka uç örneği sayısı gibi her örnek için performans bilgilerini yakalar. Performans günlüğü her 60 saniyede bir toplanır. Performans günlüğü yalnızca v1 SKU'su için kullanılabilir. v2 SKU'su için performans verileri için Ölçümler'i kullanın.
  • Güvenlik duvarı günlüğü: Web uygulaması güvenlik duvarıyla yapılandırılmış bir uygulama ağ geçidinin algılama veya önleme modu aracılığıyla günlüğe kaydedilen istekleri görüntülemek için bu günlüğü kullanabilirsiniz. Güvenlik duvarı günlükleri her 60 saniyede bir toplanır.

Not

Günlükler yalnızca Azure Resource Manager dağıtım modelinde dağıtılan kaynaklar için kullanılabilir. Klasik dağıtım modelindeki kaynaklar için günlükleri kullanamazsınız. İki modeli daha iyi anlamak için Resource Manager dağıtımını ve klasik dağıtımı anlama makalesine bakın.

Depolama konumları

Günlükleri tercih ettiğiniz konumda depolamak için aşağıdaki seçeneklere sahipsiniz.

  1. Log Analytic çalışma alanı: Önceden tanımlanmış sorguları, görselleştirmeleri kullanmaya ve belirli günlük koşullarına göre uyarılar ayarlamanıza olanak sağladığından önerilir.
  2. Azure Depolama hesabı: Depolama hesapları, günlükler daha uzun süre depolandığında ve gerektiğinde gözden geçirildiğinde günlükler için en iyi şekilde kullanılır.
  3. Azure Event Hubs: Olay hub'ları, kaynaklarınızla ilgili uyarılar almak için diğer güvenlik bilgileri ve olay yönetimi (SIEM) araçlarıyla tümleştirme için harika bir seçenektir.
  4. Azure İzleyici iş ortağı tümleştirmeleri

Azure İzleyici'nin Tanılama ayarları hedefleri hakkında daha fazla bilgi edinin.

PowerShell aracılığıyla günlüğe kaydetmeyi etkinleştirme

Etkinlik günlüğü tüm Kaynak Yöneticisi kaynakları için otomatik olarak etkinleştirilir. Bu günlükler aracılığıyla kullanılabilir verileri toplamaya başlamak için erişim ve performans günlüğünü etkinleştirmeniz gerekir. Günlüğü etkinleştirmek için aşağıdaki adımları kullanın:

  1. Günlük verilerinin depolandığı depolama hesabınızın kaynak kimliğini not edin. Bu değer şu biçimdedir: /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Depolama/storageAccounts/<storage hesabı adı>. Aboneliğinizdeki herhangi bir depolama hesabını kullanabilirsiniz. Bu bilgileri Azure portalda bulabilirsiniz.

    Screenshot of storage account endpoints

  2. Günlük kaydının etkinleştirildiği uygulama ağ geçidinizin kaynak kimliğini not edin. Bu değer şu biçimdedir: /subscriptions/subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Network/applicationGateways/<application gateway name>.< Bu bilgileri portalda bulabilirsiniz.

    Screenshot of app gateway properties

  3. Tanılama günlüğüne kaydetmeyi etkinleştirmek için aşağıdaki PowerShell cmdlet'ini kullanın:

    Set-AzDiagnosticSetting  -ResourceId /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Network/applicationGateways/<application gateway name> -StorageAccountId /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Storage/storageAccounts/<storage account name> -Enabled $true     
    

İpucu

Etkinlik günlükleri ayrı bir depolama hesabı gerektirmez. Depolama alanının erişim ve performans günlüğü kaydı için kullanılması durumunda hizmet ücreti tahsil edilir.

Azure portaldan günlüğe kaydetmeyi etkinleştirme

  1. Azure portalında kaynağınızı bulun ve Tanılama ayarları'nı seçin.

    Application Gateway için üç günlük mevcuttur:

    • Erişim günlüğü
    • Performans günlüğü
    • Güvenlik duvarı günlüğü
  2. Veri toplamaya başlamak için Tanılamayı aç'ı seçin.

    Turning on diagnostics

  3. Tanılama ayarları sayfasında tanılama günlükleriyle ilgili ayarlar bulunur. Bu örnekte Log Analytics günlükleri depolar. Tanılama günlüklerini kaydetmek için Event Hubs'ı veya depolama hesabını da kullanabilirsiniz.

    Starting the configuration process

  4. Ayarlar için bir ad yazın, ayarları onaylayın ve Kaydet'i seçin.

Etkinlik günlüğü

Azure, etkinlik günlüğünü varsayılan olarak oluşturur. Günlükler Azure olay günlükleri deposunda 90 gün boyunca korunur. Olayları ve etkinlik günlüğünü görüntüleme makalesini okuyarak bu günlükler hakkında daha fazla bilgi edinin.

Erişim günlüğü

Erişim günlüğü yalnızca önceki adımlarda açıklandığı gibi her Application Gateway örneğinde etkinleştirdiyseniz oluşturulur. Veriler, günlüğü etkinleştirdiğinizde belirttiğiniz depolama hesabında depolanır. Application Gateway'in her erişimi aşağıda gösterildiği gibi JSON biçiminde günlüğe kaydedilir.

Application Gateway ve WAF v2 SKU için

Not

TLS/TCP ara sunucusuyla ilgili bilgiler için veri başvurusu adresini ziyaret edin.

Value Açıklama
instanceId İstekte bulunan Application Gateway örneği.
clientIP Application Gateway'in anlık istemcisinin IP'sini. Uygulama ağ geçidinizi başka bir ara sunucu önlüyorsa, bu ön proxy'nin IP'sini görüntüler.
httpMethod İstek tarafından kullanılan HTTP yöntemi.
Requesturi Alınan isteğin URI'sini.
UserAgent HTTP isteği üst bilgisinden kullanıcı aracısı.
httpStatus Application Gateway'den istemciye döndürülen HTTP durum kodu.
httpVersion İsteğin HTTP sürümü.
receivedBytes Alınan paketin bayt cinsinden boyutu.
sentBytes Gönderilen paketin bayt cinsinden boyutu.
clientResponseTime İstemciye gönderilen ilk bayt ve son bayt uygulama ağ geçidi arasındaki zaman farkı (saniye cinsinden). Yanıtlar veya yavaş istemciler için Application Gateway'in işlem süresini belirlemede yararlı olur.
timeTaken İstemci isteğinin ilk baytının işlenmesi ve istemciye yanıt olarak son baytının gönderilmesi için geçen süre ( saniye cinsinden). Geçen Süre alanının genellikle istek ve yanıt paketlerinin ağ üzerinden seyahat etme zamanını içerdiğini unutmayın.
WAFEvaluationTime İsteğin WAF tarafından işlenmesi için gereken süre (saniye cinsinden).
WAFMode Değer Algılama veya Önleme olabilir
transactionId İstemciden alınan isteği ilişkilendirmek için benzersiz tanımlayıcı
sslEnabled Arka uç havuzlarıyla iletişimin TLS kullanıp kullanmadığı. Geçerli değerler açık ve kapalı.
sslCipher TLS iletişimi için kullanılan şifreleme paketi (TLS etkinse).
sslProtocol Kullanılan SSL/TLS protokolü (TLS etkinse).
serverRouted Application Gateway'in isteği yönlendirdiğini arka uç sunucusu.
serverStatus Arka uç sunucusunun HTTP durum kodu.
serverResponseLatency Yanıtın arka uç sunucusundan gecikme süresi (saniye olarak).
host İsteğin ana bilgisayar üst bilgisinde listelenen adres. Üst bilgi yeniden yazma kullanılarak yeniden yazılırsa, bu alan güncelleştirilmiş ana bilgisayar adını içerir
originalRequestUriWithArgs Bu alan özgün istek URL'sini içerir
Requesturi Bu alan, Application Gateway'de yeniden yazma işleminden sonraki URL'yi içerir
upstreamSourcePort Arka uç hedefine bağlantı başlatırken Application Gateway tarafından kullanılan kaynak bağlantı noktası
originalHost Bu alan özgün istek ana bilgisayar adını içerir
error_info 4xx ve 5xx hatasının nedeni. Başarısız istek için bir hata kodu görüntüler. Hata kodu bilgileri bölümünde daha fazla ayrıntı bulabilirsiniz.
Contenttype Uygulama ağ geçidi tarafından işlenen veya teslim edilen içerik veya veri türü
{
    "timeStamp": "2021-10-14T22:17:11+00:00",
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "listenerName": "HTTP-Listener",
    "ruleName": "Storage-Static-Rule",
    "backendPoolName": "StaticStorageAccount",
    "backendSettingName": "StorageStatic-HTTPS-Setting",
    "operationName": "ApplicationGatewayAccess",
    "category": "ApplicationGatewayAccessLog",
    "properties": {
        "instanceId": "appgw_2",
        "clientIP": "185.42.129.24",
        "clientPort": 45057,
        "httpMethod": "GET",
        "originalRequestUriWithArgs": "\/",
        "requestUri": "\/",
        "requestQuery": "",
        "userAgent": "Mozilla\/5.0 (Windows NT 6.1; WOW64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/52.0.2743.116 Safari\/537.36",
        "httpStatus": 200,
        "httpVersion": "HTTP\/1.1",
        "receivedBytes": 184,
        "sentBytes": 466,
        "clientResponseTime": 0,
        "timeTaken": 0.034,
        "WAFEvaluationTime": "0.000",
        "WAFMode": "Detection",
        "transactionId": "592d1649f75a8d480a3c4dc6a975309d",
        "sslEnabled": "on",
        "sslCipher": "ECDHE-RSA-AES256-GCM-SHA384",
        "sslProtocol": "TLSv1.2",
        "sslClientVerify": "NONE",
        "sslClientCertificateFingerprint": "",
        "sslClientCertificateIssuerName": "",
        "serverRouted": "52.239.221.65:443",
        "serverStatus": "200",
        "serverResponseLatency": "0.028",
        "upstreamSourcePort": "21564",
        "originalHost": "20.110.30.194",
        "host": "20.110.30.194",
        "error_info":"ERRORINFO_NO_ERROR",
        "contentType":"application/json"
    }
}

Not

İstemciIP değeri 127.0.0.1 olan erişim günlükleri, uygulama ağ geçidi örneklerinde çalışan bir iç güvenlik işleminden kaynaklanır. Bu günlük girdilerini güvenle yoksayabilirsiniz.

Application Gateway Standard ve WAF SKU (v1) için

Value Açıklama
instanceId İstekte bulunan Application Gateway örneği.
clientIP İstek için kaynak IP.
clientPort İstek için kaynak bağlantı noktası.
httpMethod İstek tarafından kullanılan HTTP yöntemi.
Requesturi Alınan isteğin URI'sini.
RequestQuery Sunucu Yönlendirmeli: İstek gönderilen arka uç havuzu örneği.
X-AzureApplicationGateway-LOG-ID: İstek için kullanılan bağıntı kimliği. Arka uç sunucularında trafik sorunlarını gidermek için kullanılabilir.
SUNUCU DURUMU: Application Gateway'in arka uçtan aldığı HTTP yanıt kodu.
UserAgent HTTP isteği üst bilgisinden kullanıcı aracısı.
httpStatus Application Gateway'den istemciye döndürülen HTTP durum kodu.
httpVersion İsteğin HTTP sürümü.
receivedBytes Alınan paketin bayt cinsinden boyutu.
sentBytes Gönderilen paketin bayt cinsinden boyutu.
timeTaken İsteğin işlenmesi ve yanıtının gönderilmesi için gereken süre (milisaniye cinsinden). Bu, Application Gateway'in bir HTTP isteğinin ilk baytını aldığı zamandan yanıt gönderme işleminin sona erdiği zamana kadar olan zaman aralığı olarak hesaplanır. Geçen Süre alanının genellikle istek ve yanıt paketlerinin ağ üzerinden seyahat etme zamanını içerdiğini unutmayın.
sslEnabled Arka uç havuzlarıyla iletişimin TLS/SSL kullanıp kullanmadığı. Geçerli değerler açık ve kapalı.
host İsteğin arka uç sunucusuna gönderildiği ana bilgisayar adı. Arka uç ana bilgisayar adı geçersiz kılınıyorsa, bu ad bunu yansıtır.
originalHost İsteğin istemciden Application Gateway tarafından alındığı ana bilgisayar adı.
{
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/PEERINGTEST/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "operationName": "ApplicationGatewayAccess",
    "time": "2017-04-26T19:27:38Z",
    "category": "ApplicationGatewayAccessLog",
    "properties": {
        "instanceId": "ApplicationGatewayRole_IN_0",
        "clientIP": "191.96.249.97",
        "clientPort": 46886,
        "httpMethod": "GET",
        "requestUri": "/phpmyadmin/scripts/setup.php",
        "requestQuery": "X-AzureApplicationGateway-CACHE-HIT=0&SERVER-ROUTED=10.4.0.4&X-AzureApplicationGateway-LOG-ID=874f1f0f-6807-41c9-b7bc-f3cfa74aa0b1&SERVER-STATUS=404",
        "userAgent": "-",
        "httpStatus": 404,
        "httpVersion": "HTTP/1.0",
        "receivedBytes": 65,
        "sentBytes": 553,
        "timeTaken": 205,
        "sslEnabled": "off",
        "host": "www.contoso.com",
        "originalHost": "www.contoso.com"
    }
}

Hata kodu bilgileri

Uygulama ağ geçidi isteği tamamlayamazsa, aşağıdaki neden kodlarından birini erişim günlüğünün error_info alanında depolar.

4XX Hataları (4xx hata kodları, istemcinin isteğiyle ilgili bir sorun olduğunu ve Application Gateway'in bunu karşılayadığını gösterir.)
ERRORINFO_INVALID_METHOD İstemci RFC uyumlu olmayan bir istek gönderdi. Olası nedenler: HTTP yöntemini kullanan istemci sunucu tarafından desteklenmiyor, yanlış yazılmış yöntem, uyumsuz HTTP protokolü sürümü vb.
ERRORINFO_INVALID_REQUEST Sunucu, yanlış söz dizimi nedeniyle isteği karşılamıyor.
ERRORINFO_INVALID_VERSION Uygulama ağ geçidi geçersiz veya desteklenmeyen http sürümüne sahip bir istek aldı.
ERRORINFO_INVALID_09_METHOD İstemci HTTP Protokolü sürüm 0.9 ile istek gönderdi.
ERRORINFO_INVALID_HOST "Ana Bilgisayar" üst bilgisinde sağlanan değer eksik, yanlış biçimlendirilmiş veya beklenen ana bilgisayar değeriyle eşleşmiyor (Temel dinleyici olmadığında ve Çok Siteli dinleyicilerin konak adlarından hiçbiri konakla eşleşmiyorsa).
ERRORINFO_INVALID_CONTENT_LENGTH content-Length üst bilgisinde istemci tarafından belirtilen içeriğin uzunluğu, istekteki içeriğin gerçek uzunluğuyla eşleşmiyor.
ERRORINFO_INVALID_METHOD_TRACE İstemci, uygulama ağ geçidi tarafından desteklenmeyen HTTP TRACE yöntemini gönderdi.
ERRORINFO_CLIENT_CLOSED_REQUEST İstemci, boşta kalma zaman aşımı süresi dolmadan önce uygulama ağ geçidiyle bağlantıyı kapattı. İstemci zaman aşımı süresinin uygulama ağ geçidi için boşta kalma zaman aşımı süresinden büyük olup olmadığını denetleyin.
ERRORINFO_REQUEST_URI_INVALID İstemcinin isteğinde sağlanan Tekdüzen Kaynak Tanımlayıcısı (URI) ile ilgili sorunu gösterir.
ERRORINFO_HTTP_NO_HOST_HEADER İstemci, Konak üst bilgisi olmadan bir istek gönderdi.
ERRORINFO_HTTP_TO_HTTPS_PORT İstemci bir HTTPS bağlantı noktasına düz bir HTTP isteği gönderdi.
ERRORINFO_HTTPS_NO_CERT İstemcinin Karşılıklı TLS kimlik doğrulaması sırasında geçerli ve düzgün yapılandırılmış bir TLS sertifikası göndermediğini gösterir.
5XX Hataları Açıklama
ERRORINFO_UPSTREAM_NO_LIVE Uygulama ağ geçidi gelen istekleri işlemek için etkin veya erişilebilir arka uç sunucusu bulamıyor
ERRORINFO_UPSTREAM_CLOSED_CONNECTION Arka uç sunucusu beklenmedik bir şekilde veya istek tam olarak işlenmeden önce bağlantıyı kapattı. Bunun nedeni arka uç sunucusunun sınırlarına ulaşması, kilitlenmesi vb. olabilir.
ERRORINFO_UPSTREAM_TIMED_OUT Sunucuyla kurulan TCP bağlantısı, bağlantı yapılandırılan zaman aşımı değerinden uzun sürdüğünden kapatıldı.

Performans günlüğü

Performans günlüğü yalnızca önceki adımlarda açıklandığı gibi her Application Gateway örneğinde etkinleştirdiyseniz oluşturulur. Veriler, günlüğü etkinleştirdiğinizde belirttiğiniz depolama hesabında depolanır. Performans günlüğü verileri 1 dakikalık aralıklarla oluşturulur. Yalnızca v1 SKU'su için kullanılabilir. v2 SKU'su için performans verileri için Ölçümler'i kullanın. Aşağıdaki veriler günlüğe kaydedilir:

Value Açıklama
instanceId Performans verilerinin oluşturulduğu Application Gateway örneği. Çok örnekli bir uygulama ağ geçidi için örnek başına bir satır vardır.
healthyHostCount Arka uç havuzundaki iyi durumdaki konakların sayısı.
unHealthyHostCount Arka uç havuzundaki iyi durumda olmayan konakların sayısı.
requestCount Sunulan istek sayısı.
gecikme süresi İsteklere hizmet eden örnekten arka uca yönelik isteklerin ortalama gecikme süresi (milisaniye cinsinden).
failedRequestCount Başarısız istek sayısı.
aktarım hızı Saniye başına bayt cinsinden ölçülen son günlükten bu yana ortalama aktarım hızı.
{
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "operationName": "ApplicationGatewayPerformance",
    "time": "2016-04-09T00:00:00Z",
    "category": "ApplicationGatewayPerformanceLog",
    "properties":
    {
        "instanceId":"ApplicationGatewayRole_IN_1",
        "healthyHostCount":"4",
        "unHealthyHostCount":"0",
        "requestCount":"185",
        "latency":"0",
        "failedRequestCount":"0",
        "throughput":"119427"
    }
}

Not

Gecikme süresi, HTTP isteğinin ilk baytının alındığı zamandan HTTP yanıtının son baytının gönderildiği zamana kadar hesaplanır. Application Gateway işlem süresinin yanı sıra arka uç için ağ maliyetinin yanı sıra arka ucun isteği işlemesi için gereken sürenin toplamıdır.

Güvenlik duvarı günlüğü

Güvenlik duvarı günlüğü yalnızca önceki adımlarda açıklandığı gibi her bir uygulama ağ geçidi için etkinleştirdiyseniz oluşturulur. Bu günlük, web uygulaması güvenlik duvarının bir uygulama ağ geçidinde yapılandırılmasını da gerektirir. Veriler, günlüğü etkinleştirdiğinizde belirttiğiniz depolama hesabında depolanır. Aşağıdaki veriler günlüğe kaydedilir:

Value Açıklama
instanceId Güvenlik duvarı verilerinin oluşturulduğu Application Gateway örneği. Çok örnekli bir uygulama ağ geçidi için örnek başına bir satır vardır.
clientIp İstek için kaynak IP.
clientPort İstek için kaynak bağlantı noktası.
Requesturi Alınan isteğin URL'si.
ruleSetType Kural kümesi türü. Kullanılabilir değer OWASP'dir.
ruleSetVersion Kullanılan kural kümesi sürümü. Kullanılabilir değerler 2.2.9 ve 3.0'dır.
ruleId Tetikleyen olayın kural kimliği.
ileti Tetikleme olayı için kullanıcı dostu ileti. Ayrıntılar bölümünde daha fazla ayrıntı sağlanır.
eylem İstekte gerçekleştirilen eylem. Kullanılabilir değerler Engellendi ve İzin Verildi (özel kurallar için), Eşleştirildi (kural isteğin bir bölümüyle eşleştiğinde) ve Algılandı ve Engellendi (WAF'nin algılama veya önleme modunda olmasına bağlı olarak her ikisi de zorunlu kurallar içindir).
Site Günlüğün oluşturulduğu site. Şu anda kurallar genel olduğundan yalnızca Genel listelenmiştir.
ayrıntılar Tetikleme olayının ayrıntıları.
details.message Kuralın açıklaması.
details.data İstekte kuralla eşleşen belirli veriler bulundu.
details.file Kuralı içeren yapılandırma dosyası.
details.line Olayı tetikleyen yapılandırma dosyasındaki satır numarası.
Ana bilgisayar adı Application Gateway'in ana bilgisayar adı veya IP adresi.
transactionId Aynı istekte oluşan birden çok kural ihlalini gruplandırmanıza yardımcı olan belirli bir işlemin benzersiz kimliği.
{
    "timeStamp": "2021-10-14T22:17:11+00:00",
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "operationName": "ApplicationGatewayFirewall",
    "category": "ApplicationGatewayFirewallLog",
    "properties": {
        "instanceId": "appgw_2",
        "clientIp": "185.42.129.24",
        "clientPort": "",
        "requestUri": "\/",
        "ruleSetType": "OWASP_CRS",
        "ruleSetVersion": "3.0.0",
        "ruleId": "920350",
        "message": "Host header is a numeric IP address",
        "action": "Matched",
        "site": "Global",
        "details": {
            "message": "Warning. Pattern match \\\"^[\\\\d.:]+$\\\" at REQUEST_HEADERS:Host .... ",
            "data": "20.110.30.194:80",
            "file": "rules\/REQUEST-920-PROTOCOL-ENFORCEMENT.conf",
            "line": "791"
        },
        "hostname": "20.110.30.194:80",
        "transactionId": "592d1649f75a8d480a3c4dc6a975309d",
        "policyId": "default",
        "policyScope": "Global",
        "policyScopeName": "Global"
    }
}

Etkinlik günlüğünü görüntüleme ve analiz etme

Aşağıdaki yöntemlerden birini kullanarak etkinlik günlüğü verilerini görüntüleyebilir ve analiz edebilirsiniz:

  • Azure araçları: Etkinlik günlüğü verilerini Azure PowerShell, Azure CLI, Azure REST API veya Azure portal üzerinden alabilirsiniz. Her yöntemle ilgili ayrıntılı adımlar Kaynak Yöneticisi etkinlik işlemleri makalesinde ayrıntılı bir şekilde anlatılmıştır.
  • Power BI: Power BI hesabınız yoksa ücretsiz oluşturabilirsiniz. Power BI şablon uygulamalarını kullanarak verilerinizi analiz edebilirsiniz.

Erişim, performans ve güvenlik duvarı günlüklerini görüntüleme ve analiz etme

Azure İzleyici günlükleri , Blob depolama hesabınızdan sayaç ve olay günlüğü dosyalarını toplayabilir. Günlüklerinizi analiz etmek için görselleştirmelere ve güçlü arama özelliklerine sahiptir.

Dilerseniz depolama hesabınıza bağlanabilir ve JSON erişim günlüklerini ve performans günlüklerini alabilirsiniz. İndirdiğiniz JSON dosyalarını CSV biçimine dönüştürebilir ve Excel, Power BI veya diğer veri görselleştirme araçlarında görüntüleyebilirsiniz.

İpucu

Visual Studio'yu ve C# dilinde sabitler ve değişkenler için değerleri değiştirmeyle ilgili temel kavramları biliyorsanız GitHub'daki günlük dönüştürücü araçlarını kullanabilirsiniz.

GoAccess aracılığıyla Erişim günlüklerini çözümleme

Application Gateway Erişim Günlükleri için popüler GoAccess günlük çözümleyicisini yükleyen ve çalıştıran bir Resource Manager şablonu yayımladık. GoAccess, Benzersiz Ziyaretçiler, İstenen Dosyalar, Konaklar, İşletim Sistemleri, Tarayıcılar, HTTP Durum kodları ve daha fazlası gibi değerli HTTP trafik istatistikleri sağlar. Diğer ayrıntılar için lütfen GitHub'daki Resource Manager şablon klasöründeki Benioku dosyasına bakın.

Sonraki adımlar