Azure Spring Apps iş günlüklerini gerçek zamanlı olarak akışla aktarma (Önizleme)

Not

Temel, Standart ve Kurumsal planları, 3 yıllık kullanımdan kaldırma süresiyle Mart 2025 ortasından itibaren kullanımdan kaldırılacaktır. Azure Container Apps'e geçiş yapmanızı öneririz. Daha fazla bilgi için bkz . Azure Spring Apps kullanımdan kaldırma duyurusu.

Standart tüketim ve ayrılmış plan, altı ay sonra tamamen kapatılarak 30 Eylül 2024'den itibaren kullanımdan kaldırılacaktır. Azure Container Apps'e geçiş yapmanızı öneririz. Daha fazla bilgi için bkz . Azure Spring Apps Standart tüketimini ve ayrılmış planı Azure Container Apps'e geçirme.

Bu makale şunlar için geçerlidir:❌ Temel/Standart ✔️ Kurumsal

Bu makalede, sorun gidermeye yönelik işlerin gerçek zamanlı günlüklerini almak için Azure CLI'nin nasıl kullanılacağı açıklanmaktadır. Azure Spring Apps'te tanılama verilerini analiz etmek için tanılama ayarlarını da kullanabilirsiniz. Daha fazla bilgi için bkz . Tanılama ayarlarıyla günlükleri ve ölçümleri analiz etme. Akış günlükleri hakkında daha fazla bilgi için bkz . Azure Spring Apps uygulama konsolu günlüklerini gerçek zamanlı olarak akışla aktarma ve Azure Spring Apps yönetilen bileşen günlüklerini gerçek zamanlı olarak akışla aktarma.

Önkoşullar

Azure rolü atama

İşlerin günlüklerinin akışını yapmak için size uygun Azure rollerinin atanmış olması gerekir. Aşağıdaki tabloda gerekli rol ve bu role izin verilen işlemler listeleniyor:

Gerekli rol Operations
Azure Spring Apps İş Günlüğü OkuyucuSu Rolü Microsoft.AppPlatform/Spring/jobs/executions/logstream/action
Microsoft.AppPlatform/Spring/jobs/executions/listInstances/action

Azure portalını kullanarak bir Azure rolü atamak için aşağıdaki adımları kullanın:

  1. Azure portalını açın.

  2. Azure Spring Apps hizmet örneğinizi açın.

  3. Gezinti bölmesinde Erişim Denetimi (IAM) öğesini seçin.

  4. Erişim Denetimi (IAM) sayfasında Ekle'yi ve ardından Rol ataması ekle'yi seçin.

    Rol ataması ekle seçeneğinin vurgulandığı Erişim Denetimi (IAM) sayfasını gösteren Azure portalının ekran görüntüsü.

  5. Rol ataması ekle sayfasında, Ad listesinde hedef rolü arayıp seçin ve ardından İleri'yi seçin.

    Azure Spring Apps İş Günlüğü Okuyucusu Rolü adının vurgulandığı Rol ataması ekle sayfasını gösteren Azure portalının ekran görüntüsü.

  6. Üyeler'i seçin ve ardından kullanıcı adınızı arayın ve seçin.

  7. Gözden geçir + ata'yı seçin.

Kuyruk günlüklerini görüntüleme

Bu bölümde kuyruk günlükleri oluşturmak için Azure CLI'yi kullanma örnekleri verilmiştir.

Belirli bir örneğin kuyruk günlüklerini görüntüleme

Bir iş her tetiklendiğinde yeni bir iş yürütmesi oluşturulur. Ayrıca, işinizin paralellik ayarına bağlı olarak, birkaç çoğaltma veya örnek paralel olarak yürütülür.

Bir iş yürütmesindeki tüm örnekleri listelemek için aşağıdaki komutu kullanın:

az spring job execution instance list \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-instance-name> \
    --job <job-name> \
    --execution <job-execution-name>

Çıktıdan iş yürütmenin tüm örnek adlarını alabilirsiniz.

Belirli bir örneğin kuyruk günlüklerini görüntülemek için aşağıdaki örnekte gösterildiği gibi komutunu bağımsız değişkenle -i/--instance birlikte kullanınaz spring job logs:

az spring job logs \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-instance-name> \
    --name <job-name> \
    --execution <job-execution-name> \
    --instance <instance-name>

Tüm örneklerin kuyruk günlüklerini tek bir komutla görüntüleme

Tüm örneklerin kuyruk günlüklerini görüntülemek için, aşağıdaki örnekte gösterildiği gibi bağımsız değişkenini kullanın --all-instances . Örnek adı, her günlük satırının ön ekidir. Birden çok örnek olduğunda günlükler her örnek için toplu olarak yazdırılır. Bu şekilde bir örneğin günlükleri başka bir örneğin günlükleriyle kesişemez.

az spring job logs \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-instance-name> \
    --name <job-name> \
    --execution <job-execution-name> \
    --all-instances

