
ajay150313/slo-impact
API developmentЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
Пользовательско-взвешенная панель SLO - измеряет истинное время безотказной работы 99,99% по фактическому воздействию клиентов, а не по сырой доступности
Обзор
Измерьте истинное время безотказной работы на 99,99% по фактическому воздействию клиентов, а не только по сырой доступности. Каждый SRE знает формулу: (total time − downtime) / total time. Но эта метрика относится идентично к . Когда ваша платформа oncall показала 99,99%, это означало, что ваши клиенты испытали 99,99% доступности? Или просто ваша инфраструктура выросла на 99,99%? Время безотказной работы отсчитывает каждую минуту. Воздействовать на весы безотказной работы, которые были затронуты и был ли это пик трафика. Опубликовано с демо-коллектора in-repo (синтетическая банковская платформа, нет данных о клиентах в реальном времени). Начните с docker-compose up или Slo-impact и откройте http://localhost:8080. Для каждого инцидента мы фиксируем два дополнительных измерения: Отключение в 3 часа утра на 8% трафика, затрагивающее 5% пользователей, способствует только тому, что такое же отключение будет способствовать на пике. Этот разрыв — между тем, что ваши отчеты об инфраструктуре и тем, что чувствуют клиенты — имеет значение для целостности SLO. Если ваш SLO никогда не нарушался, это не SLO.
Обзор (машинный перевод)
** Панель приборов SLO с эффектом пользователя** Измерьте *истинное * 99,99% времени безотказной работы по фактическому воздействию на клиента, а не только по сырой доступности.
##Проблема доступности сырья
Каждый из них знает свою формулу: Но эта метрика рассматривает отключение **3 AM, затрагивающее 3% пользователей **, идентично с отключением. полуденное отключение, затрагивающее всех пользователей при пиковой нагрузке.
Когда ваша платформа oncall показала 99.99%, это означало, что ваши *клиенты * испытали
Доступность 99,99%? Или просто ваша инфраструктура выросла на 99,99%?
** - ответ на реальный вопрос. **
Архитектура
Время безотказной работы отсчитывает каждую минуту. Воздействовать на весы безотказной работы, которые были затронуты и был ли это пик трафика.
Демо приборная панель
Опубликовано с демо-коллектора in-repo (синтетическая банковская платформа, нет данных о клиентах в реальном времени).
Начните с docker-compose up или slo-impact и откройте http://localhost:8080.
Как это работает
Для каждого инцидента мы фиксируем два дополнительных измерения:
Измерение - значение
[скрыто] [скрыто]
| user_fraction | Фракция базы пользователей, фактически затронутая (0–1) |
traffic_weight | Трафик во время инцидента ÷ базовый трафик |
** Время простоя пользователя в случае инцидента:**
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
slo-impact
User-impact-weighted SLO dashboard.
Measure true 99.99% uptime by actual customer exposure — not just raw availability.
The problem with raw availability
Every SRE knows the formula: (total_time − downtime) / total_time.
But that metric treats a 3 AM outage affecting 3% of users identically to a
noon outage affecting all users at peak load.
When your oncall platform showed 99.99%, did it mean your customers experienced
99.99% availability? Or just that your infrastructure was up 99.99% of the time?
slo-impact answers the real question.
Architecture
Raw uptime counts every minute. Impact uptime weights who was affected and whether it was peak traffic.
Demo dashboard
Rendered from the in-repo demo collector (synthetic banking platform, no live customer data).
Start it with docker-compose up or slo-impact and open http://localhost:8080.
How it works
For each incident we capture two extra dimensions:
| Dimension | Meaning |
|---|---|
user_fraction |
Fraction of the user base actually affected (0–1) |
traffic_weight |
Traffic during incident ÷ baseline traffic |
User-impact downtime per incident:
impact_seconds = duration × user_fraction × traffic_weight
User-impact uptime:
user_impact_uptime = 1 − (Σ impact_seconds) / window_seconds
A 3 AM outage at 8% traffic affecting 5% of users contributes only 0.4% of what the same outage would contribute at peak. That gap — between what your infrastructure reports and what customers feel — is the number that matters for SLO integrity.
“If your SLO has never been breached, it isn’t an SLO. It’s a slogan.”
Quick start
Option 1 — Docker (recommended, zero setup)
git clone https://github.com/Ajay150313/slo-impact.git
cd slo-impact
docker-compose up
Open http://localhost:8080 — the dashboard runs with built-in synthetic data that mirrors a realistic digital banking platform. No Prometheus required.
Option 2 — pip
pip install slo-impact # once published to PyPI
# or from source:
pip install -e .
slo-impact # starts on http://0.0.0.0:8080
Option 3 — from source (development)
git clone https://github.com/Ajay150313/slo-impact.git
cd slo-impact
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
uvicorn slo_impact.main:app --reload --port 8080
Prometheus integration
Рекомендуемые инструменты
Попробуйте другой запрос или уберите фильтр.
Установка
npx skillfish add ajay150313/slo-impact