Diagnostika a sledování výkonu služby Reliable Actors

Modul runtime Reliable Actors generuje události EventSource a čítače výkonu. Tyto informace poskytují přehled o tom, jak modul runtime funguje, a pomáhají s řešením potíží a monitorováním výkonu.

Události EventSource

Název zprostředkovatele EventSource modulu runtime Reliable Actors je Microsoft-ServiceFabric-Actors. Události z tohoto zdroje událostí se zobrazí v okně Události diagnostiky , když je aplikace objektu actor laděná v sadě Visual Studio.

Mezi příklady nástrojů a technologií, které pomáhají shromažďovat a zobrazovat události EventSource, patří PerfView, Azure Diagnostics, sémantické protokolování a knihovna Microsoft TraceEvent.

Klíčová slova

Všechny události, které patří do Reliable Actors EventSource, jsou přidruženy k jednomu nebo více klíčovým slovům. To umožňuje filtrování shromážděných událostí. Jsou definovány následující bity klíčových slov.

Bit Popis
0x1 Sadadůležitých
0x2 Sada událostí, které popisují volání metody objektu actor. Další informace najdete v úvodním tématu o aktérech.
0x4 Sada událostí souvisejících se stavem objektu actor Další informace najdete v tématu o správě stavu objektu actor.
0x8 Sada událostí souvisejících s souběžností na základě turn-based v objektu actor. Další informace najdete v tématu o souběžnosti.

Čítače výkonu

Modul runtime Reliable Actors definuje následující kategorie čítačů výkonu.

Kategorie Popis
Service Fabric Actor Čítače specifické pro aktéry Azure Service Fabric, například doba potřebná k uložení stavu objektu actor
Service Fabric Actor – metoda Čítače specifické pro metody implementované aktéry Service Fabric, například jak často je vyvolána metoda objektu actor.

Každá z výše uvedených kategorií má jeden nebo více čítačů.

Aplikace Windows Sledování výkonu, která je ve výchozím nastavení dostupná v operačním systému Windows, lze použít ke shromažďování a zobrazení dat čítačů výkonu. Azure Diagnostics je další možností shromažďování dat čítačů výkonu a jejich nahrání do tabulek Azure.

Názvy instancí čítačů výkonu

Cluster, který má velký počet služeb actor nebo oddílů služby actor, bude mít velký počet instancí čítačů výkonu objektu actor. Názvy instancí čítače výkonu můžou pomoct při identifikaci konkrétní metody oddílu a objektu actor (pokud je k dispozici), ke které je instance čítače výkonu přidružena.

Kategorie Service Fabric Actor

Pro kategorii Service Fabric Actorjsou názvy instancí čítačů v následujícím formátu:

ServiceFabricPartitionID_ActorsRuntimeInternalID

ServiceFabricPartitionID je řetězcová reprezentace ID oddílu Service Fabric, ke které je přidružena instance čítače výkonu. ID oddílu je IDENTIFIKÁTOR GUID a jeho řetězcové vyjádření se generuje prostřednictvím Guid.ToString metody se specifikátorem formátu "D".

ActorRuntimeInternalID je řetězcová reprezentace 64bitového celého čísla vygenerovaného modulem runtime Fabric Actors pro jeho interní použití. To je součástí názvu instance čítače výkonu, aby se zajistila jeho jedinečnost a zabránilo konfliktu s jinými názvy instancí čítače výkonu. Uživatelé by se neměli pokoušet interpretovat tuto část názvu instance čítače výkonu.

Následuje příklad názvu instance čítače pro čítač, který patří do Service Fabric Actor kategorie:

2740af29-78aa-44bc-a20b-7e60fb783264_635650083799324046

V předchozím 2740af29-78aa-44bc-a20b-7e60fb783264 příkladu je řetězcová reprezentace ID oddílu Service Fabric a 635650083799324046 je 64bitové ID vygenerované pro interní použití modulu runtime.

Kategorie Metody objektu Service Fabric Actor

Pro kategorii Service Fabric Actor Methodjsou názvy instancí čítačů v následujícím formátu:

MethodName_ActorsRuntimeMethodId_ServiceFabricPartitionID_ActorsRuntimeInternalID

MethodName je název metody objektu actor, ke které je přidružena instance čítače výkonu. Formát názvu metody je určen na základě určité logiky modulu runtime Fabric Actors, která vyrovnává čitelnost názvu s omezeními maximální délky názvů instancí čítače výkonu ve Windows.

ActorsRuntimeMethodId je řetězcová reprezentace 32bitového celého čísla vygenerovaného modulem runtime Fabric Actors pro jeho interní použití. To je součástí názvu instance čítače výkonu, aby se zajistila jeho jedinečnost a zabránilo konfliktu s jinými názvy instancí čítače výkonu. Uživatelé by se neměli pokoušet interpretovat tuto část názvu instance čítače výkonu.

ServiceFabricPartitionID je řetězcová reprezentace ID oddílu Service Fabric, ke které je přidružena instance čítače výkonu. ID oddílu je IDENTIFIKÁTOR GUID a jeho řetězcové vyjádření se generuje prostřednictvím Guid.ToString metody se specifikátorem formátu "D".

ActorRuntimeInternalID je řetězcová reprezentace 64bitového celého čísla vygenerovaného modulem runtime Fabric Actors pro jeho interní použití. To je součástí názvu instance čítače výkonu, aby se zajistila jeho jedinečnost a zabránilo konfliktu s jinými názvy instancí čítače výkonu. Uživatelé by se neměli pokoušet interpretovat tuto část názvu instance čítače výkonu.

Následuje příklad názvu instance čítače pro čítač, který patří do Service Fabric Actor Method kategorie:

ivoicemailboxactor.leavemessageasync_2_89383d32-e57e-4a9b-a6ad-57c6792aa521_635650083804480486

V předchozím ivoicemailboxactor.leavemessageasync příkladu je název metody, 2 je 32bitové ID vygenerované pro interní použití modulu runtime, 89383d32-e57e-4a9b-a6ad-57c6792aa521 je řetězcová reprezentace ID oddílu Service Fabric a 635650083804480486 je 64bitové ID vygenerované pro interní použití modulu runtime.

Seznam událostí a čítačů výkonu

Události metody objektu actor a čítače výkonu

Modul runtime Reliable Actors generuje následující události související s metodami objektu actor.

Název události ID události Level Klíčové slovo Popis
ActorMethodStart 7 Podrobnosti 0x2 Modul runtime Actors se chystá vyvolat metodu objektu actor.
ActorMethodStop 8 Podrobnosti 0x2 Metoda objektu actor byla dokončena. To znamená, že asynchronní volání modulu runtime pro metodu actor vrátilo a úloha vrácená metodou objektu actor byla dokončena.
ActorMethodThrewException 9 Upozorňující 0x3 Během provádění metody objektu actor došlo k výjimce, a to buď během asynchronního volání objektu actor modulu runtime, nebo během provádění úlohy vrácené metodou objektu actor. Tato událost označuje určitý druh selhání v kódu objektu actor, který vyžaduje šetření.

Modul runtime Reliable Actors publikuje následující čítače výkonu související s prováděním metod objektu actor.

Název kategorie Název čítače Popis
Service Fabric Actor – metoda Vyvolání za sekundu Počet vyvolání metody služby actor za sekundu
Service Fabric Actor – metoda Průměrné milisekundy na vyvolání Doba potřebná ke spuštění metody služby actor v milisekundách
Service Fabric Actor – metoda Vyvolání výjimek za sekundu Počet, kolikrát metoda služby actor vyvolala výjimku za sekundu

Události souběžnosti a čítače výkonu

Modul runtime Reliable Actors generuje následující události související s souběžností.

Název události ID události Level Klíčové slovo Popis
ActorMethodCallsWaitingForLock 12 Podrobnosti 0x8 Tato událost je napsána na začátku každého nového odevzdání v objektu actor. Obsahuje počet čekajících volání objektu actor, která čekají na získání zámku objektu actor, který vynucuje souběžnost založenou na turn.