Yeni günlükleri sürekli akışla aktarma

Varsayılan olarak, az spring job logs yalnızca konsola akışı yapılan mevcut günlükleri yazdırır ve ardından çıkar. Yeni günlüklerin akışını yapmak istiyorsanız bağımsız değişkenini -f/--follow ekleyin.

Anlık günlükleri takip etme seçeneğini kullandığınızda -f/--follow , iş günlükleri sürekli yazmadığı sürece Azure Spring Apps günlük akışı hizmeti sinyal günlüklerini istemciye dakikada bir gönderir. Sinyal günlüğü iletileri şu biçimi kullanır: 2023-12-18 09:12:17.745: No log from server.

Belirli bir örnek için akış günlükleri

Belirli bir örneğin örnek adlarını ve akış günlüklerini almak için aşağıdaki komutları kullanın:

az spring job execution instance list \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-instance-name> \
    --job <job-name> \
    --execution <job-execution-name>

az spring job logs \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-instance-name> \
    --name <job-name> \
    --execution <job-execution-name> \
    --instance <instance-name> \
    --follow

Tüm örnekler için akış günlükleri

Tüm örneklerin günlüklerinin akışını yapmak için aşağıdaki komutu kullanın:

az spring job logs \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-instance-name> \
    --name <job-name> \
    --execution <job-execution-name> \
    --all-instances \
    --follow

Bir iş yürütmesindeki birden çok örneğin günlüklerini akışla aktardığınızda, bir örneğin günlükleri başkalarının günlükleriyle kesiştirilir.

Sanal ağ ekleme örneğindeki akış günlükleri

Özel bir sanal ağda dağıtılan bir Azure Spring Apps örneği için günlük akışına varsayılan olarak özel bir ağdan erişebilirsiniz. Daha fazla bilgi için bkz . Azure Spring Apps'i sanal ağda dağıtma

Azure Spring Apps, ortak bir ağdan gerçek zamanlı iş günlüklerine erişmenizi de sağlar.

Not

Genel ağda günlük akışı uç noktasının etkinleştirilmesi, sanal ağınıza genel bir gelen IP ekler. Bu sizin için bir sorunsa dikkatli olun.

Genel ağda günlük akışı uç noktasını etkinleştirmek için aşağıdaki adımları kullanın:

  1. Sanal ağınızda dağıtılan Azure Spring Apps hizmet örneğini seçin ve ardından gezinti bölmesinde Ağ'ı seçin.

  2. Sanal ağ ekleme sekmesini seçin.

  3. Genel ağda günlük akışı uç noktasını etkinleştirmek için genel ağdaki Veri Düzlemi kaynaklarının durumunu Etkinleştir olarak değiştirin. Bu işlem birkaç dakika sürer.

    Sanal ağ ekleme sekmesinin seçili ve Sorun Giderme bölümünün vurgulandığı Ağ sayfasını gösteren Azure portalının ekran görüntüsü.

Günlük akışı genel uç noktasını etkinleştirdikten sonra, normal bir örneğe erişdiğiniz gibi iş günlüklerine genel bir ağdan erişebilirsiniz.

Günlük akışı genel uç noktasına trafiğin güvenliğini sağlama

İşler için günlük akışı, işlere yönelik bağlantıların kimliğini doğrulamak için Azure RBAC kullanır. Sonuç olarak, günlüklere yalnızca uygun rollere sahip kullanıcılar erişebilir.

Bir genel uç nokta kullanıma sunduğunuzda işlerinizin güvenliğini sağlamak için, bir ağ güvenlik grubuyla hizmetinize yönelik ağ trafiğini filtreleyerek uç noktanın güvenliğini sağlayın. Daha fazla bilgi için bkz . Öğretici: Azure portalını kullanarak ağ güvenlik grubuyla ağ trafiğini filtreleme. Ağ güvenlik grupları, farklı Azure kaynaklarına gelen ya da bu kaynaklardan dışarı giden ağ trafiğine izin veren veya bu trafiği reddeden güvenlik kuralları içerir. Her kural için kaynak, hedef, bağlantı noktası ve protokol belirtebilirsiniz.

Not

Günlük akışı genel uç noktasını etkinleştirdikten sonra sanal ağ ekleme örneğindeki iş günlüklerine İnternet'ten erişemiyorsanız, bu tür gelen trafiğe izin verip vermediğinize bakmak için ağ güvenlik grubunuzu denetleyin.

Aşağıdaki tabloda, önerdiğimiz temel bir kural örneği gösterilmektedir. Bir hizmetin hedef IP adresini almak için uç nokta <service-name>.private.azuremicroservices.io ile gibi nslookup komutları kullanabilirsiniz.

Öncelik Name Bağlantı noktası Protokol Kaynak Hedef Eylem
100 Kural adı 80 TCP İnternet Hizmet IP adresi İzin Ver
110 Kural adı 443 TCP İnternet Hizmet IP adresi İzin Ver

Sonraki adımlar