Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Gözlemlenebilirlik, dağıtılmış sistemin en önemli yönlerinden biridir. Bu, sistemin durumunu herhangi bir zamanda anlayabilmektir. Bunu günlüğe kaydetme, ölçümler ve dağıtılmış izleme gibi çeşitli yollarla gerçekleştirebilirsiniz.
Ağaç kesimi
Orleans tüm silo ve istemci logları için Microsoft.Extensions.Logging kullanır. ile Microsoft.Extensions.Logging uyumlu herhangi bir günlük sağlayıcısı kullanabilirsiniz. Uygulama kodunuz, örneğini almak için ILogger<TCategoryName> dayanır ve bunu kullanarak iletileri günlüğe kaydeder. Daha fazla bilgi için bkz. .NET'te oturum açma.
Ölçümler
Ölçümler, zaman içinde bildirilen sayısal ölçümlerdir. Bunları çoğunlukla bir uygulamanın durumunu izlemek ve uyarılar oluşturmak için kullanırsınız. Daha fazla bilgi için bkz . .NET'te ölçümler. Orleans ölçümleri toplamak için System.Diagnostics.Metrics API'lerini kullanır. Bu ölçümler, çeşitli izleme sistemlerine aktaran OpenTelemetry projesine sunulur.
Kod değişikliği yapmadan uygulamanızı izlemek için .NET tanılama aracını kullanın dotnet counters . Belirli bir Orleans için ActivitySource<ProcessName> sayaçlarını izlemek amacıyla, gösterildiği gibi dotnet counters monitor komutunu kullanın:
dotnet counters monitor -n <ProcessName> --counters Microsoft.Orleans
GPS Tracker örnek uygulamasını çalıştırdığınızıOrleans ve ayrı bir terminalde dotnet counters monitor komutuyla izlediğinizi düşünün. Aşağıdaki çıkış tipiktir:
Press p to pause, r to resume, q to quit.
Status: Running
[Microsoft.Orleans]
orleans-app-requests-latency-bucket (Count / 1 sec) 0
duration=10000ms 0
duration=1000ms 0
duration=100ms 0
duration=10ms 0
duration=15000ms 0
duration=1500ms 0
duration=1ms 2,530
duration=2000ms 0
duration=200ms 0
duration=2ms 0
duration=400ms 0
duration=4ms 0
duration=5000ms 0
duration=50ms 0
duration=6ms 0
duration=800ms 0
duration=8ms 0
duration=9223372036854775807ms 0
orleans-app-requests-latency-count (Count / 1 sec) 2,530
orleans-app-requests-latency-sum (Count / 1 sec) 0
orleans-catalog-activation-working-set 36
orleans-catalog-activations 38
orleans-consistent-ring-range-percentage-average 100
orleans-consistent-ring-range-percentage-local 100
orleans-consistent-ring-size 1
orleans-directory-cache-size 27
orleans-directory-partition-size 26
orleans-directory-ring-local-portion-average-percentage 100
orleans-directory-ring-local-portion-distance 0
orleans-directory-ring-local-portion-percentage 0
orleans-directory-ring-size 1,295
orleans-gateway-received (Count / 1 sec) 1,291
orleans-gateway-sent (Count / 1 sec) 2,582
orleans-messaging-processing-activation-data 0
orleans-messaging-processing-dispatcher-forwarded (Count / 1 0
orleans-messaging-processing-dispatcher-processed (Count / 1 2,543
Direction=Request,Status=Ok 2,582
orleans-messaging-processing-dispatcher-received (Count / 1 1,271
Context=Grain,Direction=Request 1,291
Context=None,Direction=Request 1,291
orleans-messaging-processing-ima-enqueued (Count / 1 sec) 5,113
Daha fazla bilgi için Performans sayaçlarını inceleme (dotnet-counters) bölümüne bakın.
Orleans Metre
Orleans ölçümleri toplamak için System.Diagnostics.Metrics API'lerini kullanır. Orleans Her ölçümü ağ, mesajlaşma, ağ geçidi gibi etki alanı merkezli endişelere göre kategorilere ayırır. Aşağıdaki alt bölümlerde ölçüm Orleans kullanımları açıklanmaktadır.
Ağ Kurma
Aşağıdaki tabloda, ağ katmanını izlemek Orleans için kullanılan ağ ölçümleri koleksiyonu gösterilmektedir.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-networking-sockets-closed |
Counter<T> | Kapatılan yuvaların sayısı. |
orleans-networking-sockets-opened |
Counter<T> | Açılmış soketlerin sayısı. |
Mesajlaşma
Aşağıdaki tabloda, mesajlaşma katmanını izlemek için kullanılan mesajlaşma ölçümlerinden oluşan bir koleksiyon gösterilmektedir Orleans .
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-messaging-sent-messages-size |
Histogram<T> | Gönderilen iletilerin bayt cinsinden boyutunu temsil eden histogram. |
orleans-messaging-received-messages-size |
Histogram<T> | Alınan iletilerin bayt cinsinden boyutunu temsil eden histogram. |
orleans-messaging-sent-header-size |
ObservableCounter<T> | Gönderilen üst bilgi baytlarının sayısını temsil eden gözlemlenebilir bir sayaç. |
orleans-messaging-received-header-size |
ObservableCounter<T> | Alınan üst bilgi baytlarının sayısını temsil eden gözlemlenebilir bir sayaç. |
orleans-messaging-sent-failed |
Counter<T> | Başarısız gönderilen iletilerin sayısı. |
orleans-messaging-sent-dropped |
Counter<T> | Gönderilmeyen iletilerin sayısı. |
orleans-messaging-processing-dispatcher-received |
ObservableCounter<T> | İletileri alan sayı dağıtıcısını temsil eden gözlemlenebilir bir sayaç. |
orleans-messaging-processing-dispatcher-processed |
ObservableCounter<T> | Sayı dağıtıcısı tarafından işlenen iletileri temsil eden gözlemlenebilir bir sayaç. |
orleans-messaging-processing-dispatcher-forwarded |
ObservableCounter<T> | İletici tarafından iletilen mesajların sayısını temsil eden gözlemlenebilir bir sayaç. |
orleans-messaging-processing-ima-received |
ObservableCounter<T> | Alınan gelen iletilerin sayısını temsil eden gözlemlenebilir bir sayaç. |
orleans-messaging-processing-ima-enqueued |
ObservableCounter<T> | Sıraya alınan gelen ileti sayısını temsil eden gözlemlenebilir bir sayaç. |
orleans-messaging-processing-activation-data |
ObservableGauge<T> | Tüm işleme etkinleştirme verilerini temsil eden gözlemlenebilir bir ölçer. |
orleans-messaging-pings-sent |
Counter<T> | Gönderilen ping sayısı. |
orleans-messaging-pings-received |
Counter<T> | Alınan ping sayısı. |
orleans-messaging-pings-reply-received |
Counter<T> | Alınan ping yanıtlarının sayısı. |
orleans-messaging-pings-reply-missed |
Counter<T> | Kaçırılan ping yanıtlarının sayısı. |
orleans-messaging-expired" |
Counter<T> | Süresi dolan iletilerin sayısı. |
orleans-messaging-rejected |
Counter<T> | Reddedilen iletilerin sayısı. |
orleans-messaging-rerouted |
Counter<T> | Yeniden yönlendirilen iletilerin sayısı. |
orleans-messaging-sent-local |
ObservableCounter<T> | Gönderilen yerel ileti sayısını temsil eden gözlemlenebilir bir sayaç. |
Geçit
Aşağıdaki tabloda, geçit katmanını izlemek için kullanılan geçit ölçerlerinin bir koleksiyonu gösterilmektedir Orleans .
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-gateway-connected-clients |
UpDownCounter<T> | Bağlı istemci sayısını temsil eden bir yukarı/aşağı sayacı. |
orleans-gateway-sent |
Counter<T> | Gönderilen ağ geçidi iletilerinin sayısı. |
orleans-gateway-received |
Counter<T> | Alınan ağ geçidi iletilerinin sayısı. |
orleans-gateway-load-shedding |
Counter<T> | Ağ geçidinin aşırı yüklenmesi nedeniyle reddedilen ağ geçidi (yük ayırma) iletilerinin sayısı. |
Çalışma zamanı
Aşağıdaki tabloda, çalışma zamanı katmanını izlemek için kullanılan çalışma zamanı ölçümleri koleksiyonu gösterilmektedir Orleans .
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-scheduler-long-running-turns |
Counter<T> | Zamanlayıcı içerisindeki uzun süreli devirlerin sayısı. |
orleans-runtime-total-physical-memory |
ObservableCounter<T> | Çalışma zamanının toplam bellek sayısını (MB cinsinden) Orleans temsil eden gözlemlenebilir bir sayaç. |
orleans-runtime-available-memory |
ObservableCounter<T> | Çalışma zamanı için Orleans kullanılabilir belleği (MB cinsinden) temsil eden gözlemlenebilir bir sayaç. |
Katalog
Aşağıdaki tabloda, Orleans katalog katmanını izlemek için kullanılan katalog ölçüm koleksiyonu gösterilmektedir.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-catalog-activations |
ObservableGauge<T> | Katalog etkinleştirmelerinin sayısını temsil eden gözlemlenebilir bir ölçer. |
orleans-catalog-activation-working-set |
ObservableGauge<T> | Çalışma kümesindeki etkinleştirme sayısını temsil eden gözlemlenebilir bir ölçer. |
orleans-catalog-activation-created |
Counter<T> | Oluşturulan etkinleştirmelerin sayısı. |
orleans-catalog-activation-destroyed |
Counter<T> | Yok edilen etkinleştirmelerin sayısı. |
orleans-catalog-activation-failed-to-activate |
Counter<T> | Başarısız olan aktivasyonların sayısı. |
orleans-catalog-activation-collections |
Counter<T> | Boşta etkinleştirme koleksiyonlarının sayısı. |
orleans-catalog-activation-shutdown |
Counter<T> | Kapatılma aktivasyonlarının sayısı. |
orleans-catalog-activation-non-existent |
Counter<T> | Gerçekleşmemiş etkinleştirmelerin sayısı. |
orleans-catalog-activation-concurrent-registration-attempts |
Counter<T> | Eş zamanlı etkinleştirme kayıt denemelerinin sayısı. |
Dizin
Aşağıdaki tabloda, dizin katmanını izlemek için kullanılan dizin ölçerleri koleksiyonu gösterilmektedir Orleans.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-directory-lookups-local-issued |
Counter<T> | Yapılan yerel sorgulamaların sayısı. |
orleans-directory-lookups-local-successes |
Counter<T> | Başarılı yerel aramaların sayısı. |
orleans-directory-lookups-full-issued |
Counter<T> | Verilen tam dizin aramalarının sayısı. |
orleans-directory-lookups-remote-sent |
Counter<T> | Gönderilen uzak dizin aramalarının sayısı. |
orleans-directory-lookups-remote-received |
Counter<T> | Alınan uzak dizin aramalarının sayısı. |
orleans-directory-lookups-local-directory-issued |
Counter<T> | Verilen yerel dizin aramalarının sayısı. |
orleans-directory-lookups-local-directory-successes |
Counter<T> | Yerel dizin başarılı aramalarının sayısı. |
orleans-directory-lookups-cache-issued |
Counter<T> | Verilen önbelleğe alınmış aramaların sayısı. |
orleans-directory-lookups-cache-successes |
Counter<T> | Önbelleğe alınmış başarılı aramaların sayısı. |
orleans-directory-validations-cache-received |
Counter<T> | Alınan dizin önbelleği doğrulamalarının sayısı. |
orleans-directory-partition-size |
ObservableGauge<T> | Dizin bölümü boyutunu temsil eden gözlemlenebilir bir ölçer. |
orleans-directory-cache-size |
ObservableGauge<T> | Dizin önbelleği boyutunu temsil eden gözlemlenebilir bir ölçer. |
orleans-directory-ring-size |
ObservableGauge<T> | Dizin halkası boyutunu gösteren gözlemlenebilir bir gösterge. |
orleans-directory-ring-local-portion-distance |
ObservableGauge<T> | Yerel dizin bölümüne ait halka aralığını temsil eden gözlemlenebilir bir ölçü. |
orleans-directory-ring-local-portion-percentage |
ObservableGauge<T> | Toplam aralığın yüzdesi olarak temsil edilen yerel dizine ait halka aralığını temsil eden gözlemlenebilir bir gösterge. |
orleans-directory-ring-local-portion-average-percentage |
ObservableGauge<T> | Her silonun sahip olduğu dizin halkası aralığının ortalama yüzdesini temsil eden gözlemlenebilir bir ölçer, dizin sahipliğinin ne kadar dengeli olduğunu gösterir. |
orleans-directory-registrations-single-act-issued |
Counter<T> | Verilen dizin tek etkinleştirme kayıtlarının sayısı. |
orleans-directory-registrations-single-act-local |
Counter<T> | Yerel dizin bölümü tarafından işlenen dizin tek etkinleştirme kayıtlarının sayısı. |
orleans-directory-registrations-single-act-remote-sent |
Counter<T> | Uzak dizin bölümüne gönderilen dizin tek etkinleştirme kayıtlarının sayısı. |
orleans-directory-registrations-single-act-remote-received |
Counter<T> | Uzak konaklardan alınan dizin tekli etkinleştirme kayıtlarının sayısı. |
orleans-directory-unregistrations-issued |
Counter<T> | Verilen dizin kaydı kaldırma sayısı. |
orleans-directory-unregistrations-local |
Counter<T> | Yerel dizin bölümü tarafından işlenen dizin silme işlemlerinin sayısı. |
orleans-directory-unregistrations-remote-sent |
Counter<T> | Uzak dizin bölümlerine gönderilen dizin kaydı iptalleri sayısı. |
orleans-directory-unregistrations-remote-received |
Counter<T> | Uzak konaklardan alınan dizin kaydı kaldırma sayısı. |
orleans-directory-unregistrations-many-issued |
Counter<T> | Verilen dizin çoklu etkinleştirme kayıt silmelerinin sayısı. |
orleans-directory-unregistrations-many-remote-sent |
Counter<T> | Uzak dizin bölümlerine gönderilen çoklu etkinleştirme kayıtlarının silinme sayısı. |
orleans-directory-unregistrations-many-remote-received |
Counter<T> | Uzak konaklardan alınan dizin çoklu etkinleştirme kayıt silmelerinin sayısı. |
Tutarlı çember
Aşağıdaki tabloda Orleans tutarlı halka katmanını izlemek için kullanılan tutarlı halka ölçerlerinin bir koleksiyonu gösterilmektedir.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-consistent-ring-size |
ObservableGauge<T> | Tutarlı halka boyutunu temsil eden gözlemlenebilir bir ölçer. |
orleans-consistent-ring-range-percentage-local |
ObservableGauge<T> | Tutarlı halka yerel yüzdesini temsil eden gözlemlenebilir bir ölçer. |
orleans-consistent-ring-range-percentage-average |
ObservableGauge<T> | Tutarlı ring ortalama yüzdesini temsil eden gözlemlenebilir bir ölçer. |
Watchdog
Aşağıdaki tablo, Orleans watchdog tabakasını izlemek için kullanılan watchdog ölçüm cihazlarının bir koleksiyonunu göstermektedir.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-watchdog-health-checks |
Counter<T> | watchdog sağlık kontrollerinin sayısı. |
orleans-watchdog-health-checks-failed |
Counter<T> | Watchdog sağlık kontrollerinin başarısız sayısı. |
Müşteri
Aşağıdaki tabloda, Orleans istemci katmanını izlemek için kullanılan istemci ölçümleri koleksiyonu gösterilmektedir.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-client-connected-gateways |
ObservableGauge<T> | Bağlı ağ geçidi istemcilerinin sayısını temsil eden gözlemlenebilir bir ölçer. |
Çeşitli
Aşağıdaki tabloda, çeşitli katmanları izlemek için kullanılan çeşitli ölçümler koleksiyonu gösterilmektedir.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-grains |
Counter<T> | Tane sayısını temsil eden bir sayı. |
orleans-system-targets |
Counter<T> | Sistem hedeflerinin sayısını temsil eden bir sayı. |
Uygulama istekleri
Aşağıdaki tabloda, uygulama isteği katmanını izlemek Orleans için kullanılan bir uygulama isteği ölçümleri koleksiyonu gösterilmektedir.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-app-requests-latency |
ObservableCounter<T> | Uygulama isteği gecikme süresini temsil eden gözlemlenebilir bir sayaç. |
orleans-app-requests-timedout |
ObservableCounter<T> | Zaman aşımına uğrayan uygulama isteklerini temsil eden gözlemlenebilir bir sayaç. |
Hatırlatmalar
Aşağıdaki tabloda, Orleans hatırlatıcı katmanını izlemek için kullanılan hatırlatıcı ölçerlerden oluşan bir koleksiyon gösterilmektedir.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-reminders-tardiness |
Histogram<T> | Anımsatıcının gecikme saniye sayısını gösteren histogram. |
orleans-reminders-active |
ObservableGauge<T> | Etkin anımsatıcı sayısını temsil eden gözlemlenebilir bir ölçer. |
orleans-reminders-ticks-delivered |
Counter<T> | Teslim edilen hatırlatma işaretlerinin sayısını temsil eden bir sayı. |
Depolama
Aşağıdaki tabloda, depolama katmanını izlemek için kullanılan depolama ölçümleri koleksiyonu gösterilmektedir Orleans .
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-storage-read-errors |
Counter<T> | Depolama okuma hatalarının sayısını temsil eden bir sayı. |
orleans-storage-write-errors |
Counter<T> | Depolama yazma hatalarının sayısını temsil eden bir sayı. |
orleans-storage-clear-errors |
Counter<T> | Depolama temizleme hatalarının sayısını temsil eden bir sayı. |
orleans-storage-read-latency |
Histogram<T> | Depolama okuma gecikme süresini milisaniye cinsinden temsil eden histogram. |
orleans-storage-write-latency |
Histogram<T> | Depolama yazma gecikme süresini milisaniye cinsinden temsil eden histogram. |
orleans-storage-clear-latency |
Histogram<T> | Depolama alanı net gecikme süresini milisaniye cinsinden temsil eden histogram. |
Akarsu
Aşağıdaki tabloda, Orleans akış katmanını izlemek için kullanılan bir akış ölçerler koleksiyonu gösterilmektedir.
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-streams-pubsub-producers-added |
Counter<T> | Akış pubsub üreticilerinin sayısı eklendi. |
orleans-streams-pubsub-producers-removed |
Counter<T> | Akış pubsub üreticilerinin sayısı kaldırıldı. |
orleans-streams-pubsub-producers |
Counter<T> | Akış pubsub yapımcılarının sayısı. |
orleans-streams-pubsub-consumers-added |
Counter<T> | Akış pubsub tüketicilerinin sayısı eklendi. |
orleans-streams-pubsub-consumers-removed |
Counter<T> | Akış pubsub tüketicilerinin sayısı kaldırıldı. |
orleans-streams-pubsub-consumers |
Counter<T> | Yayın akışı pubsub tüketicilerinin sayısı. |
orleans-streams-persistent-stream-pulling-agents |
ObservableGauge<T> | Kalıcı akış çekme aracılarının sayısını temsil eden gözlemlenebilir bir ölçer. |
orleans-streams-persistent-stream-messages-read |
Counter<T> | Okunan kalıcı akış iletilerinin sayısı. |
orleans-streams-persistent-stream-messages-sent |
Counter<T> | Gönderilen kalıcı akış iletilerinin sayısı. |
orleans-streams-persistent-stream-pubsub-cache-size |
ObservableGauge<T> | Sürekli akış pubsub önbellek boyutunu temsil eden gözlemlenebilir bir ölçer. |
orleans-streams-queue-initialization-failures |
Counter<T> | Steam kuyruğu başlatma hatalarının sayısı. |
orleans-streams-queue-initialization-duration |
Counter<T> | Steam kuyruğu başlatma olaylarının sayısı. |
orleans-streams-queue-initialization-exceptions |
Counter<T> | Steam kuyruk başlatma istisnalarının sayısı. |
orleans-streams-queue-read-failures |
Counter<T> | Steam kuyruğunun okuma hatalarının sayısı. |
orleans-streams-queue-read-duration |
Counter<T> | Buhar kuyruğu okuma oluşumlarının sayısı. |
orleans-streams-queue-read-exceptions |
Counter<T> | Steam kuyruğu okuma hatası sayısı. |
orleans-streams-queue-shutdown-failures |
Counter<T> | Buhar kuyruğu kapatma hatalarının sayısı. |
orleans-streams-queue-shutdown-duration |
Counter<T> | Buhar kuyruğu kapatma oluşumlarının sayısı. |
orleans-streams-queue-shutdown-exceptions |
Counter<T> | Buhar kuyruğu kapatma özel durumlarının sayısı. |
orleans-streams-queue-messages-received |
ObservableCounter<T> | Alınan akış kuyruğu iletilerinin sayısını temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-queue-oldest-message-enqueue-age |
ObservableGauge<T> | Sıradaki en eski iletinin yaşını temsil eden gözlemlenebilir bir ölçer. |
orleans-streams-queue-newest-message-enqueue-age |
ObservableGauge<T> | En yeni sıraya alınan mesajın yaşını temsil eden gözlemlenebilir bir gösterge. |
orleans-streams-block-pool-total-memory |
ObservableCounter<T> | Bayt cinsinden akış blok havuzu toplam belleğini temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-block-pool-available-memory |
ObservableCounter<T> | Kullanılabilir akış bloğu havuzunu bayt cinsinden temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-block-pool-claimed-memory |
ObservableCounter<T> | Bayt cinsinden bellek talep edilen akış bloğu havuzunu temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-block-pool-released-memory |
ObservableCounter<T> | Akış bloğu havuzunu temsil eden gözlemlenebilir bir sayaç, belleği bayt cinsinden serbest bıraktı. |
orleans-streams-block-pool-allocated-memory |
ObservableCounter<T> | Bayt cinsinden tahsis edilen akış bloğu havuzunu temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-queue-cache-size |
ObservableCounter<T> | Bayt cinsinden akış kuyruğu önbellek boyutunu temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-queue-cache-length |
ObservableCounter<T> | Akış kuyruğu uzunluğunu temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-queue-cache-messages-added |
ObservableCounter<T> | Eklenen akış kuyruğu iletilerini temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-queue-cache-messages-purged |
ObservableCounter<T> | Akış kuyruğu iletilerinin temizlenmiş olduğunu gösteren gözlemlenebilir bir sayaç. |
orleans-streams-queue-cache-memory-allocated |
ObservableCounter<T> | Akış kuyruğu için ayrılan belleği temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-queue-cache-memory-released |
ObservableCounter<T> | Yayımlanan akış kuyruğu belleğini temsil eden gözlemlenebilir bir sayaç. |
orleans-streams-queue-cache-oldest-to-newest-duration |
ObservableGauge<T> | En eskiden en yeni akış kuyruğu önbelleğine kadar olan süreyi temsil eden gözlemlenebilir bir ölçer. |
orleans-streams-queue-cache-oldest-age |
ObservableGauge<T> | Önbelleğe alınmış en eski iletinin yaşını temsil eden gözlemlenebilir bir ölçer. |
orleans-streams-queue-cache-pressure |
ObservableGauge<T> | Akış kuyruğu önbelleği üzerindeki baskıyı temsil eden gözlemlenebilir bir ölçer. |
orleans-streams-queue-cache-under-pressure |
ObservableGauge<T> | Akış kuyruğu önbelleğinin baskı altında olup olmadığını gösteren gözlemlenebilir bir ölçer. |
orleans-streams-queue-cache-pressure-contribution-count |
ObservableCounter<T> | Akış kuyruğu önbellek baskısı katkılarını temsil eden gözlemlenebilir bir sayaç. |
İşlemler
Aşağıdaki tabloda, işlem katmanını izlemek için kullanılan işlem ölçümlerinin bir koleksiyonu gösterilmektedir Orleans .
| Ölçüm adı | Türü | Açıklama |
|---|---|---|
orleans-transactions-started |
ObservableCounter<T> | Başlatılan işlemlerin sayısını temsil eden gözlemlenebilir bir sayaç. |
orleans-transactions-successful |
ObservableCounter<T> | Başarılı işlemlerin sayısını temsil eden gözlemlenebilir bir sayaç. |
orleans-transactions-failed |
ObservableCounter<T> | Başarısız işlemlerin sayısını temsil eden gözlemlenebilir bir sayaç. |
orleans-transactions-throttled |
ObservableCounter<T> | Kısıtlanmış işlemlerin sayısını temsil eden gözlemlenebilir bir sayaç. |
Ölçüm verilerini dışa aktarma
ile Orleansçeşitli üçüncü taraf ölçüm sağlayıcıları kullanılabilir. OpenTelemetry Protocol (OTLP) kullanarak ölçümleri uygulamanızdan dışarı aktarın. Birçok gözlemlenebilirlik platformu OTLP verilerini doğrudan veya Prometheus, Grafana ve Azure İzleyici gibi bir OpenTelemetry Toplayıcısı aracılığıyla kullanır.
ile OrleansOTLP kullanarak ölçümleri dışarı aktarmak için OpenTelemetry.Exporter.OpenTelemetryProtocol NuGet paketini yükleyin ve aşağıdaki IServiceCollection uzantı yöntemini çağırın:
builder.Services.AddOpenTelemetry()
.WithMetrics(metrics =>
{
metrics
.AddOtlpExporter()
.AddMeter("Microsoft.Orleans");
});
AddOtlpExporter yöntemi, OTLP ihracatçısının builder öğesine eklenmesini sağlar.
Orleans, birçok Meter'e özel ölçüm için "Microsoft.Orleans" örnekler oluşturmak amacıyla, Counter<T> adlı bir Orleans kullanır.
AddMeter metodunu kullanarak abone olunacak ölçümün adını belirtin, bu durumda "Microsoft.Orleans".
OTLP verme uç noktasını ve diğer seçenekleri gerektiği gibi yapılandırabilirsiniz. Örneğin:
builder.Services.AddOpenTelemetry()
.WithMetrics(metrics =>
{
metrics
.AddOtlpExporter(options =>
{
options.Endpoint = new Uri("http://localhost:4317");
})
.AddMeter("Microsoft.Orleans");
});
Uyarı
Varsayılan OTLP dışarı aktarıcı yapılandırması gRPC (genellikle bağlantı noktası 4317) kullanır. Ölçümleri Prometheus'a aktarmak için, telemetriyi OpenTelemetry Collector aracılığıyla gönderin veya bunun yerine OTLP/HTTP ayarlarını yapılandırın.
Dağıtılmış izleme
Dağıtılmış izleme, dağıtılmış uygulamaları izlemeye ve sorun gidermeye yönelik bir dizi araç ve uygulamadır. Gözlemlenebilirliğin önemli bir bileşenidir ve uygulamanızın davranışını anlamak için kritik bir araçtır. Orleans OpenTelemetry ile dağıtılmış izlemeyi destekler.
Seçtiğiniz dağıtılmış izleme vericisinden bağımsız olarak şu komutu çağırın:
- AddActivityPropagation(ISiloBuilder): silo için dağıtılmış izlemeyi etkinleştirir.
- AddActivityPropagation(IClientBuilder): istemci için dağıtılmış izlemeyi etkinleştirir.
Veya EnableDistributedTracing yapılandırma seçeneğini true olarak ayarlayın.
GPS İzleyici örnek uygulamasınaOrleans geri dönüp OpenTelemetry Protocol (OTLP) kullanarak dağıtılmış izlemeleri dışarı aktarabilirsiniz. OTLP ve Orleansile OpenTelemetry kullanmak için OpenTelemetry.Exporter.OpenTelemetryProtocol NuGet paketini yükleyin ve IServiceCollection aşağıdaki uzantı yöntemini çağırın:
builder.Services.AddOpenTelemetry()
.WithTracing(tracing =>
{
// Set a service name
tracing.SetResourceBuilder(
ResourceBuilder.CreateDefault()
.AddService(serviceName: "GPSTracker", serviceVersion: "1.0"));
// Good baseline for general Orleans observability
tracing.AddSource(Orleans.Diagnostics.ActivitySources.ApplicationGrainActivitySourceName);
tracing.AddSource(Orleans.Diagnostics.ActivitySources.LifecycleActivitySourceName);
/*
// Other source also available
// Persistence spans
tracing.AddSource(Orleans.Diagnostics.ActivitySources.StorageActivitySourceName);
// Internal Runtime spans
tracing.AddSource(Orleans.Diagnostics.ActivitySources.RuntimeActivitySourceName);
*/
/*
// Optionally add all Microsoft.Orleans.* Sources at once
tracing.AddSource(Orleans.Diagnostics.ActivitySources.AllActivitySourceName);
*/
tracing.AddOtlpExporter(otlp =>
{
otlp.Endpoint = new Uri("http://localhost:4317");
});
});
OTLP ihracatçısı Jaeger, Zipkin, Grafana Tempo ve Azure Monitör gibi birçok gözlemlenebilirlik arka ucuyla da çalışır. İzlemeler Jaeger kullanıcı arabirimi gibi araçlarda görselleştirilebilir:
Daha fazla bilgi için bkz . Dağıtılmış izleme.
Orleans çalışma zamanı istatistiklerini ve ölçümlerini ITelemetryConsumer arabirimi aracılığıyla çıkarır. Uygulamanız, Orleans çalışma zamanının düzenli olarak yayımladığı istatistikleri ve ölçümleri almak üzere siloları ve istemcileri için bir veya daha fazla telemetri tüketicisi kaydedebilir. Bunlar, popüler telemetri analizi çözümlerinin tüketicisi veya başka bir hedef ve amaç için özel olanlar olabilir. Kod tabanında şu anda üç telemetri tüketicisi bulunmaktadır.
Bunlar ayrı NuGet paketleri olarak sunulur:
Microsoft.Orleans.OrleansTelemetryConsumers.AI: Azure Uygulaması Insights'a yayımlamak için.Microsoft.Orleans.OrleansTelemetryConsumers.Counters: Windows performans sayaçlarına yayımlamak için. Çalışma Orleans zamanı bunların çoğunu sürekli olarak güncelleştirir. NuGet paketine dahil edilenMicrosoft.Orleans.CounterControlaracı, gerekli performans sayacı kategorilerini kaydetmeye yardımcı olur. Yükseltilmiş ayrıcalıklarla çalıştırılmalıdır. Herhangi bir standart izleme aracını kullanarak performans sayaçlarını izleyin.Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic: New Relic'e yayımlamak için.
Silonuzu ve istemcinizi telemetri tüketicilerini kullanacak şekilde yapılandırmak için silo yapılandırma kodu şöyle görünür:
var siloHostBuilder = new HostBuilder()
.UseOrleans(c =>
{
c.AddApplicationInsightsTelemetryConsumer("INSTRUMENTATION_KEY");
});
İstemci yapılandırma kodu şöyle görünür:
var clientBuilder = new ClientBuilder();
clientBuilder.AddApplicationInsightsTelemetryConsumer("INSTRUMENTATION_KEY");
Özel tanımlı TelemetryConfiguration'yi kullanmak için (bu TelemetryProcessors, TelemetrySinks vb. içerebilir) silo yapılandırma kodu şu şekilde görünür:
var telemetryConfiguration = TelemetryConfiguration.CreateDefault();
var siloHostBuilder = new HostBuilder()
.UseOrleans(c =>
{
c.AddApplicationInsightsTelemetryConsumer(telemetryConfiguration);
});
İstemci yapılandırma kodu şöyle görünür:
var clientBuilder = new ClientBuilder();
var telemetryConfiguration = TelemetryConfiguration.CreateDefault();
clientBuilder.AddApplicationInsightsTelemetryConsumer(telemetryConfiguration);