Modul runtime Reliable Actors publikuje následující čítače výkonu související s souběžností.

Název kategorie Název čítače Popis
Service Fabric Actor # of actor calls waiting for actor lock Počet čekajících volání objektu actor čekajících na získání zámku pro jednotlivé objekty actor, který vynucuje souběžnost na základě turn
Service Fabric Actor Průměrné milisekundy na čekání na zámek Doba potřebná (v milisekundách) k získání zámku objektu actor, který vynucuje souběžnost na základě turn
Service Fabric Actor Průměrný zámek objektu actor milisekund Čas (v milisekundách), pro který je zámek objektu actor držen

Události správy stavu objektu actor a čítače výkonu

Modul runtime Reliable Actors generuje následující události související se správou stavu objektu actor.

Název události ID události Level Klíčové slovo Popis
ActorSaveStateStart 10 Podrobnosti 0x4 Modul runtime Actors se chystá uložit stav objektu actor.
ActorSaveStateStop 11 Podrobnosti 0x4 Modul runtime Actors dokončil uložení stavu objektu actor.

Modul runtime Reliable Actors publikuje následující čítače výkonu související se správou stavu objektu actor.

Název kategorie Název čítače Popis
Service Fabric Actor Průměrná milisekunda na operaci stavu uložení Doba potřebná k uložení stavu objektu actor v milisekundách
Service Fabric Actor Průměrná milisekunda na operaci stavu zatížení Doba potřebná k načtení stavu objektu actor v milisekundách

Modul runtime Reliable Actors generuje následující události související s replikami objektu actor.

Název události ID události Level Klíčové slovo Popis
ReplicaChangeRoleToPrimary 0 Informační 0x1 Replika objektu actor změnila roli na primární. To znamená, že aktéři pro tento oddíl se vytvoří uvnitř této repliky.
ReplicaChangeRoleFromPrimary 2 Informační 0x1 Replika objektu actor změnila roli na neprimární. To znamená, že aktéři tohoto oddílu už nebudou v této replice vytvářeni. Do herců, kteří už v této replice vytvořili, se nebudou doručovat žádné nové požadavky. Aktéři budou zničeni po dokončení jakýchkoli probíhajících požadavků.

Události aktivace a deaktivace objektu Actor a čítače výkonu

Modul runtime Reliable Actors generuje následující události související s aktivací a deaktivací objektu actor.

Název události ID události Level Klíčové slovo Popis
ActorActivated 5 Informační 0x1 Objekt actor byl aktivován.
Objekt ActorDeactivated 6 Informační 0x1 Objekt actor byl deaktivován.

Modul runtime Reliable Actors publikuje následující čítače výkonu související s aktivací a deaktivací objektu actor.

Název kategorie Název čítače Popis
Service Fabric Actor Average OnActivateAsync milliseconds Doba potřebná ke spuštění metody OnActivateAsync v milisekundách

Čítače výkonu zpracování požadavků objektu actor

Když klient vyvolá metodu prostřednictvím objektu proxy objektu actor, bude výsledkem odeslání zprávy požadavku přes síť službě actor. Služba zpracuje zprávu požadavku a odešle odpověď zpět klientovi. Modul runtime Reliable Actors publikuje následující čítače výkonu související se zpracováním požadavků objektu actor.

Název kategorie Název čítače Popis
Service Fabric Actor Počet nevyřízených žádostí Počet žádostí zpracovávaných ve službě
Service Fabric Actor Průměrný počet milisekund na požadavek Doba potřebná službou (v milisekundách) ke zpracování žádosti
Service Fabric Actor Průměrná milisekunda pro deserializaci požadavků Doba potřebná (v milisekundách) k deserializaci zprávy požadavku objektu actor při přijetí ve službě
Service Fabric Actor Průměrné milisekundy pro serializaci odpovědí Doba potřebná (v milisekundách) k serializaci zprávy odpovědi objektu actor ve službě před odesláním odpovědi klientovi

Další kroky