Çevrimiçi uç noktaları izleme

Azure Machine Learning, çevrimiçi uç noktaların ölçümlerini ve günlüklerini izlemek ve izlemek için Azure İzleyici ile tümleştirmeyi kullanır. Grafiklerdeki ölçümleri görüntüleyebilir, uç noktalar ve dağıtımlar arasında karşılaştırma yapabilir, Azure portalı panolarına sabitleyebilir, uyarıları yapılandırabilir, günlük tablolarından sorgulayabilir ve günlükleri desteklenen hedeflere gönderebilirsiniz. Kullanıcı kapsayıcılarından gelen olayları analiz etmek için Uygulama Analizler'ni de kullanabilirsiniz.

  • Ölçümler: İstek gecikme süresi, dakika başına istek sayısı, saniye başına yeni bağlantılar ve ağ baytları gibi uç nokta düzeyinde ölçümler için ayrıntıları dağıtım düzeyinde veya durum düzeyinde görmek için detaya gidebilirsiniz. CPU/GPU kullanımı ve bellek veya disk kullanımı gibi dağıtım düzeyindeki ölçümler de örnek düzeyinde detaya gidebilir. Azure İzleyici, bu ölçümlerin grafiklerde izlenmesine ve daha fazla analiz için panoların ve uyarıların ayarlanmasına olanak tanır.

  • Günlükler: Kusto sorgu söz dizimini kullanarak günlükleri sorgulayabileceğiniz Log Analytics çalışma alanına ölçüm gönderebilirsiniz. Ayrıca daha fazla işlem için Azure Depolama hesaplarına ve/veya Event Hubs'a ölçüm gönderebilirsiniz. Ayrıca, çevrimiçi uç noktayla ilgili olaylar, trafik ve konsol (kapsayıcı) günlükleri için ayrılmış günlük tablolarını kullanabilirsiniz. Kusto sorgusu, birden çok tablonun karmaşık bir şekilde analiz edilmesini ve birleştirilmesine olanak tanır.

  • Uygulama içgörüleri: Seçilen ortamlar, Application Analizler ile tümleştirmeyi içerir ve çevrimiçi dağıtım oluştururken bu tümleştirmeyi etkinleştirebilir veya devre dışı bırakabilirsiniz. Yerleşik ölçümler ve günlükler Application Analizler'a gönderilir ve daha fazla analiz için Uygulama Analizler'nin yerleşik özelliklerini (Canlı ölçümler, İşlem araması, Hatalar ve Performans gibi) kullanabilirsiniz.

Bu makalede şunları öğreneceksiniz:

  • Ölçümleri ve günlükleri görüntülemek ve izlemek için doğru yöntemi seçme
  • Çevrimiçi uç noktanız için ölçümleri görüntüleme
  • Ölçümleriniz için pano oluşturma
  • Ölçüm uyarısı oluşturma
  • Çevrimiçi uç noktanız için günlükleri görüntüleme
  • Ölçümleri ve günlükleri izlemek için Uygulama Analizler kullanma

Önkoşullar

  • Azure Machine Learning çevrimiçi uç noktasını dağıtma.
  • Uç noktada en az Okuyucu erişiminiz olmalıdır.

Ölçümler

Azure portalında çevrimiçi uç noktaların veya dağıtımların ölçüm sayfalarını görüntüleyebilirsiniz. Bu ölçüm sayfalarına erişmenin kolay bir yolu, özellikle bir uç nokta sayfasının Ayrıntılar sekmesindeki Azure Machine Learning stüdyosu kullanıcı arabiriminde bulunan bağlantılardır. Bu bağlantıların ardından uç nokta veya dağıtım için Azure portalındaki tam ölçümler sayfasına yönlendirilirsiniz. Alternatif olarak Azure portalına giderek uç nokta veya dağıtımın ölçümler sayfasını da arayabilirsiniz.

Ölçüm sayfalarına stüdyoda bulunan bağlantılar aracılığıyla erişmek için:

  1. Azure Machine Learning stüdyosu gidin.

  2. Sol gezinti çubuğunda Uç Noktalar sayfasını seçin.

  3. Adına tıklayarak bir uç nokta seçin.

  4. Uç noktanın Ölçümler sayfasını Azure portalında açmak için uç noktanın Öznitelikler bölümünde Ölçümleri görüntüle'yi seçin.

  5. Azure portalında dağıtımın ölçümler sayfasını açmak için kullanılabilir her dağıtımın bölümünde Ölçümleri görüntüle'yi seçin.

    A screenshot showing how to access the metrics of an endpoint and deployment from the studio UI.

