The Send-ServiceFabricDeployedApplicationHealthReport cmdlet sends a health report for a health event on a Service Fabric application deployed on a node.
The deployed application must already exist in the health store.
To check whether the application exists on a node, use the Get-ServiceFabricDeployedApplicationHealth cmdlet.
Alternatively, you can use the Get-ServiceFabricApplicationHealth cmdlet and check the DeployedApplicationHealthStates section to find the node.
The cmdlet sends the report after an interval specified by the HealthReportSendIntervalInSec parameter of the Connect-ServiceFabricCluster cmdlet.
The cluster connection must be kept alive during this time.
The command is evaluated on the client without reference to running on the health store.
The report may not be applied in health store even if the command returns success.
For example, the health store may reject the report because of an invalid parameter, like a stale sequence number.
To see whether the report was applied in the health store, use the Get-ServiceFabricDeployedApplicationHealth cmdlet and check that the report appears in the HealthEvents section.
To manage Service Fabric clusters, start Windows PowerShell by using the Run as administrator option.
Before you perform any operation on a Service Fabric cluster, establish a connection to the cluster by using the Connect-ServiceFabricCluster cmdlet and then the Get-ServiceFabricClusterConnection cmdlet.
Examples
Example 1: Report Error health report with infinite TTL
This command sends a health report for the application named fabric:/MyApplication on the node named Node01 from the source MyWatchdog.
The health report contains information about the health property Availability in an Error health state, with infinite TTL.
This command sends a health report for the application named fabric:/MyApplication on the node named Node01 from the source MyWatchdog.
The health report contains information about the health property Availability in a Warning health state, with 10 seconds TTL.
The report is removed when it expires.
Parameters
-ApplicationName
Specifies the Uniform Resource Identifier (URI) of a Service Fabric application.
The cmdlet sends a health report for the application that has the URI that you specify.
Parameter properties
Type:
Uri
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
0
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
True
Value from remaining arguments:
False
-Description
Specifies human readable information about the condition that triggered the report.
The SourceId, HealthProperty, and HealthState parameters fully describe the report.
The maximum string length for the description is 4096 characters. If the provided string is longer, it is automatically truncated.
When truncated, the description ends with a marker, "[Truncated]", to indicate to users that truncation occurred. The total string size is 4096 characters, so less than 4096 characters from the original string are kept.
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
True
Value from remaining arguments:
False
-HealthProperty
Specifies the property of the report.
Together with the SourceId parameter, this property uniquely identifies the report.
The report overrides any previous reports with the same values for the SourceId and HealthProperty parameters on the same entity.
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
True
Value from remaining arguments:
False
-HealthState
Specifies a HealthState object that represents the reported health state.
Parameter properties
Type:
HealthState
Default value:
None
Accepted values:
Invalid, Ok, Warning, Error, Unknown
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
True
Value from remaining arguments:
False
-Immediate
Specifies whether the report should be sent to the health store immediately. This is useful for critical reports that should be sent as soon as possible.
If not specified, the report is sent based on the health client settings. Therefore, it will be batched according to the HealthReportSendInterval configuration. This is the recommended setting because it allows the health client to optimize health reporting messages to health store as well as health report processing.
By default, the Powershell fabric client sets HealthReportSentInterval to 0, so reports are sent immediately.
Parameter properties
Type:
SwitchParameter
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-NodeName
Specifies the name of a Service Fabric node.
The cmdlet sends a health report for the application on the node that you specify.
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
1
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
True
Value from remaining arguments:
False
-RemoveWhenExpired
Indicates that the report is removed from the health store when it expires.
If you do not specify this parameter, the entity is considered in Error state when the report time to live expires.
The reports that are removed when expired can be used for conditions that are only valid for a period of time or for clearing reports from Health Store.
Parameter properties
Type:
SwitchParameter
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
True
Value from remaining arguments:
False
-SequenceNumber
Specifies the sequence number associated with the health report.
If you do not specify a value for this parameter, the sequence number is set automatically.
If you specify a sequence number, that value must be higher than any previous sequence number set on the same SourceId and HealthProperty, or the report is rejected due to staleness.
Parameter properties
Type:
Int64
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
True
Value from remaining arguments:
False
-SourceId
Specifies the identifier of the source that triggered the report.
Parameter properties
Type:
String
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
True
Value from pipeline:
False
Value from pipeline by property name:
True
Value from remaining arguments:
False
-TimeoutSec
Specifies the time-out period, in seconds, for the operation.
Parameter properties
Type:
Int32
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
False
Value from remaining arguments:
False
-TimeToLiveSec
Specifies the Time to Live (TTL) of the report in seconds.
When the TTL expires, the report is removed from the health store if the RemoveWhenExpired parameter is specified.
Otherwise, the entity is evaluated at Error because of the expired report.
The default value is Infinite.
Parameter properties
Type:
Int32
Default value:
None
Supports wildcards:
False
DontShow:
False
Parameter sets
(All)
Position:
Named
Mandatory:
False
Value from pipeline:
False
Value from pipeline by property name:
True
Value from remaining arguments:
False
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable,
-InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable,
-ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see
about_CommonParameters.