Durum Bilgisi Olan Reliable Services için tanılama işlevi

Azure Service Fabric Durum Bilgisi Olan Güvenilir Hizmetler StatefulServiceBase sınıfı, hizmette hata ayıklamak, çalışma zamanının nasıl çalıştığını öğrenmek ve sorun gidermeye yardımcı olmak için kullanılabilecek EventSource olayları yayar.

EventSource olayları

Durum Bilgisi Olan Reliable Services StatefulServiceBase sınıfının EventSource adı "Microsoft-ServiceFabric-Services" şeklindedir. Bu olay kaynağındaki olaylar, Visual Studio'da hizmette hata ayıklanırken Tanılama Olayları penceresinde görüntülenir.

EventSource olaylarını toplamaya ve/veya görüntülemeye yardımcı olan araçlara ve teknolojilere örnek olarak PerfView, Azure Tanılama ve Microsoft TraceEvent Kitaplığı verilebilir.

Ekinlikler

Olay adı Olay Kimliği Level Olay açıklaması
StatefulRunAsyncInvocation 1 Bilgi Hizmet RunAsync görevi başlatıldığında yayılıyor
StatefulRunAsyncCancellation 2 Bilgi Hizmet RunAsync görevi iptal edildiğinde yayılıyor
StatefulRunAsyncCompletion 3 Bilgi Hizmet RunAsync görevi tamamlandığında yayılıyor
StatefulRunAsyncSlowCancellation 4 Uyarı Hizmet RunAsync görevinin iptal işleminin tamamlanması çok uzun sürdüğünde yayılan
StatefulRunAsyncFailure 5 Hata RunAsync hizmeti bir özel durum oluşturduğunda yayılan

Olayları yorumlama

StatefulRunAsyncInvocation, StatefulRunAsyncCompletion ve StatefulRunAsyncCancellation olayları, bir hizmetin yaşam döngüsünü ve hizmetin ne zaman başlatılıp iptal edileceğini veya ne zaman tamamladığını anlamak için hizmet yazıcısı için yararlıdır. Bu bilgiler, hizmet sorunlarını ayıklarken veya hizmet yaşam döngüsünü anlarken yararlı olabilir.

Hizmet yazıcıları, hizmetle ilgili sorunları gösterdiğinden StatefulRunAsyncSlowCancellation ve StatefulRunAsyncFailure olaylarına çok dikkat etmelidir.

StatefulRunAsyncFailure, Hizmet RunAsync() görevi bir özel durum oluşturduğunuzda yayılır. Genellikle, oluşan bir özel durum hizmetteki bir hatayı veya hatayı gösterir. Ayrıca, özel durum hizmetin başarısız olmasına neden olur, bu nedenle farklı bir düğüme taşınır. Bu işlem pahalı olabilir ve hizmet taşınırken gelen istekleri geciktirebilir. Hizmet yazarları özel durumun nedenini belirlemeli ve mümkünse azaltmalıdır.

StatefulRunAsyncSlowCancellation, RunAsync görevi için bir iptal isteğinin dört saniyeden uzun sürmesi durumunda yayılır. Bir hizmetin iptal işleminin tamamlanması çok uzun sürdüğünde, hizmetin başka bir düğümde hızlı bir şekilde yeniden başlatılabilmesini etkiler. Bu senaryo, hizmetin genel kullanılabilirliğini etkileyebilir.

Performans sayaçları

Reliable Services çalışma zamanı aşağıdaki performans sayacı kategorilerini tanımlar:

Kategori Açıklama
Service Fabric İşlem Çoğaltıcısı Azure Service Fabric İşlem Çoğaltıcısı'na özgü sayaçlar
Service Fabric TStore Azure Service Fabric TStore'a özgü sayaçlar

Service Fabric İşlem Çoğaltması, Reliable State Manager tarafından belirli bir çoğaltma kümesi içindeki işlemleri çoğaltmak için kullanılır.

Service Fabric TStore, Güvenilir Koleksiyonlar'da anahtar-değer çiftlerini depolamak ve almak için kullanılan bir bileşendir.

Windows işletim sisteminde varsayılan olarak kullanılabilen Windows Performans İzleyicisi uygulaması, performans sayacı verilerini toplamak ve görüntülemek için kullanılabilir. Azure Tanılama, performans sayacı verilerini toplamak ve Azure tablolarına yüklemek için başka bir seçenektir.

Performans sayacı örneği adları

Çok sayıda güvenilir hizmete veya güvenilir hizmet bölümüne sahip bir kümede çok sayıda işlem çoğaltması performans sayacı örneği olacaktır. Bu durum TStore performans sayaçları için de geçerli olmakla birlikte, kullanılan Reliable Dictionaries ve Reliable Queues sayısıyla da çarpılır. Performans sayacı örneği adları, performans sayacı örneğinin ilişkili olduğu TStore durumunda belirli bölümü, hizmet çoğaltmasını ve durum sağlayıcısını tanımlamaya yardımcı olabilir.

Service Fabric İşlem Çoğaltıcısı kategorisi

kategorisi Service Fabric Transactional Replicatoriçin, sayaç örneği adları aşağıdaki biçimdedir:

ServiceFabricPartitionId:ServiceFabricReplicaId

ServiceFabricPartitionId , performans sayacı örneğinin ilişkili olduğu Service Fabric bölüm kimliğinin dize gösterimidir. Bölüm kimliği bir GUID'dir ve dize gösterimi "D" biçim belirticisi ile oluşturulur Guid.ToString .