Ölçümlere doğrudan Azure portalından erişmek için:

  1. Azure Portal’ında oturum açın.

  2. Çevrimiçi uç noktaya veya dağıtım kaynağına gidin.

    Çevrimiçi uç noktalar ve dağıtımlar, sahip oldukları kaynak grubuna giderek bulunabilen Azure Resource Manager (ARM) kaynaklarıdır. Machine Learning çevrimiçi uç noktası ve Machine Learning çevrimiçi dağıtımı kaynak türlerini arayın.

  3. Sol taraftaki sütunda Ölçümler'i seçin.

Mevcut ölçümler

Seçtiğiniz kaynağa bağlı olarak, gördüğünüz ölçümler farklı olacaktır. Ölçümlerin kapsamı çevrimiçi uç noktalar ve çevrimiçi dağıtımlar için farklı şekilde belirlenmiştir.

Uç nokta kapsamındaki ölçümler

  • İstek Gecikme Süresi
  • İstek Gecikme Süresi P50 (50. yüzdebirlik dilimde istek gecikmesi)
  • İstek Gecikme Süresi P90 (90. yüzdebirlik dilimde istek gecikmesi)
  • İstek Gecikme Süresi P95 (95. yüzdebirlik dilimde istek gecikme süresi)
  • Dakika başına istek sayısı
  • Saniye başına yeni bağlantı sayısı
  • Etkin bağlantı sayısı
  • Ağ bayt sayısı

Aşağıdaki boyutlara bölün:

  • Dağıtım
  • Durum Kodu
  • Durum Kodu Sınıfı

Örneğin, bir uç nokta altındaki farklı dağıtımların istek gecikme süresini karşılaştırmak için dağıtım boyutu boyunca bölebilirsiniz.

Bant genişliği azaltma

Yönetilen çevrimiçi uç noktalar için kota sınırları aşılırsa bant genişliği kısıtlanır. Sınırlar hakkında daha fazla bilgi için çevrimiçi uç noktaların sınırları makalesine bakın. İsteklerin kısıtlanmış olup olmadığını belirlemek için:

  • "Ağ baytları" ölçümünü izleme
  • Yanıt fragmanlarında şu alanlar bulunur: ms-azureml-bandwidth-request-delay-ms ve ms-azureml-bandwidth-response-delay-ms. Alanların değerleri, bant genişliği azaltmanın milisaniye cinsinden gecikmeleridir. Daha fazla bilgi için bkz . Bant genişliği sınırı sorunları.

Dağıtım kapsamındaki ölçümler

  • CPU Kullanım Yüzdesi
  • Dağıtım Kapasitesi (istenen örnek türünün örnek sayısı)
  • Disk Kullanımı
  • GPU Bellek Kullanımı (yalnızca GPU örnekleri için geçerlidir)
  • GPU Kullanımı (yalnızca GPU örnekleri için geçerlidir)
  • Bellek Kullanım Yüzdesi

Aşağıdaki boyuta bölün:

  • Örnek Kimliği

Örneğin, çevrimiçi dağıtım için farklı örnekler arasındaki CPU ve/veya bellek kullanımını karşılaştırabilirsiniz.

Panolar ve uyarılar oluşturma

Azure İzleyici, ölçümlere göre panolar ve uyarılar oluşturmanıza olanak tanır.

Pano oluşturma ve sorguları görselleştirme

Azure portalında özel panolar oluşturabilir ve çevrimiçi uç noktanızın ölçümleri de dahil olmak üzere birden çok kaynaktan ölçümleri görselleştirebilirsiniz. Pano oluşturma ve sorguları görselleştirme hakkında daha fazla bilgi için bkz. Günlük verilerini kullanan panolar ve uygulama verilerini kullanan panolar.

Uyarı oluşturma

Ayrıca, çevrimiçi uç noktanızdaki önemli durum güncelleştirmelerini size bildirmek için özel uyarılar da oluşturabilirsiniz:

  1. Ölçümler sayfasının sağ üst kısmında Yeni uyarı kuralı'nı seçin.

    Screenshot showing 'New alert rule' button surrounded by a red box.

  2. Uyarınızın ne zaman tetikleneceğini belirtmek için bir koşul adı seçin.

    Screenshot showing 'Configure signal logic' button surrounded by a red box.

  3. Uyarınız tetiklendiğinde ne olacağını belirtmek için Eylem grupları>ekle Eylem grupları oluştur'u seçin.

  4. Uyarınızı oluşturmayı tamamlamak için Uyarı kuralı oluştur'u seçin.

Daha fazla bilgi için bkz . Azure İzleyici uyarı kuralları oluşturma.

Günlükler

