pub trait IStatelessServicePartition:
Send
+ Sync
+ 'static {
// Required methods
fn get_partition_info(&self) -> Result<ServicePartitionInformation>;
fn report_load(&self, metrics: &[LoadMetric]) -> Result<()>;
fn report_fault(&self, fault_type: FaultType) -> Result<()>;
fn report_move_cost(&self, move_cost: MoveCost) -> Result<()>;
fn report_partition_health(
&self,
health_info: &HealthInformation,
) -> Result<()>;
fn report_instance_health(
&self,
health_info: &HealthInformation,
) -> Result<()>;
}Expand description
Abstrction for IFStatelessServicePartition interface
Required Methods§
fn get_partition_info(&self) -> Result<ServicePartitionInformation>
Sourcefn report_load(&self, metrics: &[LoadMetric]) -> Result<()>
fn report_load(&self, metrics: &[LoadMetric]) -> Result<()>
Reports load for the current replica in the partition. Remarks: The reported metrics should correspond to those that are provided in the ServiceLoadMetricDescription as a part of the ServiceDescription that is used to create the service. Load metrics that are not present in the description are ignored. Reporting custom metrics allows Service Fabric to balance services that are based on additional custom information.
Sourcefn report_fault(&self, fault_type: FaultType) -> Result<()>
fn report_fault(&self, fault_type: FaultType) -> Result<()>
Enables the replica to report a fault to the runtime and indicates that it has encountered an error from which it cannot recover and must either be restarted or removed.
Sourcefn report_move_cost(&self, move_cost: MoveCost) -> Result<()>
fn report_move_cost(&self, move_cost: MoveCost) -> Result<()>
Reports the move cost for a replica. Remarks: Services can report move cost of a replica using this method. While the Service Fabric Resource Balances searches for the best balance in the cluster, it examines both load information and move cost of each replica. Resource balances will prefer to move replicas with lower cost in order to achieve balance.
Sourcefn report_partition_health(&self, health_info: &HealthInformation) -> Result<()>
fn report_partition_health(&self, health_info: &HealthInformation) -> Result<()>
Reports current partition health.
Sourcefn report_instance_health(&self, health_info: &HealthInformation) -> Result<()>
fn report_instance_health(&self, health_info: &HealthInformation) -> Result<()>
Reports health on the current stateless service instance of the partition.