Question

Difficulty: HardDefining and Managing SLOs, SLIs, and Error Budgets

An enterprise payment processing service hosted on Google Cloud Platform has a defined Service Level Objective (SLO) of 99.95%99.95\% availability for its transaction validation API over a 3030-day rolling period. The Service Level Indicator (SLI) evaluates a request as good if it returns an HTTP 200 OK200\text{ OK} status code in under 500 ms500\text{ ms}.

During a 3030-day window, the service processes a total of 8,000,0008,000,000 requests. Due to a database failover event, 1,8001,800 requests fail with HTTP 500500 internal server errors. Additionally, 600600 requests successfully return HTTP 200200 but take longer than 500 ms500\text{ ms} to complete.

What is the maximum number of additional non-compliant requests the service can sustain before its total error budget for this 3030-day period is completely exhausted?

Answer: 1600 requests

Answer

1,600 requests
The total error budget is calculated as 0.05%0.05\% of 8,000,0008,000,000 total requests, which equals 4,0004,000 allowable non-compliant requests. Subtracting the 1,8001,800 HTTP 500 errors and 600600 latency threshold breaches (totaling 2,4002,400 bad requests) leaves exactly 1,6001,600 remaining requests in the error budget.

Step-by-Step Solution

1
Calculate the total error budget allowance in terms of total non-compliant requests for the 30-day window
Total Error Budget = 8,000,000×(100%99.95%)=8,000,000×0.0005=4,0008,000,000 \times (100\% - 99.95\%) = 8,000,000 \times 0.0005 = 4,000 requests.
An SLO of 99.95%99.95\% target success rate allows a failure rate of 0.05%0.05\% across all incoming requests within the evaluation window.
2
Determine the total consumed error budget by summing all bad requests according to the defined SLI criteria
Consumed Budget = 1,800 (explicit HTTP 500 errors)+600 (latency breaches above 500 ms)=2,4001,800\text{ (explicit HTTP 500 errors)} + 600\text{ (latency breaches above } 500\text{ ms)} = 2,400 non-compliant requests.
The SLI specifies that both HTTP errors and requests exceeding the 500 ms500\text{ ms} latency threshold count against the service reliability budget.
3
Calculate the remaining allowable non-compliant requests
Remaining Error Budget = 4,0002,400=1,6004,000 - 2,400 = 1,600 requests.
Subtracting the already consumed error budget from the initial total budget yields the remaining buffer before SLO violation occurs.

Key Concept

Calculating Error Budget Consumption using Request-based SLIs
Rate this question