Çevrimiçi uç noktalar için etkinleştirilebilen üç günlük vardır:

  • AmlOnlineEndpointTrafficLog: İsteğinizin bilgilerini denetlemek istiyorsanız trafik günlüklerini etkinleştirmeyi seçebilirsiniz. Bazı durumlar aşağıdadır:

    • Yanıt 200 değilse, ne olduğunu görmek için "ResponseCodeReason" sütununun değerini denetleyin. Ayrıca, çevrimiçi uç nokta sorunlarını giderme makalesinin "HTTPS durum kodları" bölümünde nedenini de denetleyin.

    • Modelinizin yanıt kodunu ve yanıt nedenini "ModelStatusCode" ve "ModelStatusReason" sütunundan denetleyebilirsiniz.

    • Toplam süre, istek/yanıt süresi ve ağ azaltmanın neden olduğu gecikme gibi isteğin süresini denetlemek istiyorsunuz. Döküm gecikme süresini görmek için günlüklerden kontrol edebilirsiniz.

    • Son zamanlarda kaç istek veya başarısız istek olduğunu denetlemek istiyorsanız. Günlükleri de etkinleştirebilirsiniz.

  • AmlOnlineEndpointConsoleLog: Kapsayıcıların konsola çıkış yaptığı günlükleri içerir. Bazı durumlar aşağıdadır:

    • Kapsayıcı başlatılamazsa, konsol günlüğü hata ayıklama için yararlı olabilir.

    • Kapsayıcı davranışını izleyin ve tüm isteklerin doğru şekilde işlendiğine emin olun.

    • konsol günlüğüne istek kimlikleri yazın. Log Analytics çalışma alanında istek kimliği, AmlOnlineEndpointConsoleLog ve AmlOnlineEndpointTrafficLog'a katılarak, çevrimiçi uç noktanın ağ giriş noktasından kapsayıcıya bir isteği izleyebilirsiniz.

    • Bu günlüğü, modelin her isteği işlemek için gereken süreyi belirlemek için performans analizi için de kullanabilirsiniz.

  • AmlOnlineEndpointEventLog: Kapsayıcının yaşam döngüsüyle ilgili olay bilgilerini içerir. Şu anda aşağıdaki olay türleri hakkında bilgi sağlıyoruz:

    Veri Akışı Adı İleti
    Geri Alma Geri kapatma yeniden başlatma başarısız kapsayıcı
    Çekti "IMAGE_NAME>" kapsayıcı görüntüsü< makinede zaten var
    Öldürme Kapsayıcı çıkarımı-sunucusu başarısız canlılık yoklaması yeniden başlatılacak
    Oluşturulan Kapsayıcı görüntüsü getirici oluşturuldu
    Oluşturulan Kapsayıcı çıkarımı-sunucusu oluşturuldu
    Oluşturulan Kapsayıcı modeli bağlama oluşturuldu
    LivenessProbeFailed Canlılık araştırması başarısız oldu: <FAILURE_CONTENT>
    ReadinessProbeFailed Hazırlık araştırması başarısız oldu: <FAILURE_CONTENT>
    Başlarken Başlatılan kapsayıcı görüntüsü getiricisi
    Başlarken Kapsayıcı çıkarımı-sunucusu başlatıldı
    Başlarken Kapsayıcı modeli bağlama başlatıldı
    Öldürme Kapsayıcı çıkarımı-sunucusu durduruluyor
    Öldürme Kapsayıcı modeli bağlamayı durdurma

Günlükleri etkinleştirme/devre dışı bırakma

Önemli

Günlüğe kaydetme, Azure Log Analytics'i kullanır. Şu anda log analytics çalışma alanınız yoksa, Azure portalında Log Analytics çalışma alanı oluşturma adımlarını kullanarak bir çalışma alanı oluşturabilirsiniz.

  1. Azure portalında uç noktanızı içeren kaynak grubuna gidin ve uç noktayı seçin.

  2. Sayfanın sol tarafındaki İzleme bölümünde Tanılama ayarları'nı ve ardından Ayarlar ekle'yi seçin.

  3. Etkinleştirileceği günlük kategorilerini seçin, Log Analytics çalışma alanına gönder'i ve ardından kullanılacak Log Analytics çalışma alanını seçin. Son olarak, bir Tanılama ayarı adı girin ve Kaydet'i seçin.

    Screenshot of the diagnostic settings dialog.

    Önemli

    Log Analytics çalışma alanı bağlantısının etkinleştirilmesi bir saat kadar sürebilir. Sonraki adımlara devam etmeden önce bir saat bekleyin.

  4. Puanlama isteklerini uç noktaya gönderin. Bu etkinlik günlüklerde girdiler oluşturmalıdır.

  5. Çevrimiçi uç nokta özelliklerinden veya Log Analytics çalışma alanından ekranın sol tarafından Günlükler'i seçin.

  6. Otomatik olarak açılan Sorgular iletişim kutusunu kapatın ve ardından AmlOnlineEndpointConsoleLog'a çift tıklayın. Bu alanı görmüyorsanız Arama alanını kullanın.

    Screenshot showing the log queries.

  7. Çalıştır seçin.

    Screenshots of the results after running a query.

