Felsök med hjälp av systemhälsorapporter
Azure Service Fabric-komponenter tillhandahåller systemhälsorapporter för alla entiteter i klustret direkt från start. Hälsolagret skapar och tar bort entiteter baserat på systemrapporterna. De organiseras också i en hierarki som samlar in entitetsinteraktioner.
Anteckning
Om du vill förstå hälsorelaterade begrepp kan du läsa mer Service Fabric hälsomodellen.
Systemhälsorapporter ger insyn i kluster- och programfunktioner och flaggar problem. För program och tjänster kontrollerar systemhälsorapporter att entiteter implementeras och fungerar korrekt ur ett Service Fabric perspektiv. Rapporterna tillhandahåller ingen hälsoövervakning av tjänstens affärslogik eller identifiering av processer som inte svarar. Användartjänster kan utöka hälsodata med information som är specifik för deras logik.
Anteckning
Hälsorapporter som skickas av användaren watchdogs visas först när systemkomponenterna har skapat en entitet. När en entitet tas bort tar hälsolagret automatiskt bort alla hälsorapporter som är associerade med den. Samma sak gäller när en ny instans av entiteten skapas. Ett exempel är när en ny tillståndsfull ständiga tjänstreplikinstans skapas. Alla rapporter som är associerade med den gamla instansen tas bort och rensas från arkivet.
Systemkomponentrapporterna identifieras av källan, som börjar med "System". . Watchdogs kan inte använda samma prefix för sina källor, eftersom rapporter med ogiltiga parametrar avvisas.
Nu ska vi titta på några systemrapporter för att förstå vad som utlöser dem och för att lära oss att korrigera de potentiella problem som de representerar.
Anteckning
Service Fabric fortsätter att lägga till rapporter om intressanta villkor som ger bättre insyn i vad som händer i klustret och programmen. Befintliga rapporter kan förbättras med mer information för att felsöka problemet snabbare.
Hälsorapporter för klustersystem
Entiteten för klusterhälsa skapas automatiskt i hälsolagret. Om allt fungerar som det ska har den ingen systemrapport.
Förlust av område
System.Federation rapporterar ett fel när det upptäcker en förlust i ett område. Rapporten kommer från enskilda noder och nod-ID ingår i egenskapsnamnet. Om ett område försvinner i hela Service Fabric ring kan du normalt förvänta dig två händelser som representerar båda sidor av gaprapporten. Om fler områden går förlorade finns det fler händelser.
Rapporten anger tidsgränsen för globalt lån som TTL (Time-to-Live). Rapporten skickas igen varje halva av TTL-varaktigheten så länge villkoret förblir aktivt. Händelsen tas bort automatiskt när den upphör att gälla. Beteendet Remove-when-expired ser till att rapporten rensas från hälsoarkivet på rätt sätt, även om rapportnoden är ur funktion.
- SourceId: System.Federation
- Egenskap: Börjar med Område och innehåller nodinformation.
- Nästa steg: Undersök varför området är förlorat. Kontrollera till exempel kommunikationen mellan klusternoder.
Återskapa
Tjänsten Redundanshanteraren (FM) hanterar information om klusternoderna. När FM förlorar sina data och hamnar i dataförlust kan det inte garantera att den har den mest uppdaterade informationen om klusternoderna. I det här fallet går systemet igenom en återskapande och System.FM samlar in data från alla noder i klustret för att återskapa dess tillstånd. På grund av nätverks- eller nodproblem kan återskapande ibland fastna eller stoppas. Samma sak kan hända med Redundanshanteraren Master -tjänsten (FMM). FMM är en tillståndslös systemtjänst som håller reda på var alla FMs finns i klustret. FMM:s primära är alltid noden med ID:t närmast 0. Om noden tas bort utlöses en återskapande. När något av de tidigare villkoren inträffar System.FM System.FMM flaggar det via en felrapport. Återskapa kan ha fastnat i en av två faser:
Väntar på sändning: FM/FMM väntar på att sändningsmeddelandet ska svara från de andra noderna.
- Nästa steg: Undersök om det finns ett problem med nätverksanslutningen mellan noderna.
Väntar på noder: FM/FMM har redan tagit emot ett broadcast-svar från de andra noderna och väntar på ett svar från specifika noder. Hälsorapporten listar de noder som FM/FMM väntar på svar för.
- Nästa steg: Undersök nätverksanslutningen mellan FM/FMM och noderna i listan. Undersök varje nod i listan för att se om det finns andra möjliga problem.
SourceID: System.FM eller System.FMM
Egenskap: Återskapa.
Nästa steg: Undersök nätverksanslutningen mellan noderna, samt tillståndet för alla specifika noder som anges i beskrivningen av hälsorapporten.
Startvärdets nodstatus
System.FM rapporterar en varning på klusternivå om vissa start seed-noder är felaktiga. Start startnoder är de noder som upprätthåller tillgängligheten för det underliggande klustret. Dessa noder hjälper till att säkerställa att klustret förblir upp genom att upprätta lån med andra noder och fungerar som tiebreakers vid vissa typer av nätverksfel. Om en majoritet av start seed-noderna ligger nere i klustret och de inte hämtas tillbaka, stängs klustret av automatiskt.
En startvärdetod är inte fel om dess nodstatus är Ned, Borttagen eller Okänd. Varningsrapporten för startvärdets nodstatus visar en lista över alla ej felande startvärdetoder med detaljerad information.
- SourceID: System.FM
- Egenskap: SeedNodeStatus
- Nästa steg: Om den här varningen visas i klustret följer du anvisningarna nedan för att åtgärda det: För kluster som kör Service Fabric version 6.5 eller senare: För Service Fabric-kluster i Azure kommer Service Fabric att försöka ändra den till en nod som inte är seed-nod automatiskt efter att start startnoden har körts. Se till att antalet noder som inte är seed-noder i den primära nodtypen är större än eller lika med antalet ned-start startpunktsnoder. Om det behövs lägger du till fler noder till den primära nodtypen för att åstadkomma detta. Beroende på klusterstatusen kan det ta lite tid att åtgärda problemet. När detta är klart rensas varningsrapporten automatiskt.
För Service Fabric fristående kluster måste alla start startnoder bli felfria för att kunna rensa varningsrapporten. Beroende på varför start startnoder är felaktiga måste olika åtgärder vidtas: om start startnoden är ur funktion måste användarna ta upp start startnoden. Om start startnoden är Borttagen eller Okänd måste den här startnoden tas bort från klustret. Varningsrapporten rensas automatiskt när alla startoder blir felfria.
För kluster som Service Fabric äldre version än 6.5: I det här fallet måste varningsrapporten rensas manuellt. Användarna bör se till att alla startnoder blir felfria innan rapporten rensas: om start startnoden är Ur funktion måste användarna ta upp start seed-noden. Om startnoden är Borttagen eller Okänd måste start startnoden tas bort från klustret. När alla start startnoder har blivit felfria använder du följande kommando från Powershell för att rensa varningsrapporten:
PS C:\> Send-ServiceFabricClusterHealthReport -SourceId "System.FM" -HealthProperty "SeedNodeStatus" -HealthState OK
Hälsorapporter för Nodsystem
System.FM, som representerar Redundanshanteraren tjänst, är den utfärdare som hanterar information om klusternoder. Varje nod ska ha en rapport från System.FM visar dess tillstånd. Nodentiteterna tas bort när nodtillståndet tas bort. Mer information finns i RemoveNodeStateAsync.
Nod upp/ned
System.FM rapporterar som OK när noden ansluter till ringen (den är igång). Den rapporterar ett fel när noden lämnar ringen (den är nere, antingen för uppgradering eller bara för att den har misslyckats). Hälsohierarkin som skapats av hälsolagret fungerar på distribuerade entiteter i korrelation med System.FM nodrapporter. Noden anses vara ett virtuellt överordnat objekt för alla distribuerade entiteter. De distribuerade entiteterna på noden exponeras via frågor om noden rapporteras som upp av System.FM, med samma instans som instansen som är associerad med entiteterna. När System.FM rapporterar att noden är nere eller har startats om, som en ny instans, rensar hälsolagret automatiskt de distribuerade entiteter som endast kan finnas på den nedströms noden eller på den tidigare instansen av noden.
- SourceId: System.FM
- Egenskap: Tillstånd.
- Nästa steg: Om noden inte är i drift för en uppgradering bör den komma tillbaka när den har uppgraderats. I det här fallet bör hälsotillståndet växla tillbaka till OK. Om noden inte kommer tillbaka eller misslyckas behöver problemet mer undersökning.
I följande exempel visas System.FM händelse med hälsotillståndet OK för noden upp:
PS C:\> Get-ServiceFabricNodeHealth _Node_0
NodeName : _Node_0
AggregatedHealthState : Ok
HealthEvents :
SourceId : System.FM
Property : State
HealthState : Ok
SequenceNumber : 8
SentAt : 7/14/2017 4:54:51 PM
ReceivedAt : 7/14/2017 4:55:14 PM
TTL : Infinite
Description : Fabric node is up.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 7/14/2017 4:55:14 PM, LastWarning = 1/1/0001 12:00:00 AM
Förfallodatum för certifikat
System.FabricNode rapporterar en varning när certifikat som används av noden snart upphör att gälla. Det finns tre certifikat per nod: Certificate_cluster, Certificate_server och Certificate_default_client. Om förfallotiden är minst två veckor bort är rapportens hälsotillstånd OK. När förfallotiden infaller inom två veckor är rapporttypen en varning. TTL-värdet för dessa händelser är oändligt och tas bort när en nod lämnar klustret.
- SourceId: System.FabricNode
- Egenskap: Börjar med Certifikat och innehåller mer information om certifikattypen.
- Nästa steg: Uppdatera certifikaten om de snart upphör att gälla.
Överträdelse av inläsningskapacitet
Rapporten Service Fabric Load Balancer en varning när den identifierar en nodkapacitetsöverträdelse.
- SourceId: System.PLB
- Egenskap: Börjar med Kapacitet.
- Nästa steg: Kontrollera de angivna måtten och visa den aktuella kapaciteten på noden.
Matchningsfel för nodkapacitet för resursstyrningsmått
System.Hosting rapporterar en varning om definierade nodkapaciteter i klustermanifestet är större än de verkliga nodkapaciteterna för resursstyrningsmått (minne och CPU-kärnor). En hälsorapport visas när det första tjänstpaketet som använder resursstyrningsregister på en angiven nod.
- SourceId: System.Hosting
- Egenskap: ResourceGovernance.
- Nästa steg: Det här problemet kan vara ett problem eftersom styrning av tjänstpaket inte tillämpas som förväntat och resursstyrningen inte fungerar korrekt. Uppdatera klustermanifestet med rätt nodkapacitet för dessa mått eller ange dem inte och låt dem Service Fabric identifiera tillgängliga resurser automatiskt.
Hälsorapporter för programsystem
System.CM, som representerar klusterhanterartjänsten, är den utfärdare som hanterar information om ett program.
Tillstånd
System.CM som OK när programmet har skapats eller uppdaterats. Den informerar hälsolagret när programmet tas bort så att det kan tas bort från arkivet.
- SourceId: System.CM
- Egenskap: Tillstånd.
- Nästa steg: Om programmet har skapats eller uppdaterats bör det innehålla hälsorapporten för Cluster Manager. Annars kontrollerar du programmets tillstånd genom att utfärda en fråga. Använd till exempel PowerShell-cmdleten Get-ServiceFabricApplication -ApplicationName applicationName.
I följande exempel visas tillståndshändelsen i fabric:/WordCount-programmet:
PS C:\> Get-ServiceFabricApplicationHealth fabric:/WordCount -ServicesFilter None -DeployedApplicationsFilter None -ExcludeHealthStatistics
ApplicationName : fabric:/WordCount
AggregatedHealthState : Ok
ServiceHealthStates : None
DeployedApplicationHealthStates : None
HealthEvents :
SourceId : System.CM
Property : State
HealthState : Ok
SequenceNumber : 282
SentAt : 7/13/2017 5:57:05 PM
ReceivedAt : 7/14/2017 4:55:10 PM
TTL : Infinite
Description : Application has been created.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 7/13/2017 5:57:05 PM, LastWarning = 1/1/0001 12:00:00 AM
Hälsorapporter för tjänstsystem
System.FM, som representerar Redundanshanteraren tjänst, är den auktoritet som hanterar information om tjänster.
Tillstånd
System.FM som OK när tjänsten har skapats. Den tar bort entiteten från hälsolagret när tjänsten tas bort.
- SourceId: System.FM
- Egenskap: Tillstånd.
I följande exempel visas tillståndshändelsen i service fabric:/WordCount/WordCountWebService:
PS C:\> Get-ServiceFabricServiceHealth fabric:/WordCount/WordCountWebService -ExcludeHealthStatistics
ServiceName : fabric:/WordCount/WordCountWebService
AggregatedHealthState : Ok
PartitionHealthStates :
PartitionId : 8bbcd03a-3a53-47ec-a5f1-9b77f73c53b2
AggregatedHealthState : Ok
HealthEvents :
SourceId : System.FM
Property : State
HealthState : Ok
SequenceNumber : 14
SentAt : 7/13/2017 5:57:05 PM
ReceivedAt : 7/14/2017 4:55:10 PM
TTL : Infinite
Description : Service has been created.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 7/13/2017 5:57:18 PM, LastWarning = 1/1/0001 12:00:00 AM
Fel vid tjänstkorrelation
System.PLB rapporterar ett fel när den upptäcker att uppdatering av en tjänst är korrelerad med en annan tjänst som skapar en tillhörighetskedja. Rapporten rensas när en lyckad uppdatering sker.
- SourceId: System.PLB
- Egenskap: ServiceDescription.
- Nästa steg: Kontrollera de korrelerade tjänstbeskrivningarna.
Partitionera systemhälsorapporter
System.FM, som representerar Redundanshanteraren tjänst, är den auktoritet som hanterar information om tjänstpartitioner.
Tillstånd
System.FM som OK när partitionen har skapats och är felfri. Den tar bort entiteten från hälsolagret när partitionen tas bort.
Om partitionen är lägre än det minsta antalet repliker rapporterar den ett fel. Om partitionen inte är lägre än det minsta antalet repliker, men den är lägre än antalet målrepliker, rapporterar den en varning. Om partitionen är i kvorumförlust System.FM rapporterar ett fel.
Andra viktiga händelser är en varning när omkonfigurationen tar längre tid än förväntat och när bygget tar längre tid än förväntat. De förväntade tiderna för bygget och omkonfigurationen kan konfigureras baserat på tjänstscenarierna. Om en tjänst till exempel har en terabyte tillstånd, till exempel Azure SQL Database tar bygget längre tid än för en tjänst med en liten mängd tillstånd.
- SourceId: System.FM
- Egenskap: Tillstånd.
- Nästa steg: Om hälsotillståndet inte är OK, är det möjligt att vissa repliker inte har skapats, öppnats eller befordrats till primär eller sekundär på rätt sätt.
Om beskrivningen beskriver kvorumförlust hjälper det att ta partitionen online igen genom att undersöka den detaljerade hälsorapporten för repliker som ligger nere och ta tillbaka dem.
Om beskrivningen beskriver en partition som fastnat i omkonfigurationenger hälsorapporten på den primära repliken ytterligare information.
För andra System.FM hälsorapporter skulle det finnas rapporter på replikerna eller partitionen eller tjänsten från andra systemkomponenter.
I följande exempel beskrivs några av dessa rapporter.
I följande exempel visas en felfri partition:
PS C:\> Get-ServiceFabricPartition fabric:/WordCount/WordCountWebService | Get-ServiceFabricPartitionHealth -ExcludeHealthStatistics -ReplicasFilter None
PartitionId : 8bbcd03a-3a53-47ec-a5f1-9b77f73c53b2
AggregatedHealthState : Ok
ReplicaHealthStates : None
HealthEvents :
SourceId : System.FM
Property : State
HealthState : Ok
SequenceNumber : 70
SentAt : 7/13/2017 5:57:05 PM
ReceivedAt : 7/14/2017 4:55:10 PM
TTL : Infinite
Description : Partition is healthy.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 7/13/2017 5:57:18 PM, LastWarning = 1/1/0001 12:00:00 AM
I följande exempel visas hälsotillståndet för en partition som ligger under antalet målrepliker. Nästa steg är att hämta partitionsbeskrivningen som visar hur den är konfigurerad: MinReplicaSetSize är tre och TargetReplicaSetSize är sju. Hämta sedan antalet noder i klustret, vilket i det här fallet är fem. I det här fallet kan två repliker inte placeras eftersom målantalet repliker är högre än antalet tillgängliga noder.
PS C:\> Get-ServiceFabricPartition fabric:/WordCount/WordCountService | Get-ServiceFabricPartitionHealth -ReplicasFilter None -ExcludeHealthStatistics
PartitionId : af2e3e44-a8f8-45ac-9f31-4093eb897600
AggregatedHealthState : Warning
UnhealthyEvaluations :
Unhealthy event: SourceId='System.FM', Property='State', HealthState='Warning', ConsiderWarningAsError=false.
ReplicaHealthStates : None
HealthEvents :
SourceId : System.FM
Property : State
HealthState : Warning
SequenceNumber : 123
SentAt : 7/14/2017 4:55:39 PM
ReceivedAt : 7/14/2017 4:55:44 PM
TTL : Infinite
Description : Partition is below target replica or instance count.
fabric:/WordCount/WordCountService 7 2 af2e3e44-a8f8-45ac-9f31-4093eb897600
N/S Ready _Node_2 131444422260002646
N/S Ready _Node_4 131444422293113678
N/S Ready _Node_3 131444422293113679
N/S Ready _Node_1 131444422293118720
N/P Ready _Node_0 131444422293118721
(Showing 5 out of 5 replicas. Total available replicas: 5)
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Warning = 7/14/2017 4:55:44 PM, LastOk = 1/1/0001 12:00:00 AM
SourceId : System.PLB
Property : ServiceReplicaUnplacedHealth_Secondary_af2e3e44-a8f8-45ac-9f31-4093eb897600
HealthState : Warning
SequenceNumber : 131445250939703027
SentAt : 7/14/2017 4:58:13 PM
ReceivedAt : 7/14/2017 4:58:14 PM
TTL : 00:01:05
Description : The Load Balancer was unable to find a placement for one or more of the Service's Replicas:
Secondary replica could not be placed due to the following constraints and properties:
TargetReplicaSetSize: 7
Placement Constraint: N/A
Parent Service: N/A
Constraint Elimination Sequence:
Existing Secondary Replicas eliminated 4 possible node(s) for placement -- 1/5 node(s) remain.
Existing Primary Replica eliminated 1 possible node(s) for placement -- 0/5 node(s) remain.
Nodes Eliminated By Constraints:
Existing Secondary Replicas -- Nodes with Partition's Existing Secondary Replicas/Instances:
--
FaultDomain:fd:/4 NodeName:_Node_4 NodeType:NodeType4 UpgradeDomain:4 UpgradeDomain: ud:/4 Deactivation Intent/Status: None/None
FaultDomain:fd:/3 NodeName:_Node_3 NodeType:NodeType3 UpgradeDomain:3 UpgradeDomain: ud:/3 Deactivation Intent/Status: None/None
FaultDomain:fd:/2 NodeName:_Node_2 NodeType:NodeType2 UpgradeDomain:2 UpgradeDomain: ud:/2 Deactivation Intent/Status: None/None
FaultDomain:fd:/1 NodeName:_Node_1 NodeType:NodeType1 UpgradeDomain:1 UpgradeDomain: ud:/1 Deactivation Intent/Status: None/None
Existing Primary Replica -- Nodes with Partition's Existing Primary Replica or Secondary Replicas:
--
FaultDomain:fd:/0 NodeName:_Node_0 NodeType:NodeType0 UpgradeDomain:0 UpgradeDomain: ud:/0 Deactivation Intent/Status: None/None
RemoveWhenExpired : True
IsExpired : False
Transitions : Error->Warning = 7/14/2017 4:56:14 PM, LastOk = 1/1/0001 12:00:00 AM
PS C:\> Get-ServiceFabricPartition fabric:/WordCount/WordCountService | select MinReplicaSetSize,TargetReplicaSetSize
MinReplicaSetSize TargetReplicaSetSize
----------------- --------------------
2 7
PS C:\> @(Get-ServiceFabricNode).Count
5
I följande exempel visas hälsotillståndet för en partition som har fastnat i omkonfigurationen på grund av att användaren inte respekterar annulleringstoken i Metoden RunAsync. Om du undersöker hälsorapporten för alla repliker som markerats som primär replik (P) kan du öka detaljgranska problemet ytterligare.
PS C:\utilities\ServiceFabricExplorer\ClientPackage\lib> Get-ServiceFabricPartitionHealth 0e40fd81-284d-4be4-a665-13bc5a6607ec -ExcludeHealthStatistics
PartitionId : 0e40fd81-284d-4be4-a665-13bc5a6607ec
AggregatedHealthState : Warning
UnhealthyEvaluations :
Unhealthy event: SourceId='System.FM', Property='State', HealthState='Warning',
ConsiderWarningAsError=false.
HealthEvents :
SourceId : System.FM
Property : State
HealthState : Warning
SequenceNumber : 7
SentAt : 8/27/2017 3:43:09 AM
ReceivedAt : 8/27/2017 3:43:32 AM
TTL : Infinite
Description : Partition reconfiguration is taking longer than expected.
fabric:/app/test1 3 1 0e40fd81-284d-4be4-a665-13bc5a6607ec
P/S Ready Node1 131482789658160654
S/P Ready Node2 131482789688598467
S/S Ready Node3 131482789688598468
(Showing 3 out of 3 replicas. Total available replicas: 3)
For more information see: https://aka.ms/sfhealth
RemoveWhenExpired : False
IsExpired : False
Transitions : Ok->Warning = 8/27/2017 3:43:32 AM, LastError = 1/1/0001 12:00:00 AM
Den här hälsorapporten visar tillståndet för replikerna av partitionen som genomgår omkonfigurationen:
P/S Ready Node1 131482789658160654
S/P Ready Node2 131482789688598467
S/S Ready Node3 131482789688598468
För varje replik innehåller hälsorapporten:
- Tidigare konfigurationsroll
- Aktuell konfigurationsroll
- Repliktillstånd
- Nod som repliken körs på
- Replik-ID
I ett fall som exemplet krävs ytterligare undersökning. Undersök hälsotillståndet för varje enskild replik från och med de repliker som markerats som Primary Secondary och (131482789658160654 och 131482789688598467) i föregående exempel.
Överträdelse av replikbegränsning
System.PLB rapporterar en varning om den identifierar en överträdelse av replikbegränsningen och inte kan placera alla partitionsrepliker. Rapportinformationen visar vilka begränsningar och egenskaper som förhindrar replikplaceringen.
- SourceId: System.PLB
- Egenskap: Börjar med ReplicaConstraintViolation.
Hälsorapporter för repliksystem
System.RA, som representerar komponenten för omkonfigurationsagenten, är auktoriteten för repliktillståndet.
Tillstånd
System.RA rapporterar OK när repliken har skapats.
- SourceId: System.RA
- Egenskap: Tillstånd.
I följande exempel visas en felfri replik:
PS C:\> Get-ServiceFabricPartition fabric:/WordCount/WordCountService | Get-ServiceFabricReplica | where {$_.ReplicaRole -eq "Primary"} | Get-ServiceFabricReplicaHealth
PartitionId : af2e3e44-a8f8-45ac-9f31-4093eb897600
ReplicaId : 131444422293118721
AggregatedHealthState : Ok
HealthEvents :
SourceId : System.RA
Property : State
HealthState : Ok
SequenceNumber : 131445248920273536
SentAt : 7/14/2017 4:54:52 PM
ReceivedAt : 7/14/2017 4:55:13 PM
TTL : Infinite
Description : Replica has been created._Node_0
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 7/14/2017 4:55:13 PM, LastWarning = 1/1/0001 12:00:00 AM
ReplicaOpenStatus, ReplicaCloseStatus, ReplicaChangeRoleStatus
Den här egenskapen används för att ange varningar eller fel när du försöker öppna en replik, stänga en replik eller övergå från en replik till en annan. Mer information finns i Repliklivscykel. Felen kan vara undantag som uppstår från API-anropen eller krascher i tjänstvärdprocessen under den här tiden. För fel som beror på API-anrop från C#-Service Fabric lägger till undantaget och stackspårningen i hälsorapporten.
Dessa hälsovarningar utlöses efter att åtgärden har återförsökts lokalt ett visst antal gånger (beroende på princip). Service Fabric försöker åtgärden upp till ett högsta tröskelvärde. När det maximala tröskelvärdet har nåtts kan det försöka åtgärda situationen. Det här försöket kan göra att dessa varningar rensas när den ger upp åtgärden på den här noden. Om en replik till exempel inte kan öppnas på en nod, Service Fabric en hälsovarning. Om repliken fortsätter att misslyckas med att Service Fabric fungerar som självreparation. Den här åtgärden kan innebära att du provar samma åtgärd på en annan nod. Det här försöket gör att varningen för den här repliken rensas.
- SourceId: System.RA
- Egenskap: ReplicaOpenStatus, ReplicaCloseStatus och ReplicaChangeRoleStatus.
- Nästa steg: Undersök tjänstkoden eller kraschdumpar för att identifiera varför åtgärden misslyckas.
I följande exempel visas hälsotillståndet för en replik som kastar TargetInvocationException från den öppna metoden. Beskrivningen innehåller felpunkten, IStatefulServiceReplica.Open, undantagstypen TargetInvocationException och stackspårningen.
PS C:\> Get-ServiceFabricReplicaHealth -PartitionId 337cf1df-6cab-4825-99a9-7595090c0b1b -ReplicaOrInstanceId 131483509874784794
PartitionId : 337cf1df-6cab-4825-99a9-7595090c0b1b
ReplicaId : 131483509874784794
AggregatedHealthState : Warning
UnhealthyEvaluations :
Unhealthy event: SourceId='System.RA', Property='ReplicaOpenStatus', HealthState='Warning',
ConsiderWarningAsError=false.
HealthEvents :
SourceId : System.RA
Property : ReplicaOpenStatus
HealthState : Warning
SequenceNumber : 131483510001453159
SentAt : 8/27/2017 11:43:20 PM
ReceivedAt : 8/27/2017 11:43:21 PM
TTL : Infinite
Description : Replica had multiple failures during open on _Node_0 API call: IStatefulServiceReplica.Open(); Error = System.Reflection.TargetInvocationException (-2146232828)
Exception has been thrown by the target of an invocation.
at Microsoft.ServiceFabric.Replicator.RecoveryManager.d__31.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ServiceFabric.Replicator.LoggingReplicator.d__137.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ServiceFabric.Replicator.DynamicStateManager.d__109.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ServiceFabric.Replicator.TransactionalReplicator.d__79.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ServiceFabric.Replicator.StatefulServiceReplica.d__21.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ServiceFabric.Services.Runtime.StatefulServiceReplicaAdapter.d__0.MoveNext()
For more information see: https://aka.ms/sfhealth
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Warning = 8/27/2017 11:43:21 PM, LastOk = 1/1/0001 12:00:00 AM
I följande exempel visas en replik som ständigt kraschar under stängning:
C:>Get-ServiceFabricReplicaHealth -PartitionId dcafb6b7-9446-425c-8b90-b3fdf3859e64 -ReplicaOrInstanceId 131483565548493142
PartitionId : dcafb6b7-9446-425c-8b90-b3fdf3859e64
ReplicaId : 131483565548493142
AggregatedHealthState : Warning
UnhealthyEvaluations :
Unhealthy event: SourceId='System.RA', Property='ReplicaCloseStatus', HealthState='Warning',
ConsiderWarningAsError=false.
HealthEvents :
SourceId : System.RA
Property : ReplicaCloseStatus
HealthState : Warning
SequenceNumber : 131483565611258984
SentAt : 8/28/2017 1:16:01 AM
ReceivedAt : 8/28/2017 1:16:03 AM
TTL : Infinite
Description : Replica had multiple failures during close on _Node_1. The application
host has crashed.
For more information see: https://aka.ms/sfhealth
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Warning = 8/28/2017 1:16:03 AM, LastOk = 1/1/0001 12:00:00 AM
Omkonfiguration
Den här egenskapen används för att ange när en replik som utför en omkonfiguration identifierar att omkonfigurationen har fastnat eller fastnat. Den här hälsorapporten kan finnas på den replik vars aktuella roll är primär, förutom vid omkonfiguration av primär växling, där den kan finnas på den replik som degraderas från primär till aktiv sekundär.
Omkonfigurationen kan fastna av någon av följande orsaker:
En åtgärd på den lokala repliken, samma replik som den som utför omkonfigurationen, slutförs inte. I det här fallet kan undersökning av hälsorapporter på den här repliken från andra komponenter, System.RAP eller System.RE, ge ytterligare information.
En åtgärd slutförs inte på en fjärrreplik. Repliker för vilka åtgärder väntar visas i hälsorapporten. Ytterligare undersökning bör göras om hälsorapporter för dessa fjärrrepliker. Det kan också finnas kommunikationsproblem mellan den här noden och fjärrnoden.
I sällsynta fall kan omkonfigurationen fastna på grund av kommunikation eller andra problem mellan den här noden och Redundanshanteraren tjänsten.
- SourceId: System.RA
- Egenskap: Omkonfiguration.
- Nästa steg: Undersök lokala repliker eller fjärrrepliker beroende på beskrivningen av hälsorapporten.
I följande exempel visas en hälsorapport där en omkonfiguration har fastnat på den lokala repliken. I det här exemplet beror det på att en tjänst inte respekterar annulleringstoken.
PS C:\> Get-ServiceFabricReplicaHealth -PartitionId 9a0cedee-464c-4603-abbc-1cf57c4454f3 -ReplicaOrInstanceId 131483600074836703
PartitionId : 9a0cedee-464c-4603-abbc-1cf57c4454f3
ReplicaId : 131483600074836703
AggregatedHealthState : Warning
UnhealthyEvaluations :
Unhealthy event: SourceId='System.RA', Property='Reconfiguration', HealthState='Warning',
ConsiderWarningAsError=false.
HealthEvents :
SourceId : System.RA
Property : Reconfiguration
HealthState : Warning
SequenceNumber : 131483600309264482
SentAt : 8/28/2017 2:13:50 AM
ReceivedAt : 8/28/2017 2:13:57 AM
TTL : Infinite
Description : Reconfiguration is stuck. Waiting for response from the local replica
For more information see: https://aka.ms/sfhealth
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Warning = 8/28/2017 2:13:57 AM, LastOk = 1/1/0001 12:00:00 AM
I följande exempel visas en hälsorapport där en omkonfiguration har fastnat och väntar på ett svar från två fjärrrepliker. I det här exemplet finns det tre repliker i partitionen, inklusive den aktuella primära repliken.
PS C:\> Get-ServiceFabricReplicaHealth -PartitionId 579d50c6-d670-4d25-af70-d706e4bc19a2 -ReplicaOrInstanceId 131483956274977415
PartitionId : 579d50c6-d670-4d25-af70-d706e4bc19a2
ReplicaId : 131483956274977415
AggregatedHealthState : Warning
UnhealthyEvaluations :
Unhealthy event: SourceId='System.RA', Property='Reconfiguration', HealthState='Warning', ConsiderWarningAsError=false.
HealthEvents :
SourceId : System.RA
Property : Reconfiguration
HealthState : Warning
SequenceNumber : 131483960376212469
SentAt : 8/28/2017 12:13:57 PM
ReceivedAt : 8/28/2017 12:14:07 PM
TTL : Infinite
Description : Reconfiguration is stuck. Waiting for response from 2 replicas
Pending Replicas:
P/I Down 40 131483956244554282
S/S Down 20 131483956274972403
For more information see: https://aka.ms/sfhealth
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Warning = 8/28/2017 12:07:37 PM, LastOk = 1/1/0001 12:00:00 AM
Den här hälsorapporten visar att omkonfigurationen har fastnat i väntan på ett svar från två repliker:
P/I Down 40 131483956244554282
S/S Down 20 131483956274972403
För varje replik ges följande information:
- Tidigare konfigurationsroll
- Aktuell konfigurationsroll
- Repliktillstånd
- Nod-ID
- Replik-ID
Så här avblockerar du omkonfigurationen:
- De repliker som är nere bör tas upp.
- De inbyggda replikerna bör slutföra bygget och övergången till klar.
Långsamt tjänst-API-anrop
System.RAP och System.Replicator rapporterar en varning om ett anrop till användartjänstkoden tar längre tid än den konfigurerade tiden. Varningen rensas när anropet har slutförts.
- SourceId: System.RAP eller System.Replicator
- Egenskap: Namnet på det långsamma API:et. Beskrivningen innehåller mer information om när API:et har väntat.
- Nästa steg: Undersök varför anropet tar längre tid än förväntat.
I följande exempel visas hälsohändelsen från System.RAP för en tillförlitlig tjänst som inte respekterar annulleringstoken i RunAsync:
PS C:\> Get-ServiceFabricReplicaHealth -PartitionId 5f6060fb-096f-45e4-8c3d-c26444d8dd10 -ReplicaOrInstanceId 131483966141404693
PartitionId : 5f6060fb-096f-45e4-8c3d-c26444d8dd10
ReplicaId : 131483966141404693
AggregatedHealthState : Warning
UnhealthyEvaluations :
Unhealthy event: SourceId='System.RA', Property='Reconfiguration', HealthState='Warning', ConsiderWarningAsError=false.
HealthEvents :
SourceId : System.RAP
Property : IStatefulServiceReplica.ChangeRole(S)Duration
HealthState : Warning
SequenceNumber : 131483966663476570
SentAt : 8/28/2017 12:24:26 PM
ReceivedAt : 8/28/2017 12:24:56 PM
TTL : Infinite
Description : The api IStatefulServiceReplica.ChangeRole(S) on _Node_1 is stuck. Start Time (UTC): 2017-08-28 12:23:56.347.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Warning = 8/28/2017 12:24:56 PM, LastOk = 1/1/0001 12:00:00 AM
Egenskapen och texten anger vilket API som har fastnat. Nästa steg att vidta för olika fastnade API:er är olika. Alla API:er på IStatefulServiceReplica eller IStatelessServiceInstance är vanligtvis en bugg i tjänstkoden. I följande avsnitt beskrivs hur dessa översätts till den Reliable Services modellen:
IStatefulServiceReplica.Open: Den här varningen anger att ett anrop till , , eller om
CreateServiceInstanceListenersICommunicationListener.OpenAsyncdet åsidosätts,OnOpenAsynchar fastnat.IStatefulServiceReplica.Close och IStatefulServiceReplica.Abort: Det vanligaste fallet är en tjänst som inte respekterar den annulleringstoken som skickas till
RunAsync. Det kan också varaICommunicationListener.CloseAsyncatt , eller om åsidosätts , harOnCloseAsyncfastnat.IStatefulServiceReplica.ChangeRole(S) och IStatefulServiceReplica.ChangeRole(N): Det vanligaste fallet är en tjänst som inte respekterar den annulleringstoken som skickas till
RunAsync. I det här scenariot är den bästa lösningen att starta om repliken.IStatefulServiceReplica.ChangeRole(P): Det vanligaste fallet är att tjänsten inte har returnerat någon uppgift från
RunAsync.
Andra API-anrop som kan fastna finns i IReplicator-gränssnittet. Exempel:
IReplicator.CatchupReplicaSet: Den här varningen anger en av två saker. Det finns inte tillräckligt med repliker. Om du vill se om så är fallet tittar du på replikstatusen för replikerna i partitionen eller System.FM hälsorapporten för en omkonfiguration som har fastnat. Eller så bekräftar inte replikerna åtgärder. PowerShell-cmdleten
Get-ServiceFabricDeployedReplicaDetailkan användas för att fastställa förloppet för alla repliker. Problemet ligger hos repliker varsLastAppliedReplicationSequenceNumbervärde ligger bakom det primäraCommittedSequenceNumbervärdet.IReplicator.BuildReplica( <Remote ReplicaId> ): Den här varningen anger ett problem i byggprocessen. Mer information finns i Repliklivscykel. Det kan bero på en felaktig konfiguration av replikatorns adress. Mer information finns i Konfigurera tillståndsful Reliable Services och Ange resurser i ett tjänstmanifest. Det kan också vara ett problem på fjärrnoden.
Hälsorapporter för replikatorsystem
Replikeringskön är full: System.Replicator rapporterar en varning när replikeringskön är full. På den primära blir replikeringskön vanligtvis full eftersom en eller flera sekundära repliker tar lång tid på sig att bekräfta åtgärder. På den sekundära sker detta vanligtvis när tjänsten är långsam med att tillämpa åtgärderna. Varningen rensas när kön inte längre är full.
- SourceId: System.Replicator
- Egenskap: PrimaryReplicationQueueStatus eller SecondaryReplicationQueueStatus, beroende på replikrollen.
- Nästa steg: Om rapporten finns på den primära, kontrollerar du anslutningen mellan noderna i klustret. Om alla anslutningar är felfria kan det finnas minst en långsam sekundär med hög diskfördröjning för att tillämpa åtgärder. Om rapporten finns på den sekundära bör du först kontrollera diskanvändningen och prestandan på noden. Kontrollera sedan den utgående anslutningen från den långsamma noden till den primära.
RemoteReplicatorConnectionStatus: System.Replicator på den primära repliken rapporterar en varning när anslutningen till en sekundär (fjärrreplikator) inte är felfri. Fjärrreplikatorns adress visas i rapportens meddelande, vilket gör det enklare att identifiera om fel konfiguration skickades eller om det finns nätverksproblem mellan replikatorerna.
- SourceId: System.Replicator
- Egenskap: RemoteReplicatorConnectionStatus.
- Nästa steg: Kontrollera felmeddelandet och kontrollera att fjärrreplikatoradressen är korrekt konfigurerad. Om fjärrreplikatorn till exempel öppnas med lyssnaradressen "localhost" kan den inte nås utifrån. Om adressen ser korrekt ut kontrollerar du anslutningen mellan den primära noden och fjärradressen för att hitta eventuella nätverksproblem.
Replikeringskön är full
System.Replicator rapporterar en varning när replikeringskön är full. På den primära blir replikeringskön vanligtvis full eftersom en eller flera sekundära repliker tar lång tid att bekräfta åtgärder. På den sekundära sker detta vanligtvis när tjänsten är långsam med att tillämpa åtgärderna. Varningen rensas när kön inte längre är full.
- SourceId: System.Replicator
- Egenskap: PrimaryReplicationQueueStatus eller SecondaryReplicationQueueStatus, beroende på replikrollen.
Långsamma namngivningsåtgärder
System.NamingService rapporterar hälsotillståndet på den primära repliken när en namngivningsåtgärd tar längre tid än vad som är acceptabelt. Exempel på namngivningsåtgärder är CreateServiceAsync eller DeleteServiceAsync. Fler metoder finns under InfrastrukturClient. De finns till exempel under tjänsthanteringsmetoder eller egenskapshanteringsmetoder.
Anteckning
Namngivningstjänsten matchar tjänstnamnen till en plats i klustret. Användare kan använda den för att hantera tjänstnamn och egenskaper. Det är en Service Fabric partitionerad-ständiga tjänst. En av partitionerna representerar auktoritetsägaren, som innehåller metadata om alla Service Fabric namn och tjänster. De Service Fabric mappas till olika partitioner, som kallas namnägare partitioner, så tjänsten är utökningsbar. Läs mer om namngivningstjänsten.
När en namngivningsåtgärd tar längre tid än förväntat flaggas åtgärden med en varningsrapport på den primära repliken av namngivningstjänstens partition som fungerar som åtgärd. Om åtgärden slutförs rensas varningen. Om åtgärden slutförs med ett fel innehåller hälsorapporten information om felet.
- SourceId: System.NamingService
- Egenskap: Börjar med prefixet "Duration_" och identifierar den långsamma åtgärden och Service Fabric som åtgärden tillämpas på. Om du till exempel skapar en tjänst vid namn fabric:/MyApp/MyService tar för lång tid, är egenskapen Duration_AOCreateService.fabric:/MyApp/MyService. "AO" pekar på rollen för namngivningspartitionen för det här namnet och åtgärden.
- Nästa steg: Kontrollera varför namngivningsåtgärden misslyckas. Varje åtgärd kan ha olika rotorsaker. Till exempel kan borttagningstjänsten ha fastnat. Tjänsten kan ha fastnat eftersom programvärden fortsätter att krascha på en nod på grund av en användarbugg i tjänstkoden.
I följande exempel visas en åtgärd för att skapa tjänsten. Åtgärden tog längre tid än den konfigurerade varaktigheten. "AO" försöker och skickar arbete till "NEJ". "NEJ" slutförde den senaste åtgärden med TIMEOUT. I det här fallet är samma replik primär för rollerna "AO" och "NO".
PartitionId : 00000000-0000-0000-0000-000000001000
ReplicaId : 131064359253133577
AggregatedHealthState : Warning
UnhealthyEvaluations :
Unhealthy event: SourceId='System.NamingService', Property='Duration_AOCreateService.fabric:/MyApp/MyService', HealthState='Warning', ConsiderWarningAsError=false.
HealthEvents :
SourceId : System.RA
Property : State
HealthState : Ok
SequenceNumber : 131064359308715535
SentAt : 4/29/2016 8:38:50 PM
ReceivedAt : 4/29/2016 8:39:08 PM
TTL : Infinite
Description : Replica has been created.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 4/29/2016 8:39:08 PM, LastWarning = 1/1/0001 12:00:00 AM
SourceId : System.NamingService
Property : Duration_AOCreateService.fabric:/MyApp/MyService
HealthState : Warning
SequenceNumber : 131064359526778775
SentAt : 4/29/2016 8:39:12 PM
ReceivedAt : 4/29/2016 8:39:38 PM
TTL : 00:05:00
Description : The AOCreateService started at 2016-04-29 20:39:08.677 is taking longer than 30.000.
RemoveWhenExpired : True
IsExpired : False
Transitions : Error->Warning = 4/29/2016 8:39:38 PM, LastOk = 1/1/0001 12:00:00 AM
SourceId : System.NamingService
Property : Duration_NOCreateService.fabric:/MyApp/MyService
HealthState : Warning
SequenceNumber : 131064360657607311
SentAt : 4/29/2016 8:41:05 PM
ReceivedAt : 4/29/2016 8:41:08 PM
TTL : 00:00:15
Description : The NOCreateService started at 2016-04-29 20:39:08.689 completed with FABRIC_E_TIMEOUT in more than 30.000.
RemoveWhenExpired : True
IsExpired : False
Transitions : Error->Warning = 4/29/2016 8:39:38 PM, LastOk = 1/1/0001 12:00:00 AM
DeployedApplication system health reports
System.Hosting är auktoriteten för distribuerade entiteter.
Aktivering
System.Hosting rapporterar som OK när ett program har aktiverats på noden. Annars rapporterar den ett fel.
- SourceId: System.Hosting
- Egenskap: Aktivering, inklusive versionen för utrullningen.
- Nästa steg: Om programmet är felaktigt undersöker du varför aktiveringen misslyckades.
I följande exempel visas en lyckad aktivering:
PS C:\> Get-ServiceFabricDeployedApplicationHealth -NodeName _Node_1 -ApplicationName fabric:/WordCount -ExcludeHealthStatistics
ApplicationName : fabric:/WordCount
NodeName : _Node_1
AggregatedHealthState : Ok
DeployedServicePackageHealthStates :
ServiceManifestName : WordCountServicePkg
ServicePackageActivationId :
NodeName : _Node_1
AggregatedHealthState : Ok
HealthEvents :
SourceId : System.Hosting
Property : Activation
HealthState : Ok
SequenceNumber : 131445249083836329
SentAt : 7/14/2017 4:55:08 PM
ReceivedAt : 7/14/2017 4:55:14 PM
TTL : Infinite
Description : The application was activated successfully.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 7/14/2017 4:55:14 PM, LastWarning = 1/1/0001 12:00:00 AM
Ladda ned
System.Hosting rapporterar ett fel om nedladdningen av programpaketet misslyckas.
- SourceId: System.Hosting
- Egenskap: Ladda ned , inklusive versionen för utrullningen.
- Nästa steg: Undersök varför nedladdningen misslyckades på noden.
DeployedServicePackage- systemhälsorapporter
System.Hosting är auktoriteten för distribuerade entiteter.
Aktivering av tjänstpaket
System.Hosting rapporterar som OK om aktiveringen av tjänstpaketet på noden lyckas. Annars rapporterar den ett fel.
- SourceId: System.Hosting
- Egenskap: Aktivering.
- Nästa steg: Undersök varför aktiveringen misslyckades.
Aktivering av kodpaket
System.Hosting rapporterar som OK för varje kodpaket om aktiveringen lyckas. Om aktiveringen misslyckas visas en varning som konfigurerat. Om CodePackage inte kan aktiveras eller avslutas med ett fel som är större än det konfigurerade CodePackageHealthErrorThreshold rapporterar värdtjänster ett fel. Om ett tjänstpaket innehåller flera kodpaket genereras en aktiveringsrapport för vart och ett.
- SourceId: System.Hosting
- Egenskap: Använder prefixet CodePackageActivation och innehåller namnet på kodpaketet och startpunkten som CodePackageActivation:CodePackageName:SetupEntryPoint/EntryPoint. Till exempel CodePackageActivation:Code:SetupEntryPoint.
Registrering av tjänsttyp
System.Hosting rapporterar som OK om tjänsttypen har registrerats. Den rapporterar ett fel om registreringen inte har gjorts i tid, som konfigurerats med hjälp av ServiceTypeRegistrationTimeout. Om körningen stängs avregistreras tjänsttypen från noden och värdtjänsten rapporterar en varning.
- SourceId: System.Hosting
- Egenskap: Använder prefixet ServiceTypeRegistration och innehåller namnet på tjänsttypen. Till exempel ServiceTypeRegistration:FileStoreServiceType.
I följande exempel visas ett felfritt distribuerat tjänstpaket:
PS C:\> Get-ServiceFabricDeployedServicePackageHealth -NodeName _Node_1 -ApplicationName fabric:/WordCount -ServiceManifestName WordCountServicePkg
ApplicationName : fabric:/WordCount
ServiceManifestName : WordCountServicePkg
ServicePackageActivationId :
NodeName : _Node_1
AggregatedHealthState : Ok
HealthEvents :
SourceId : System.Hosting
Property : Activation
HealthState : Ok
SequenceNumber : 131445249084026346
SentAt : 7/14/2017 4:55:08 PM
ReceivedAt : 7/14/2017 4:55:14 PM
TTL : Infinite
Description : The ServicePackage was activated successfully.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 7/14/2017 4:55:14 PM, LastWarning = 1/1/0001 12:00:00 AM
SourceId : System.Hosting
Property : CodePackageActivation:Code:EntryPoint
HealthState : Ok
SequenceNumber : 131445249084306362
SentAt : 7/14/2017 4:55:08 PM
ReceivedAt : 7/14/2017 4:55:14 PM
TTL : Infinite
Description : The CodePackage was activated successfully.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 7/14/2017 4:55:14 PM, LastWarning = 1/1/0001 12:00:00 AM
SourceId : System.Hosting
Property : ServiceTypeRegistration:WordCountServiceType
HealthState : Ok
SequenceNumber : 131445249088096842
SentAt : 7/14/2017 4:55:08 PM
ReceivedAt : 7/14/2017 4:55:14 PM
TTL : Infinite
Description : The ServiceType was registered successfully.
RemoveWhenExpired : False
IsExpired : False
Transitions : Error->Ok = 7/14/2017 4:55:14 PM, LastWarning = 1/1/0001 12:00:00 AM
Ladda ned
System.Hosting rapporterar ett fel om nedladdningen av tjänstpaketet misslyckas.
- SourceId: System.Hosting
- Egenskap: Ladda ned , inklusive versionen för utrullningsversionen.
- Nästa steg: Undersök varför nedladdningen misslyckades på noden.
Uppgraderingsverifiering
System.Hosting rapporterar ett fel om verifieringen under uppgraderingen misslyckas eller om uppgraderingen misslyckas på noden.
- SourceId: System.Hosting
- Egenskap: Använder prefixet FabricUpgradeValidation och innehåller uppgraderingsversionen.
- Beskrivning: Pekar på det fel som påträffades.
Odefinierad nodkapacitet för resursstyrningsmått
System.Hosting rapporterar en varning om nodkapaciteter inte har definierats i klustermanifestet och konfigurationen för automatisk identifiering är inaktiverad. Service Fabric en hälsovarning när tjänstpaketet som använder resursstyrningsregister på en angiven nod.
- SourceId: System.Hosting
- Egenskap: ResourceGovernance.
- Nästa steg: Det bästa sättet att lösa det här problemet är att ändra klustermanifestet för att aktivera automatisk identifiering av tillgängliga resurser. Ett annat sätt är att uppdatera klustermanifestet med korrekt angivna nodkapaciteter för dessa mått.