Azure İşlevlerini İzleme

Azure İşlevleri, işlevleri izlemek için Azure Uygulaması Analizler ile yerleşik tümleştirme sunar. Bu makalede, Azure tarafından izleme Azure İşlevleri için sağlanan izleme özelliklerine genel bir bakış sağlanır.

Uygulama Analizler günlük, performans ve hata verilerini toplar. Performans anomalilerini otomatik olarak algılayarak ve güçlü analiz araçlarıyla sorunları daha kolay tanılayabilir ve işlevlerinizin nasıl kullanıldığını daha iyi anlayabilirsiniz. Bu araçlar, işlevlerinizin performansını ve kullanılabilirliğini sürekli olarak geliştirmenize yardımcı olmak için tasarlanmıştır. Yerel işlev uygulaması proje geliştirme sırasında Uygulama Analizler bile kullanabilirsiniz. Daha fazla bilgi için bkz. Uygulama Analizler nedir?.

Uygulama Analizler izlemesi Azure İşlevleri yerleşik olduğundan, işlev uygulamanızı bir Application Analizler kaynağına bağlamak için geçerli bir izleme anahtarına ihtiyacınız vardır. İzleme anahtarı, Azure'da işlev uygulaması kaynağınızı oluştururken uygulama ayarlarınıza eklenir. İşlev uygulamanızda bu anahtar yoksa el ile ayarlayabilirsiniz.

Uygulama Analizler fiyatlandırması ve sınırları

Azure İşlevleri ile Uygulama Analizler tümleştirmesini ücretsiz olarak deneyebilir ve bu sayede ücretsiz olarak işlenen verilerin günlük sınırına erişebilirsiniz.

Geliştirme sırasında Uygulamalar Analizler etkinleştirirseniz, test sırasında bu sınıra gelebilirsiniz. Azure, günlük sınırınıza yaklaştığınızda portal ve e-posta bildirimleri sağlar. Bu uyarıları kaçırır ve sınıra ulaştıysanız Uygulama Analizler sorgularında yeni günlükler görünmez. Gereksiz sorun giderme süresini önlemek için sınıra dikkat edin. Daha fazla bilgi için bkz. Uygulama Analizler faturalama.

Önemli

Uygulama Analizler, yoğun yük olduğu zamanlarda tamamlanan yürütmelerde çok fazla telemetri verisi üretmenizi önleyebilecek bir örnekleme özelliğine sahiptir. Örnekleme varsayılan olarak etkindir. Eksik veriler gibi görünüyorsanız, örnekleme ayarlarını belirli bir izleme senaryonuza uyacak şekilde ayarlamanız gerekebilir. Daha fazla bilgi için bkz. Örneklemeyi yapılandırma.

İşlev uygulamanızda kullanılabilen Application Analizler özelliklerinin tam listesi, desteklenen Azure İşlevleri özellik için Uygulama Analizler'nde ayrıntılı olarak yer alır.

Uygulama Analizler tümleştirmesi

Genellikle işlev uygulamanızı oluştururken bir Application Analizler örneği oluşturursunuz. Bu durumda, tümleştirme için gereken izleme anahtarı zaten adlı APPINSIGHTS_INSTRUMENTATIONKEYbir uygulama ayarı olarak ayarlanmıştır. herhangi bir nedenle işlev uygulamanızda izleme anahtarı ayarlanmadıysa, Uygulama Analizler tümleştirmesini etkinleştirmeniz gerekir.

Önemli

Azure Kamu gibi bağımsız bulutlar, izleme anahtarı yerine Uygulama Analizler bağlantı dizesinin (APPLICATIONINSIGHTS_CONNECTION_STRING) kullanılmasını gerektirir. Daha fazla bilgi edinmek için bkz. APPLICATIONINSIGHTS_CONNECTION_STRING başvurusu.

Telemetri verilerini toplama

Uygulama Analizler tümleştirmesi etkinleştirildiğinde telemetri verileri bağlı Application Analizler örneğine gönderilir. Bu veriler İşlevler konağı tarafından oluşturulan günlükleri, işlev kodunuzdan yazılan izlemeleri ve performans verilerini içerir.

Not

İşlevlerinizdeki ve İşlevler ana bilgisayarınızdaki verilere ek olarak İşlevler ölçek denetleyicisinden de veri toplayabilirsiniz.

Günlük düzeyleri ve kategoriler

Uygulama kodunuzdan izlemeler yazdığınızda, izlemelere bir günlük düzeyi atamanız gerekir. Günlük düzeyleri, izlemelerinizden toplanan veri miktarını sınırlamanız için bir yol sağlar.

