Application Insights’tan telemetriyi dışarı aktarma

Telemetrinizi standart saklama süresinden daha uzun süre tutmak mı istiyorsunuz? Yoksa özel bir şekilde işlemek mi? Sürekli Dışarı Aktarma bu amaç için idealdir. Application Analizler portalında gördüğünüz olaylar Microsoft Azure JSON biçiminde depolama alanına aktarılabilir. Buradan verilerinizi indirebilir ve işlemek için ihtiyacınız olan kodu yazabilirsiniz.

Önemli

Sürekli dışarı aktarma kullanımdan kaldırıldı. Çalışma alanı tabanlı bir Uygulama Analizler kaynağına geçiş yaparken, telemetriyi dışarı aktarmak için tanılama ayarlarını kullanmanız gerekir.

Not

Sürekli dışarı aktarma yalnızca klasik Application Insights kaynakları için desteklenir. Çalışma alanı tabanlı Application Insights kaynaklarıtanılama ayarlarını kullanmalıdır.

Not

31 Mart 2025'te izleme anahtarı alımı desteği sona erecektir. İzleme anahtarı alımı çalışmaya devam edecek ancak bu özellik için güncelleştirme veya destek sunulmayacak. Yeni özelliklerden yararlanmak için bağlantı dizelerine geçiş.

Sürekli dışarı aktarmayı ayarlamadan önce göz önünde bulundurmanız gereken bazı alternatifler vardır:

Sürekli dışarı aktarma işlemi verilerinizi depolama alanına kopyaladıktan sonra, burada istediğiniz kadar kalabilir; her zamanki saklama süresi için Uygulama Analizler'nde kullanılabilir.

Desteklenen Bölgeler

Sürekli Dışarı Aktarma aşağıdaki bölgelerde desteklenir:

  • Güneydoğu Asya
  • Orta Kanada
  • Orta Hindistan
  • Kuzey Avrupa
  • Güney Birleşik Krallık
  • Doğu Avustralya
  • Doğu Japonya
  • Güney Kore - Orta
  • Orta Fransa
  • Doğu Asya
  • Batı ABD
  • Orta ABD
  • Doğu ABD 2
  • Orta Güney ABD
  • Batı ABD 2
  • Güney Afrika - Kuzey
  • Orta Kuzey ABD
  • Güney Brezilya
  • Kuzey İsviçre
  • Güneydoğu Avustralya
  • Batı Birleşik Krallık
  • Orta Batı Almanya
  • Batı İsviçre
  • Orta Avustralya 2
  • Orta BAE
  • Güneydoğu Brezilya
  • Orta Avustralya
  • Kuzey BAE
  • Doğu Norveç
  • Batı Japonya

Not

Sürekli Dışarı Aktarma, 23 Şubat 2021'den önce yapılandırılmışsa Doğu ABD ve Batı Avrupa'daki Uygulamalar için çalışmaya devam edecektir. Yeni Sürekli Dışarı Aktarma kuralları, uygulamanın ne zaman oluşturulduğuna bakılmaksızın Doğu ABD veya Batı Avrupa'daki herhangi bir uygulamada yapılandırılamaz.

Sürekli Dışarı Aktarma gelişmiş depolama yapılandırması

Sürekli Dışarı Aktarma aşağıdaki Azure depolama özelliklerini/yapılandırmalarını desteklemez :

Sürekli Dışarı Aktarma Oluşturma

Not

