Azure İzleyici'de günlük verileri alım süresi

Azure İzleyici, her ay artan hızda terabaytlarce veri gönderen binlerce müşteriye hizmet veren yüksek ölçekli bir veri hizmetidir. Günlük verilerinin toplandıktan sonra kullanılabilir duruma gelmesi için gereken süre hakkında sık sık sorular vardır. Bu makalede, bu gecikme süresini etkileyen farklı faktörler açıklanmaktadır.

Tipik gecikme süresi

Gecikme süresi, verilerin izlenen sistemde oluşturulma süresini ve Azure İzleyici'de analiz için kullanılabilir duruma gelmesini ifade eder. Günlük verilerini almak için tipik gecikme süresi 20 saniye ile 3 dakika arasındadır. Ancak, belirli verilerin belirli gecikme süresi aşağıda açıklanan çeşitli faktörlere bağlı olarak değişir.

Gecikme süresini etkileyen faktörler

Belirli bir veri kümesinin toplam alım süresi aşağıdaki üst düzey alanlara ayrılabilir.

  • Aracı süresi - Bir olayı bulma, toplama ve ardından günlük kaydı olarak Azure İzleyici Günlükleri alma noktasına gönderme süresi. Çoğu durumda, bu işlem bir aracı tarafından işlenir. Ağ tarafından ek gecikme süresi ortaya çıkabilir.
  • İşlem hattı süresi - Alma işlem hattının günlük kaydını işleme süresi. Bu, olayın özelliklerini ayrıştırma ve hesaplanmış bilgi ekleme gibi işlemleri içerir.
  • Dizin oluşturma süresi - Azure İzleyici büyük veri deposuna günlük kaydı almak için harcanan süre.

Bu işlemde sunulan farklı gecikme süresiyle ilgili ayrıntılar aşağıda açıklanmıştır.

Aracı toplama gecikme süresi

Süre değişir

Aracılar ve yönetim çözümleri, bir sanal makineden veri toplamak için farklı stratejiler kullanır ve bu da gecikme süresini etkileyebilir. Bazı özel örnekler şunlardır:

Veri türü Toplama sıklığı Notlar
Windows olayları, syslog olayları ve performans ölçümleri hemen toplanır
Linux performans sayaçları 30 saniyelik aralıklarla yoklandı
IIS günlükleri ve metin günlükleri zaman damgası değiştikten sonra toplanır IIS günlükleri için bu, IIS'de yapılandırılan geçiş zamanlaması tarafından etkilenir.
Active Directory Çoğaltma çözümü Beş günde bir değerlendirme Aracı bu günlükleri yalnızca değerlendirme tamamlandığında toplar.
Active Directory Değerlendirme çözümü Active Directory altyapınızın haftalık değerlendirmesi Aracı bu günlükleri yalnızca değerlendirme tamamlandığında toplar.

Aracı karşıya yükleme sıklığı

1 dakikadan daha

Log Analytics aracısının basit olduğundan emin olmak için aracı günlükleri arabelleğe alır ve düzenli aralıklarla Azure İzleyici'ye yükler. Karşıya yükleme sıklığı, veri türüne bağlı olarak 30 saniye ile 2 dakika arasında değişir. Çoğu veri 1 dakikadan daha sonra karşıya yüklenir.

Değişir

Ağ koşulları, bu verilerin Azure İzleyici Günlükleri alım noktasına ulaşma gecikmesini olumsuz etkileyebilir.

Azure ölçümleri, kaynak günlükleri, etkinlik günlüğü

30 saniye ile 15 dakika

Azure verileri, işlenmek üzere Azure İzleyici Günlükleri alım noktasında kullanılabilir duruma gelmesi için ek süre ekler:

  • Azure platformu ölçümleri ölçüm veritabanında bir dakikadan daha küçük bir süre içinde kullanılabilir, ancak Azure İzleyici Günlükleri alım noktasına dışarı aktarılması 3 dakika daha sürer.
  • Kaynak günlükleri genellikle Azure hizmetine bağlı olarak 30-90 saniye ekler. Bazı Azure hizmetleri (özellikle Azure SQL Veritabanı ve Azure Sanal Ağ) şu anda günlüklerini 5 dakikalık aralıklarla rapor eder. Bunu daha da geliştirmek için çalışmalar devam ediyor. Ortamınızdaki bu gecikme süresini incelemek için aşağıdaki sorguya bakın
  • Azure İzleyici Günlüklerine göndermek için önerilen abonelik düzeyi tanılama ayarlarını kullandığınızda etkinlik günlüğü verileri 30 saniye içinde alınır. Ancak, bunun yerine eski tümleştirmeyi kullanmanız 10-15 dakika sürebilir.