ServiceFabricReplicaId , güvenilir bir hizmetin belirli bir çoğaltmasıyla ilişkili kimliktir. Çoğaltma kimliği, benzersiz olduğundan emin olmak ve aynı bölüm tarafından oluşturulan diğer performans sayacı örnekleriyle çakışmayı önlemek için performans sayacı örneği adına eklenir. Çoğaltmalar ve bunların güvenilir hizmetlerdeki rolleri hakkında daha fazla ayrıntıya buradan ulaşabilirsiniz.

Aşağıdaki sayaç örneği adı, kategori altındaki Service Fabric Transactional Replicator bir sayaç için tipiktir:

00d0126d-3e36-4d68-98da-cc4f7195d85e:131652217797162571

Yukarıdaki örnekte Service 00d0126d-3e36-4d68-98da-cc4f7195d85e Fabric bölüm kimliğinin dize gösterimi ve 131652217797162571 çoğaltma kimliği yer alır.

Service Fabric TStore kategorisi

kategorisi Service Fabric TStoreiçin, sayaç örneği adları aşağıdaki biçimdedir:

ServiceFabricPartitionId:ServiceFabricReplicaId:StateProviderId_PerformanceCounterInstanceDifferentiator_StateProviderName

ServiceFabricPartitionId , performans sayacı örneğinin ilişkili olduğu Service Fabric bölüm kimliğinin dize gösterimidir. Bölüm kimliği bir GUID'dir ve dize gösterimi "D" biçim belirticisi ile oluşturulur Guid.ToString .

ServiceFabricReplicaId , güvenilir bir hizmetin belirli bir çoğaltmasıyla ilişkili kimliktir. Çoğaltma kimliği, benzersiz olduğundan emin olmak ve aynı bölüm tarafından oluşturulan diğer performans sayacı örnekleriyle çakışmayı önlemek için performans sayacı örneği adına eklenir. Çoğaltmalar ve bunların güvenilir hizmetlerdeki rolleri hakkında daha fazla ayrıntıya buradan ulaşabilirsiniz.

StateProviderId , güvenilir bir hizmet içindeki bir durum sağlayıcısıyla ilişkilendirilmiş kimliktir. Durum sağlayıcısı kimliği, bir TStore'un diğerinden ayırt etmek için performans sayacı örneği adına eklenir.

PerformanceCounterInstanceDifferentiator , durum sağlayıcısındaki bir performans sayacı örneğiyle ilişkilendirilmiş bir ayırt edici kimliktir. Bu farklılayıcı, benzersiz olduğundan emin olmak ve aynı durum sağlayıcısı tarafından oluşturulan diğer performans sayacı örnekleriyle çakışmayı önlemek için performans sayacı örneği adına eklenir.

StateProviderName , güvenilir bir hizmet içindeki bir durum sağlayıcısıyla ilişkilendirilmiş addır. Durum sağlayıcısı adı, kullanıcıların hangi durumu sağladığını kolayca belirleyebilmek için performans sayacı örneği adına eklenir.

Aşağıdaki sayaç örneği adı, kategori altındaki Service Fabric TStore bir sayaç için tipiktir:

00d0126d-3e36-4d68-98da-cc4f7195d85e:131652217797162571:142652217797162571_1337_urn:MyReliableDictionary/dataStore

Yukarıdaki örnekte Service 00d0126d-3e36-4d68-98da-cc4f7195d85e Fabric bölüm kimliğinin dize gösterimi, 131652217797162571 çoğaltma kimliği, 142652217797162571 durum sağlayıcısı kimliği ve 1337 performans sayacı örneği fark aracıdır. urn:MyReliableDictionary/dataStore adlı koleksiyon için verileri depolayan durum sağlayıcısının adıdır urn:MyReliableDictionary.

İşlem Çoğaltması performans sayaçları

Reliable Services çalışma zamanı aşağıdaki olayları kategori altında Service Fabric Transactional Replicator yayar

Sayaç adı Açıklama
Başlangıç Txn İşlemleri/sn Saniye başına oluşturulan yeni yazma işlemlerinin sayısı.
Txn İşlemleri/sn Saniyede güvenilir koleksiyonlarda gerçekleştirilen ekleme/güncelleştirme/silme işlemlerinin sayısı.
Günlük Boşaltma Baytları/sn saniye başına İşlem Çoğaltıcısı tarafından diske boşaltılan bayt sayısı
Kısıtlanmış İşlemler/sn Azaltma nedeniyle İşlem Çoğaltıcısı tarafından her saniye reddedilen işlem sayısı.
Ortalama İşlem ms/Commit Milisaniye cinsinden işlem başına ortalama işleme gecikmesi
Ortalama Boşaltma Gecikme Süresi (ms) İşlem Çoğaltıcısı tarafından başlatılan disk boşaltma işlemlerinin milisaniye cinsinden ortalama süresi

TStore performans sayaçları

Reliable Services çalışma zamanı aşağıdaki olayları kategori altında Service Fabric TStore yayar

Sayaç adı Açıklama
Öğe Sayısı Mağazadaki öğelerin sayısı.
Disk Boyutu Depo için denetim noktası dosyalarının bayt cinsinden toplam disk boyutu.
Denetim Noktası Dosyası Yazma Bayt/sn En son denetim noktası dosyası için saniye başına yazılan bayt sayısı.
Disk Aktarım Baytlarını Kopyala/sn Depo kopyası sırasında saniyede okunan (birincil çoğaltmada) veya yazılan (ikincil çoğaltmada) disk baytlarının sayısı.

Sonraki adımlar

PerfView'da EventSource sağlayıcıları