Bir uygulama günde 3 TB'tan fazla veri dışarı aktaramaz. Günde 3 TB'tan fazla dışarı aktarılırsa dışarı aktarma devre dışı bırakılır. Sınır olmadan dışarı aktarmak için tanılama ayarlarını temel alan dışarı aktarmayı kullanın.

  1. Sol taraftaki yapılandırma altında uygulamanızın Uygulama Analizler kaynağında Sürekli Dışarı Aktarma'yı açın ve Ekle'yi seçin:

  2. Dışarı aktarmak istediğiniz telemetri veri türlerini seçin.

  3. Verileri depolamak istediğiniz bir Azure depolama hesabı oluşturun veya seçin. Depolama fiyatlandırma seçenekleri hakkında daha fazla bilgi için resmi fiyatlandırma sayfasını ziyaret edin.

    Ekle, Hedefi Dışarı Aktar'ı Depolama hesabı seçin ve ardından yeni bir mağaza oluşturun veya mevcut bir mağazayı seçin.

    Uyarı

    Varsayılan olarak, depolama konumu Uygulama Analizler kaynağınızla aynı coğrafi bölgeye ayarlanır. Farklı bir bölgede depolarsanız aktarım ücretlerine tabi olabilirsiniz.

  4. Depolama alanında bir kapsayıcı oluşturun veya seçin.

Not

Dışarı aktarma işleminizi oluşturduktan sonra yeni alınan veriler Azure Blob depolama alanına akmaya başlar. Sürekli dışarı aktarma yalnızca sürekli dışarı aktarma etkinleştirildikten sonra oluşturulan/alınan yeni telemetriyi iletir. Sürekli dışarı aktarma etkinleştirilmeden önce mevcut olan veriler dışarı aktarılmaz ve sürekli dışarı aktarmayı kullanarak daha önce oluşturulmuş olan verileri geçmişe dönük olarak dışarı aktarmanın desteklenen bir yolu yoktur.

Veriler depolama alanında görüntülenmeden önce yaklaşık bir saat gecikme olabilir.

İlk dışarı aktarma işlemi tamamlandıktan sonra Azure Blob depolama kapsayıcınızda şu yapıyı bulacaksınız: (Bu yapı, topladığınız verilere bağlı olarak değişir.)

Adı Açıklama
Kullanılabilirlik Kullanılabilirlik web testlerini raporlar.
Olay TrackEvent() tarafından oluşturulan özel olaylar.
Özel durumlar Sunucuda ve tarayıcıda özel durumları raporlar.
İletiler TrackTrace ve günlük bağdaştırıcıları tarafından gönderilir.
Ölçümler Ölçüm API çağrıları tarafından oluşturulur.
PerformanceCounters Uygulama Analizler tarafından toplanan Performans Sayaçları.
İstekler TrackRequest tarafından gönderildi. Standart modüller, sunucuda ölçülen sunucu yanıt süresini bildirmek için istekleri kullanır.

Sürekli dışarı aktarmayı düzenlemek için

Sürekli dışarı aktarma'yı seçin ve düzenlenecek depolama hesabını seçin.

Sürekli dışarı aktarmayı durdurmak için

Dışarı aktarmayı durdurmak için Devre dışı bırak'ı seçin. Etkinleştir'i yeniden seçtiğinizde dışarı aktarma işlemi yeni verilerle yeniden başlatılır. Dışarı aktarma devre dışı bırakıldığı sırada portala gelen verileri almazsınız.

Dışarı aktarmayı kalıcı olarak durdurmak için silin. Bunu yaptığınızda verileriniz depolama alanından silinmez.

Dışarı aktarma ekleyemiyor veya değiştiremiyor musunuz?

  • Dışarı aktarmaları eklemek veya değiştirmek için Sahip, Katkıda Bulunan veya Application Insights Katkıda Bulunanı erişim izinleriniz olmalıdır. Roller hakkında bilgi edinin.

Hangi olayları alıyorsunuz?

Dışarı aktarılan veriler, istemci IP adresinden eklenen konum verileriyle uygulamanızdan aldığımız ham telemetridir.

Örnekleme tarafından atılan veriler dışarı aktarılan verilere dahil değildir.

Diğer hesaplanan ölçümler dahil değildir. Örneğin, ortalama CPU kullanımını dışarı aktarmayız, ancak ortalamanın hesaplandığı ham telemetriyi dışarı aktarırız.

Veriler, ayarladığınız kullanılabilirlik web testlerinin sonuçlarını da içerir.

Not

Örnekleme. Uygulamanız çok fazla veri gönderiyorsa, örnekleme özelliği oluşturulan telemetrinin yalnızca bir alt kümesini çalıştırabilir ve gönderebilir. Örnekleme hakkında daha fazla bilgi edinin.