Her günlüğe bir günlük düzeyi atanır. Değer, göreli önem derecesini gösteren bir tamsayıdır:

LogLevel Kod Description
İzleme 0 En ayrıntılı iletileri içeren günlükler. Bu iletiler hassas uygulama verileri içerebilir. Bu iletiler varsayılan olarak devre dışıdır ve üretim ortamında hiçbir zaman etkinleştirilmemelidir.
Hata Ayıklama 1 Geliştirme sırasında etkileşimli araştırma için kullanılan günlükler. Bu günlükler öncelikle hata ayıklama için yararlı bilgiler içermelidir ve uzun vadeli bir değere sahip olmamalıdır.
Bilgi 2 Uygulamanın genel akışını izleyen günlükler. Bu günlükler uzun vadeli değere sahip olmalıdır.
Uyarı 3 Uygulama akışında anormal veya beklenmeyen bir olayı vurgulayan ancak uygulama yürütmenin durmasına neden olmayan günlükler.
Hata 4 Geçerli yürütme akışı bir hata nedeniyle durdurulduğunda vurgulanan günlükler. Bu hatalar, uygulama genelindeki bir hatayı değil geçerli etkinlikte bir hata olduğunu göstermelidir.
Kritik 5 Kurtarılamayan bir uygulamayı veya sistem kilitlenmesini ya da hemen ilgilenilmesi gereken yıkıcı bir hatayı açıklayan günlükler.
Hiçbiri 6 Belirtilen kategori için günlüğe kaydetmeyi devre dışı bırakır.

Host.json dosya yapılandırması, bir işlev uygulamasının Application Analizler'e ne kadar günlük gönderdiğini belirler.

Günlük düzeyleri hakkında daha fazla bilgi edinmek için bkz. Günlük düzeylerini yapılandırma.

Günlüğe kaydedilen öğeleri bir kategoriye atayarak, işlev uygulamanızdaki belirli kaynaklardan oluşturulan telemetri üzerinde daha fazla denetime sahip olursunuz. Kategoriler, toplanan veriler üzerinde analiz çalıştırmayı kolaylaştırır. İşlev kodunuzdan yazılan izlemeler, işlev adına göre tek tek kategorilere atanır. Kategoriler hakkında daha fazla bilgi edinmek için bkz. Kategorileri yapılandırma.

Özel telemetri verileri

C#, JavaScript ve Python'da özel telemetri verileri yazmak için Bir Uygulama Analizler SDK'sı kullanabilirsiniz.

Bağımlılıklar

application Analizler, İşlevler'in 2.x sürümünden başlayarak, belirli istemci SDK'larını kullanan bağlamalar için bağımlılıklarla ilgili verileri otomatik olarak toplar. Uygulama Analizler dağıtılmış izleme ve bağımlılık izleme şu anda yalıtılmış bir işlemde çalışan C# uygulamaları için desteklenmemekte. Uygulama Analizler aşağıdaki bağımlılıklarla ilgili verileri toplar:

  • Azure Cosmos DB
  • Azure Event Hubs
  • Azure Service Bus
  • Azure Depolama hizmetleri (Blob, Kuyruk ve Tablo)

kullanan SqlClient HTTP istekleri ve veritabanı çağrıları da yakalanır. Uygulama Analizler tarafından desteklenen bağımlılıkların tam listesi için bkz. otomatik olarak izlenen bağımlılıklar.

Application Analizler toplanan bağımlılık verilerinin uygulama haritasını oluşturur. Aşağıda, Kuyruk depolama çıkış bağlaması ile HTTP tetikleyici işlevinin uygulama haritası örneği verilmiştir.

Application map with dependency

Bağımlılıklar düzeyinde yazılır Information . Veya üzerini Warning filtrelerseniz bağımlılık verilerini görmezsiniz. Ayrıca, otomatik bağımlılık koleksiyonu kullanıcı olmayan bir kapsamda gerçekleşir. Bağımlılık verilerini yakalamak için düzeyin en azından Information konağınızdaki kullanıcı kapsamı (Function.<YOUR_FUNCTION_NAME>.User) dışında olarak ayarlandığından emin olun.

Otomatik bağımlılık verileri toplamaya ek olarak, özel bağımlılık bilgilerini günlüklere yazmak için dile özgü Uygulama Analizler SDK'larından birini de kullanabilirsiniz. Özel bağımlılıkları yazma örneği için aşağıdaki dile özgü örneklerden birine bakın:

Günlüklere yazma

Günlüklere ve kullandığınız API'lere yazma yönteminiz, işlev uygulaması projenizin diline bağlıdır.
İşlevlerinizden günlük yazma hakkında daha fazla bilgi edinmek için dilinize yönelik geliştirici kılavuzuna bakın.