Yönetim çözümleri koleksiyonu

Değişir

Bazı çözümler verilerini bir aracıdan toplamaz ve ek gecikme süresi getiren bir toplama yöntemi kullanabilir. Bazı çözümler, neredeyse gerçek zamanlı toplamaya çalışmadan düzenli aralıklarla veri toplar. Belirli örnekler şunlardır:

  • Microsoft 365 çözümü, şu anda neredeyse gerçek zamanlı gecikme süresi garantisi sağlamayan Yönetim Etkinliği API'sini kullanarak etkinlik günlüklerini yoklar.
  • Windows Analytics çözümleri (örneğin Güncelleştirme Uyumluluğu) verileri, çözüm tarafından günlük sıklıkta toplanır.

Toplama sıklığını belirlemek için her çözümün belgelerine bakın.

İşlem hattı işlem süresi

30 - 60 saniye

Veri alımı noktasında kullanılabilir olduğunda, verilerin sorgulanması 30-60 saniye daha sürer.

Günlük kayıtları Azure İzleyici işlem hattına alındıktan sonra ( _TimeReceived özelliğinde belirtildiği gibi), kiracı yalıtımını sağlamak ve verilerin kaybolmadığından emin olmak için geçici depolama alanına yazılır. Bu işlem genellikle 5-15 saniye ekler. Bazı yönetim çözümleri, veri akışı yapılırken verileri toplamak ve içgörüler türetmek için daha ağır algoritmalar uygular. Örneğin Ağ Performansı İzleme, gelen verileri 3 dakikalık aralıklarla toplayarak 3 dakikalık gecikme süresini etkili bir şekilde ekler. Gecikme süresi ekleyen bir diğer işlem de özel günlükleri işleyen işlemdir. Bazı durumlarda, bu işlem aracı tarafından dosyalardan toplanan günlüklere birkaç dakika gecikme süresi ekleyebilir.

Yeni özel veri türleri sağlama

Özel bir günlükten veya Veri Toplayıcı API'sinden yeni bir özel veri türü oluşturulduğunda, sistem ayrılmış bir depolama kapsayıcısı oluşturur. Ek süre gerektiren bu tek seferlik işlem yalnızca bu veri türüyle ilk kez karşılaşıldığında gerçekleştirilir.

Aşırı gerilim koruması

Genellikle 1 dakikadan kısa ama daha fazla olabilir

Azure İzleyici'nin en önemli önceliği müşteri verilerinin kaybolmadığından emin olmaktır. Bu nedenle sistemin veri dalgalanmaları için yerleşik koruması vardır. Bu, çok büyük bir yük altında bile sistemin çalışmaya devam edeceğinden emin olmak için arabellekleri içerir. Normal yük altında, bu denetimler bir dakikadan kısa bir süre ekler, ancak aşırı koşullarda ve hatalarda verilerin güvenli olduğundan emin olurken önemli bir süre ekleyebilirler.

Dizin oluşturma süresi

5 dakika veya daha kısa

Verilere anında erişim sağlamanın aksine analiz ve gelişmiş arama özellikleri sağlama arasında her büyük veri platformu için yerleşik bir denge vardır. Azure İzleyici, milyarlarca kayıt üzerinde güçlü sorgular çalıştırmanıza ve birkaç saniye içinde sonuç almanıza olanak tanır. Altyapı, veri alımı sırasında verileri önemli ölçüde dönüştürdüğü ve benzersiz kompakt yapılarda depoladığı için bu mümkün hale getirilir. Sistem, bu yapıları oluşturmak için yeterli sayıda veri bulunana kadar verileri arabelleğe alır. Günlük kaydı arama sonuçlarında görüntülenmeden önce bu işlemin tamamlanması gerekir.

Bu işlem şu anda veri hacmi düşük olduğunda yaklaşık 5 dakika sürer ancak daha yüksek veri hızlarında daha az zaman alır. Bu işlem uygun görünse de, bu işlem yüksek hacimli üretim iş yükleri için gecikme süresinin iyileştirilmesine olanak tanır.

Alım süresini denetleme

Alım süresi farklı koşullar altında farklı kaynaklar için farklılık gösterebilir. Ortamınızın belirli davranışlarını belirlemek için günlük sorgularını kullanabilirsiniz. Aşağıdaki tabloda, kaydın oluşturulduğu ve Azure İzleyici'ye gönderildiği farklı zamanları nasıl belirleyebileceğiniz belirtilmektedir.

