reliability
probe slo

# compute_slo

Computes the given SLO and return a list of outcomes for each error budget given policies.

Run it now
View details

Type | probe
Module | chaosreliably.activities.slo.probes
Name | compute_slo
Return | list

Usage

JSON

    {
      "name": "compute-slo",
      "type": "probe",
      "provider": {
        "type": "python",
        "module": "chaosreliably.activities.slo.probes",
        "func": "compute_slo",
        "arguments": {
          "slo": {},
          "config": {}
        }
      }
    }

YAML

    name: compute-slo
    provider:
      arguments:
        config: {}
        slo: {}
      func: compute_slo
      module: chaosreliably.activities.slo.probes
      type: python
    type: probe

Arguments

Name | Type | Default | Required | Title | Description
--- | --- | --- | --- | --- | ---
slo | mapping |  | Yes | SLO Configuration | SLO configuration as per https://github.com/google/slo-generator#slo-configuration
slo | mapping |  | Yes | SLI Backend Configuration | Backend configuration to read SLI from as per https://github.com/google/slo-generator#shared-configuration

Computes the given SLO and return a list of outcomes for each error budget policies in the config.

This is a wrapper around https://github.com/google/slo-generator so all of its documentation applies for the definition of the slo and config objects. The former contains the the SLO description while the latter describes where to source SLIs from and the error budget policies.

The most notable difference is that we disable any exporters so there is no need to define them.

Signature

    def compute_slo(
            slo: Dict[str, Any],
            config: Dict[str, Any],
            configuration: Dict[str, Dict[str, str]] = None,
            secrets: Dict[str, Dict[str, str]] = None) -> List[Dict[str, Any]]:
        pass

## Related starters

- reliability
  action load

  ## `inject_gradual_traffic_into_endpoint`

  Load traffic into the given endpoint.
- reliability
  probe load

  ## `Verify Latency during Load Test`

  Verify the latency of responses during a load test for a given percentile
- reliability
  probe load

  ## `load_test_result_field_should_be`

  Reads a load test result and compares the field’s value to be equal to the expected given value.