Verileri çözümleme

Varsayılan olarak, işlev uygulamanızdan toplanan veriler Uygulama Analizler'de depolanır. Azure portal Application Analizler telemetri verilerinizin kapsamlı görselleştirmelerini sağlar. Hata günlüklerinde detaya gidebilir, olayları ve ölçümleri sorgulayabilirsiniz. Toplanan verilerinizi görüntüleme ve sorgulama hakkında temel örnekler de dahil olmak üzere daha fazla bilgi edinmek için bkz. Application Analizler'da telemetriyi analiz Azure İşlevleri.

Akış Günlükleri

Uygulama geliştirirken genellikle Azure'da çalışırken günlüklere yazılanları gerçek zamanlıya yakın bir şekilde görmek istersiniz.

İşlev yürütmeleriniz tarafından oluşturulan günlük verilerinin akışını görüntülemenin iki yolu vardır.

  • Yerleşik günlük akışı: App Service platformu, uygulama günlük dosyalarınızın akışını görüntülemenize olanak tanır. Bu akış, yerel geliştirme sırasında işlevlerinizin hatalarını ayıkladığınızda ve portalda Test sekmesini kullandığınızda görülen çıkışla eşdeğerdir. Tüm günlük tabanlı bilgiler görüntülenir. Daha fazla bilgi için bkz . Akış günlükleri. Bu akış yöntemi yalnızca tek bir örneği destekler ve Tüketim planında Linux üzerinde çalışan bir uygulamayla kullanılamaz.

  • Canlı Ölçüm Akışı: İşlev uygulamanız Application Analizler'a bağlandığında, Canlı Ölçüm Akışı'nı kullanarak günlük verilerini ve diğer ölçümleri Azure portal neredeyse gerçek zamanlı olarak görüntüleyebilirsiniz. Tüketim planında birden çok örnekte veya Linux'ta çalışan işlevleri izlerken bu yöntemi kullanın. Bu yöntem örneklenmiş verileri kullanır.

Günlük akışları hem portalda hem de çoğu yerel geliştirme ortamlarında görüntülenebilir. Günlük akışlarını etkinleştirmeyi öğrenmek için bkz. Azure İşlevleri'de akış yürütme günlüklerini etkinleştirme.

Tanılama günlükleri

Bu özellik önizleme aşamasındadır.

Uygulama Analizler telemetri verilerini uzun vadeli depolama alanına veya diğer analiz hizmetlerine dışarı aktarmanıza olanak tanır.

İşlevler, Azure İzleyici ile de tümleştirildiği için tanılama ayarlarını kullanarak Telemetri verilerini Azure İzleyici günlükleri de dahil olmak üzere çeşitli hedeflere gönderebilirsiniz. Daha fazla bilgi edinmek için bkz. Azure İzleyici Günlükleri ile Azure İşlevleri izleme.

Ölçek denetleyicisi günlükleri

Bu özellik önizleme aşamasındadır.

Azure İşlevleri ölçek denetleyicisi, uygulamanızın üzerinde çalıştığı Azure İşlevleri konağın örneklerini izler. Bu denetleyici, geçerli performansa göre örneklerin ne zaman ekleneceği veya kaldırılacağı hakkında kararlar verir. Ölçek denetleyicisinin işlev uygulamanız için aldığı kararları daha iyi anlamak için ölçek denetleyicisinin günlükleri Uygulama Analizler'a yaymasını sağlayabilirsiniz. Oluşturulan günlükleri başka bir hizmet tarafından analiz için Blob depolamada da depolayabilirsiniz.

Bu özelliği etkinleştirmek için işlev uygulaması ayarlarınıza adlı SCALE_CONTROLLER_LOGGING_ENABLED bir uygulama ayarı eklersiniz. Nasıl yapılacağını öğrenmek için bkz. Ölçek denetleyicisi günlüklerini yapılandırma.

Azure İzleyici ölçümleri

Application Analizler tarafından toplanan günlük tabanlı telemetri verilerine ek olarak, işlev uygulamasının Azure İzleyici Ölçümleri'nden nasıl çalıştığı hakkında da veri alabilirsiniz. Daha fazla bilgi edinmek için bkz. Azure İzleyici Ölçümünü Azure İşlevleri ile kullanma.

Sorun bildirme

İşlevler'de Uygulama Analizler tümleştirmesiyle ilgili bir sorun bildirmek veya öneride bulunmak veya istekte bulunmak için GitHub'de bir sorun oluşturun.

Sonraki adımlar

Daha fazla bilgi için aşağıdaki kaynaklara bakın: