Send-ServiceFabricDeployedServicePackageHealthReport

Invia un report sull'integrità in un pacchetto di servizio distribuito di Service Fabric.

Sintassi

Send-ServiceFabricDeployedServicePackageHealthReport
    [-ApplicationName] <Uri>
    [-ServiceManifestName] <String>
    [-NodeName] <String>
    [[-ServicePackageActivationId] <String>]
    -HealthState <HealthState>
    -SourceId <String>
    -HealthProperty <String>
    [-Description <String>]
    [-TimeToLiveSec <Int32>]
    [-RemoveWhenExpired]
    [-SequenceNumber <Int64>]
    [-Immediate]
    [-TimeoutSec <Int32>]
    [<CommonParameters>]

Descrizione

Il cmdlet Send-ServiceFabricDeployedServicePackageHealthReport invia un report di integrità in un pacchetto di servizio distribuito di Service Fabric.

Il pacchetto del servizio distribuito deve già esistere nell'archivio integrità. Per verificare se il servizio esiste, usare il cmdlet Get-ServiceFabricDeployedServicePackageHealth . Specificare il nome dell'applicazione, il nome del pacchetto del servizio e il nome del nodo. In alternativa, è possibile usare il cmdlet Get-ServiceFabricDeployedApplicationHealth . Specificare il nome dell'applicazione e il nome del nodo e controllare la sezione Stati di integrità del pacchetto di servizio distribuiti per trovare il pacchetto del servizio.

Il cmdlet invia il report dopo un intervallo specificato dal parametro HealthReportSendIntervalInSec del cmdlet Connect-ServiceFabricCluster . La connessione del cluster deve essere mantenuta attiva durante questo periodo. Il comando viene valutato nel client senza riferimento all'esecuzione nell'archivio integrità. Il report potrebbe non essere applicato nell'archivio integrità anche se il comando restituisce esito positivo. L'archivio integrità, ad esempio, può rifiutare il report a causa di un parametro non valido, come un numero di sequenza non aggiornato.

Per verificare se il report è stato applicato nell'archivio integrità, usare il cmdlet Get-ServiceFabricDeployedServicePackageHealth e verificare che il report venga visualizzato nella sezione HealthEvents .

Per gestire i cluster di Service Fabric, avviare Windows PowerShell usando l'opzione Esegui come amministratore. Prima di eseguire qualsiasi operazione in un cluster di Service Fabric, stabilire una connessione al cluster usando il cmdlet Connect-ServiceFabricCluster e quindi il cmdlet Get-ServiceFabricClusterConnection .

Esempio

Esempio 1: report di integrità degli errori con TTL infinito

PS C:\> Send-ServiceFabricDeployedServicePackageHealthReport -ApplicationName fabric:/MyApplication -NodeName "Node01" -ServiceManifestName "MyServiceManifest" -HealthProperty "Memory" -HealthState Error -SourceId "MyWatchdog"

Questo comando invia un report di integrità su un pacchetto di servizio distribuito per l'applicazione denominata fabric:/MyApplication nel nodo denominato Node01 per il manifesto del servizio denominato MyServiceManifest. Il report di integrità contiene informazioni sulla proprietà di integrità Memoria in uno stato di integrità degli errori dall'origine MyWatchdog, con TTL infinito. La descrizione non viene specificata e il numero di sequenza viene impostato automaticamente.

Esempio 2: Avviso di report valido per il TTL specificato e rimuoverlo alla scadenza

PS C:\> Send-ServiceFabricDeployedServicePackageHealthReport -ApplicationName fabric:/MyApplication -ServiceManifestName MyServiceManifest -NodeName "Node01" -HealthProperty "CustomSetup" -HealthState Warning -SourceId MyWatchdog -RemoveWhenExpired -Description "The setup has completed with some warnings." -TimeToLiveSec 10

Questo comando invia un report di integrità su un pacchetto di servizio distribuito per l'applicazione denominata fabric:/MyApplication per il manifesto del servizio denominato MyServiceManifest nel nodo denominato Node01. Il report di integrità contiene informazioni sulla proprietà di integrità CustomSetup in uno stato di integrità di avviso dall'origine MyWatchdog, con 10 secondi TTL. Dopo la scadenza del report, viene rimosso dall'archivio integrità e non influisce più sulla valutazione dell'integrità. Questo comando fornisce anche una descrizione dell'avviso.

Parametri