Adım Özellik veya İşlev Yorumlar
Veri kaynağında oluşturulan kayıt TimeGenerated
Veri kaynağı bu değeri ayarlamazsa, _TimeReceived ile aynı zamana ayarlanır.
İşleme zamanında, Oluşturulan Zaman değeri 3 günden eskiyse satır bırakılır.
Azure İzleyici alım uç noktası tarafından alınan kayıt _TimeReceived Bu alan toplu işleme için iyileştirilmemiştir ve büyük veri kümelerini filtrelemek için kullanılmamalıdır.
Çalışma alanında depolanan ve sorgular için kullanılabilen kayıt ingestion_time() Yalnızca belirli bir zaman penceresinde alınan kayıtları filtrelemeniz gerekiyorsa ingestion_time() kullanmanız önerilir. Böyle bir durumda, daha büyük bir aralıkla TimeGenerated filtresi de eklemeniz önerilir.

Alım gecikmesi gecikmeleri

ingestion_time() işlevinin sonucunu TimeGenerated özelliğiyle karşılaştırarak belirli bir kaydın gecikme süresini ölçebilirsiniz. Bu veriler, alım gecikme süresinin nasıl davrandığını bulmak için çeşitli toplamalarla birlikte kullanılabilir. Büyük miktarda veriye ilişkin içgörüler elde etmek için alım süresinin yüzde birlik kısmını inceleyin.

Örneğin, aşağıdaki sorgu size önceki 8 saat içinde en yüksek alım süresine sahip bilgisayarları gösterir:

Heartbeat
| where TimeGenerated > ago(8h) 
| extend E2EIngestionLatency = ingestion_time() - TimeGenerated 
| extend AgentLatency = _TimeReceived - TimeGenerated 
| summarize percentiles(E2EIngestionLatency,50,95), percentiles(AgentLatency,50,95) by Computer 
| top 20 by percentile_E2EIngestionLatency_95 desc

Yukarıdaki yüzde birlik denetimler, gecikme süresindeki genel eğilimleri bulmak için uygundur. Gecikme süresindeki kısa süreli ani artışı belirlemek için en yüksek (max()) sayısını kullanmak daha etkili olabilir.

Belirli bir bilgisayarın alım süresinde belirli bir süre boyunca detaya gitmek istiyorsanız, önceki güne ait verileri de grafikte görselleştiren aşağıdaki sorguyu kullanın:

Heartbeat 
| where TimeGenerated > ago(24h) //and Computer == "ContosoWeb2-Linux"  
| extend E2EIngestionLatencyMin = todouble(datetime_diff("Second",ingestion_time(),TimeGenerated))/60 
| extend AgentLatencyMin = todouble(datetime_diff("Second",_TimeReceived,TimeGenerated))/60 
| summarize percentiles(E2EIngestionLatencyMin,50,95), percentiles(AgentLatencyMin,50,95) by bin(TimeGenerated,30m) 
| render timechart

Bilgisayar alımı süresini, ip adreslerine bağlı olarak bulundukları ülkeye/bölgeye göre göstermek için aşağıdaki sorguyu kullanın:

Heartbeat 
| where TimeGenerated > ago(8h) 
| extend E2EIngestionLatency = ingestion_time() - TimeGenerated 
| extend AgentLatency = _TimeReceived - TimeGenerated 
| summarize percentiles(E2EIngestionLatency,50,95),percentiles(AgentLatency,50,95) by RemoteIPCountry 

Aracıdan kaynaklanan farklı veri türlerinin farklı alım gecikme süresi olabilir, bu nedenle önceki sorgular diğer türlerle kullanılabilir. Çeşitli Azure hizmetlerinin alım süresini incelemek için aşağıdaki sorguyu kullanın:

AzureDiagnostics 
| where TimeGenerated > ago(8h) 
| extend E2EIngestionLatency = ingestion_time() - TimeGenerated 
| extend AgentLatency = _TimeReceived - TimeGenerated 
| summarize percentiles(E2EIngestionLatency,50,95), percentiles(AgentLatency,50,95) by ResourceProvider

Yanıt vermeyi durduran kaynaklar

Bazı durumlarda bir kaynak veri göndermeyi durdurabilir. Kaynağın veri gönderip göndermediğini anlamak için, standart TimeGenerated alanı tarafından tanımlanabilen en son kaydına bakın.

Aracı tarafından dakikada bir sinyal gönderildiğinden vm'nin kullanılabilirliğini denetlemek için Sinyal tablosunu kullanın. Son zamanlarda sinyal bildirmemiş etkin bilgisayarları listelemek için aşağıdaki sorguyu kullanın:

Heartbeat  
| where TimeGenerated > ago(1d) //show only VMs that were active in the last day 
| summarize NoHeartbeatPeriod = now() - max(TimeGenerated) by Computer  
| top 20 by NoHeartbeatPeriod desc 

Sonraki adımlar