Örnek sorgular

Günlükleri görüntülerken Sorgular sekmesinde örnek sorgular bulabilirsiniz. Örnek sorguları bulmak için Çevrimiçi uç nokta arayın.

Screenshot of the example queries.

Günlük sütunu ayrıntıları

Aşağıdaki tablolarda her günlükte depolanan veriler hakkında ayrıntılar sağlanır:

AmlOnlineEndpointTrafficLog

Özellik Açıklama
Yöntem İstemciden istenen yöntem.
Yol İstemciden istenen yol.
SubscriptionId Çevrimiçi uç noktanın makine öğrenmesi abonelik kimliği.
AzureMLWorkspaceId Çevrimiçi uç noktanın makine öğrenmesi çalışma alanı kimliği.
AzureMLWorkspaceName Çevrimiçi uç noktanın makine öğrenmesi çalışma alanı adı.
EndpointName Çevrimiçi uç noktanın adı.
DeploymentName Çevrimiçi dağıtımın adı.
Protokol İsteğin protokolü.
ResponseCode İstemciye döndürülen son yanıt kodu.
ResponseCodeReason İstemciye döndürülen son yanıt kodu nedeni.
ModelStatusCode Modelden gelen yanıt durumu kodu.
ModelStatusReason Modelden gelen yanıt durumu nedeni.
RequestPayloadSize İstemciden alınan toplam bayt.
ResponsePayloadSize İstemciye geri gönderilen toplam bayt sayısı.
UserAgent açıklamalar da dahil olmak üzere isteğin kullanıcı aracısı üst bilgisi en fazla 70 karaktere yuvarlanır.
XRequestId Azure Machine Learning tarafından dahili izleme için oluşturulan istek kimliği.
XMSClientRequestId İstemci tarafından oluşturulan izleme kimliği.
TotalDurationMs İstek başlangıç zamanından istemciye geri gönderilen son yanıt baytından milisaniye cinsinden süre. İstemcinin bağlantısı kesildiyse, başlangıç zamanından istemci bağlantı kesme süresine kadar ölçür.
RequestDurationMs İstek başlangıç zamanından istemciden alınan isteğin son bayta kadar olan milisaniye cinsinden süre.
ResponseDurationMs İstek başlangıç zamanından modelden okunan ilk yanıt baytlarına kadar milisaniye cinsinden süre.
RequestThrottlingDelayMs Ağ azaltma nedeniyle istek veri aktarımında milisaniye cinsinden gecikme.
ResponseThrottlingDelayMs Ağ azaltma nedeniyle yanıt veri aktarımında milisaniye cinsinden gecikme.

AmlOnlineEndpointConsoleLog

Özellik Açıklama
TimeGenerated Günlüğün oluşturulduğu zaman damgası (UTC).
OperationName Günlük kaydıyla ilişkili işlem.
InstanceId Bu günlük kaydını oluşturan örneğin kimliği.
DeploymentName Günlük kaydıyla ilişkili dağıtımın adı.
ContainerName Günlüğün oluşturulduğu kapsayıcının adı.
İleti Günlüğün içeriği.

AmlOnlineEndpointEventLog

Özellik Açıklama
TimeGenerated Günlüğün oluşturulduğu zaman damgası (UTC).
OperationName Günlük kaydıyla ilişkili işlem.
InstanceId Bu günlük kaydını oluşturan örneğin kimliği.
DeploymentName Günlük kaydıyla ilişkili dağıtımın adı.
Veri Akışı Adı Olayın adı.
İleti Olayın içeriği.

Application Insights’ı Kullanma

Seçilen ortamlar, Uygulama Analizler ile tümleştirmeyi içerir ve çevrimiçi dağıtım oluştururken bu tümleştirmeyi etkinleştirebilir veya devre dışı bırakabilirsiniz. Yerleşik ölçümler ve günlükler Application Analizler'a gönderilir ve daha fazla analiz için Uygulama Analizler'nin yerleşik özelliklerini (Canlı ölçümler, İşlem araması, Hatalar ve Performans gibi) kullanabilirsiniz.

Daha fazla bilgi için bkz. Uygulama Analizler genel bakış.

Stüdyoda, yönetilen çevrimiçi uç noktanın üst düzey etkinlik izleyici graflarını görmek için çevrimiçi uç noktanın sayfasındaki İzleme sekmesini kullanabilirsiniz. İzleme sekmesini kullanmak için uç noktanızı oluştururken Application Insight tanılama ve veri toplamayı etkinleştir'i seçmeniz gerekir.

A screenshot of monitoring endpoint-level metrics in the studio.