-ApplicationName

Specifica l'URI (Uniform Resource Identifier) di un'applicazione di Service Fabric. Il cmdlet invia un report di integrità per l'applicazione con l'URI specificato.

Tipo:Uri
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Description

Specifica informazioni leggibili sulla condizione che ha attivato il report. I parametri SourceId, HealthProperty e HealthState descrivono completamente il report.

La lunghezza massima della stringa per la descrizione è pari a 4096 caratteri. Se la stringa specificata è più lunga, viene troncata automaticamente. Quando viene troncata, la descrizione termina con un marcatore "[Troncato]", per indicare agli utenti che si sono verificati troncamenti. La dimensione totale della stringa è di 4096 caratteri, quindi vengono mantenuti meno di 4096 caratteri dalla stringa originale.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-HealthProperty

Specifica la proprietà del report. Insieme al parametro SourceId , questa proprietà identifica in modo univoco il report. Il report esegue l'override di tutti i report precedenti con gli stessi valori per i parametri SourceId e HealthProperty nella stessa entità.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-HealthState

Specifica un oggetto HealthState che rappresenta lo stato di integrità segnalato.

Tipo:HealthState
Valori accettati:Invalid, Ok, Warning, Error, Unknown
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Immediate

Specifica se il report deve essere inviato immediatamente all'archivio integrità. Questo è utile per i report critici che devono essere inviati appena possibile. Se non specificato, il report viene inviato in base alle impostazioni client di integrità. Verrà quindi inviato in batch in base alla configurazione di HealthReportSendInterval. Questa è l'impostazione consigliata perché consente al client di integrità di ottimizzare la segnalazione di messaggi sull'integrità all'archivio integrità e l'elaborazione di report sull'integrità. Per impostazione predefinita, il client di PowerShell fabric imposta HealthReportSentInterval su 0, quindi i report vengono inviati immediatamente.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-NodeName

Specifica il nome di un nodo di Service Fabric. Il cmdlet invia un report di integrità per un pacchetto di servizio distribuito nel nodo specificato.

Tipo:String
Posizione:2
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-RemoveWhenExpired

Indica che il report viene rimosso dall'archivio integrità alla scadenza. Se non si specifica questo parametro, l'entità viene considerata in stato Errore quando scade il tempo di report. I report rimossi quando scaduti possono essere usati solo per condizioni valide solo per un periodo di tempo o per cancellare i report dall'archivio integrità.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-SequenceNumber

Specifica il numero di sequenza associato al report di integrità. Se non si specifica un valore per questo parametro, il numero di sequenza viene impostato automaticamente. Se si specifica un numero di sequenza, tale valore deve essere superiore a qualsiasi numero di sequenza precedente impostato sullo stesso Oggetto SourceId e HealthProperty oppure il report viene rifiutato a causa dello stato di inattività.

Tipo:Int64
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-ServiceManifestName

Specifica il nome di un manifesto del servizio Service Fabric. Insieme a ApplicationName e NodeName, questo valore identifica in modo univoco l'entità integrità del pacchetto di servizio distribuita.

Tipo:String
Posizione:1
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-ServicePackageActivationId

ID attivazione del ServicePackage distribuito. Questa operazione può essere ottenuta usando la query Get-ServiceFabricDeployedServicePackage.

Se ServicePackageActivationMode specificato al momento della creazione del servizio (usando New-ServiceFabricService) è SharedProcess (o se non è specificato, nel qual caso viene predefinito SharedProcess), il valore di ServicePackageActivationId è sempre una stringa vuota e non deve essere specificata. Per altre informazioni sull'ID attivazione del pacchetto di servizio, vedere [Modello di hosting di Service Fabric][1].

Tipo:String
Posizione:3
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-SourceId

Specifica l'identificatore dell'origine che ha attivato il report.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-TimeoutSec

Specifica il periodo di timeout, in secondi, per l'operazione.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-TimeToLiveSec

Specifica l'ora in tempo reale (TTL) del report in secondi. Al termine del TTL, il report viene rimosso dall'archivio integrità se viene specificato il parametro RemoveWhenExpired . In caso contrario, l'entità viene valutata in caso di errore a causa del report scaduto. Il valore predefinito è Infinite.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

Input

System.Uri

System.String

System.Fabric.Health.HealthState

System.Nullable`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

System.Management.Automation.SwitchParameter

System.Nullable`1[[System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

Output

System.Object