Verileri inceleme

Depolama alanını doğrudan portalda inceleyebilirsiniz. En soldaki menüde "Azure hizmetleri" yazan giriş sayfasını seçin Depolama hesaplarını seçin, depolama hesabı adını seçin, genel bakış sayfasında hizmetler altındaki Bloblar'ı seçin ve son olarak kapsayıcı adını seçin.

Visual Studio'de Azure depolamayı incelemek için Görünüm, Bulut Gezgini'ne gidin. (Bu menü komutuna sahip değilseniz Azure SDK'yı yüklemeniz gerekir: Yeni Project iletişim kutusunu açın, Visual C#/Cloud'u genişletin ve .NET için Microsoft Azure SDK Al'ı seçin.)

Blob deponuzu açtığınızda, bir dizi blob dosyası içeren bir kapsayıcı görürsünüz. Uygulama Analizler kaynak adınızdan türetilen her dosyanın URI'si, izleme anahtarı, telemetri-türü/tarih/saat. (Kaynak adının tümü küçük harftir ve izleme anahtarı tireleri atlar.)

Inspect the blob store with a suitable tool

Tarih ve saat UTC'dir ve telemetrinin oluşturulduğu saat değil depoya ne zaman yatırıldığıdır. Bu nedenle, verileri indirmek için kod yazarsanız veriler arasında doğrusal olarak hareket edebilir.

Yolun biçimi aşağıdadır:

$"{applicationName}_{instrumentationKey}/{type}/{blobDeliveryTimeUtc:yyyy-MM-dd}/{ blobDeliveryTimeUtc:HH}/{blobId}_{blobCreationTimeUtc:yyyyMMdd_HHmmss}.blob"

Konum

  • blobCreationTimeUtc blob'un iç hazırlama depolama alanında oluşturulduğu zamandır
  • blobDeliveryTimeUtc blob'un dışarı aktarma hedef depolama alanına kopyalanma zamanıdır

Veri biçimi

  • Her blob, birden çok '\n' ile ayrılmış satır içeren bir metin dosyasıdır. Yaklaşık yarım dakikalık bir zaman aralığında işlenen telemetriyi içerir.

  • Her satır, istek veya sayfa görünümü gibi bir telemetri veri noktasını temsil eder.

  • Her satır biçimlendirilmemiş bir JSON belgesidir. Satırları görüntülemek istiyorsanız blobu Visual Studio açın ve EditAdvancedFormat>>File öğesini seçin:

    View the telemetry with a suitable tool

Süreler, 10 000 değer çizgisi = 1 ms olan değer değerlerindedir. Örneğin, bu değerler tarayıcıda istek göndermek için 1 ms, almak için 3 ms ve sayfayı tarayıcıda işlemek için 1,8 ms'lik bir zamanı gösterir:

"sendRequest": {"value": 10000.0},
"receiveRequest": {"value": 30000.0},
"clientProcess": {"value": 17970000.0}

Özellik türleri ve değerleri için ayrıntılı veri modeli başvurusu.

Verileri işleme

Küçük bir ölçekte verilerinizi ayırmak, elektronik tabloya okumak vb. için kod yazabilirsiniz. Örneğin:

private IEnumerable<T> DeserializeMany<T>(string folderName)
{
   var files = Directory.EnumerateFiles(folderName, "*.blob", SearchOption.AllDirectories);
   foreach (var file in files)
   {
      using (var fileReader = File.OpenText(file))
      {
         string fileContent = fileReader.ReadToEnd();
         IEnumerable<string> entities = fileContent.Split('\n').Where(s => !string.IsNullOrWhiteSpace(s));
         foreach (var entity in entities)
         {
            yield return JsonConvert.DeserializeObject<T>(entity);
         }
      }
   }
}

Daha büyük bir kod örneği için bkz. çalışan rolü kullanma.

Eski verilerinizi silme

Depolama kapasitenizi yönetmek ve gerekirse eski verileri silmek sizin sorumluluğunuzdadır.

Depolama anahtarınızı yeniden oluşturursanız...

Depolamanızın anahtarını değiştirirseniz sürekli dışarı aktarma çalışmayı durdurur. Azure hesabınızda bir bildirim görürsünüz.

Sürekli Dışarı Aktarma sekmesini açın ve dışarı aktarmanızı düzenleyin. Dışarı Aktarma Hedefi'ni düzenleyin ama aynı depolamayı seçili durumda bırakın. Onaylamak için Tamam’ı seçin.

Sürekli dışarı aktarma yeniden başlatılır.

Örnekleri dışarı aktarma

Daha büyük ölçeklerde HDInsight - Bulutta Hadoop kümelerini göz önünde bulundurun. HDInsight, büyük verileri yönetmek ve analiz etmek için çeşitli teknolojiler sağlar. Bunu, Application Analizler'dan dışarı aktarılan verileri işlemek için kullanabilirsiniz.

Q & A

  • Ama tek istediğim bir grafiğin tek seferlik indirilmesi.

    Evet, bunu yapabilirsiniz. Sekmenin üst kısmında Verileri Dışarı Aktar'ı seçin.

  • Dışarı aktarmayı ayarladım, ancak mağazamda veri yok.

    Dışarı aktarmayı ayarladıktan sonra Uygulama Analizler uygulamanızdan herhangi bir telemetri aldı mı? Yalnızca yeni veriler alırsınız.

  • Dışarı aktarmayı ayarlamaya çalıştım, ancak erişim reddedildi

    Hesap kuruluşunuza aitse, sahipler veya katkıda bulunanlar gruplarının üyesi olmanız gerekir.

  • Doğrudan kendi şirket içi mağazama aktarabilir miyim?

    Hayır, üzgünüm. Dışarı aktarma altyapımız şu anda yalnızca Azure depolama ile çalışmaktadır.

  • Mağazama koyduğun veri miktarının herhangi bir sınırı var mı?

    Hayır. Siz dışarı aktarmayı silene kadar verileri göndermeye devam edeceğiz. Blob depolama için dış sınırlara gelirsek duracağız, ancak bu çok büyük bir şey. Ne kadar depolama alanı kullandığınızı denetlemek size bağlı.

  • Depolamada kaç blob görmeli?

    • Dışarı aktarmayı seçtiğiniz her veri türü için dakikada bir yeni bir blob oluşturulur (veriler varsa).
    • Ayrıca, trafiğin yüksek olduğu uygulamalar için ek bölüm birimleri ayrılır. Bu durumda her birim dakikada bir blob oluşturur.
  • Anahtarı depolama alanıma yeniden oluşturdum veya kapsayıcının adını değiştirdim ve şimdi dışarı aktarma çalışmıyor.

    Dışarı aktarmayı düzenleyin ve dışarı aktarma hedefi sekmesini açın. Öncekiyle aynı depolama alanını seçili bırakın ve onaylamak için Tamam'ı seçin. Dışarı aktarma işlemi yeniden başlatılır. Değişiklik son birkaç gün içinde yapıldıysa verileri kaybetmezsiniz.

  • Dışarı aktarmayı duraklatabilir miyim?

    Evet. Devre dışı bırak'ı seçin.

Kod örnekleri

Tanılama ayarları tabanlı dışarı aktarma

Tanılama ayarları tabanlı dışarı aktarma, sürekli dışarı aktarmadan farklı bir şema kullanır. Ayrıca sürekli dışarı aktarmanın beğenmediği özellikleri de destekler:

  • Sanal ağlar, güvenlik duvarları ve özel bağlantılar içeren Azure depolama hesapları.
  • Event Hubs'a aktarın.

Tanılama ayarları tabanlı dışarı aktarmaya geçmek için:

  1. Geçerli sürekli dışarı aktarmayı devre dışı bırakın.
  2. Uygulamayı çalışma alanı tabanlı olarak geçirme.
  3. Tanılama ayarlarını dışarı aktarmayı etkinleştirin. Uygulama Analizler kaynağınızın içinden Tanılama ayarları > ekle tanılama ayarını seçin.