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 Actor
jsou 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 Method
jsou 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 |
Události související s replikami objektu actor
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 |