Отборочный этап соревнования по продуктовому программированию ФСП, осень 2023
- Python 97.9%
- Dockerfile 1.9%
- Shell 0.2%
| alarmist | ||
| config | ||
| db | ||
| playground | ||
| shared | ||
| tgbot | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| .python-version | ||
| build.sh | ||
| docker-compose.yaml | ||
| Dockerfile | ||
| LICENSE | ||
| playground-compose.yaml | ||
| pyproject.toml | ||
| README.md | ||
Кабачок
Запуск
- Создать
.envфайл с переменнымиPOSTGRES_PASSWORDиBOT_TOKEN. - Установить зависимости:
rye sync. - Собрать контейнеры:
./build.sh. - Запустить контейнеры:
docker-compose docker-compose.yaml up.
Для тестов можно использовать playground: docker-compose -f docker-compose.yaml -f playground-compose.yaml up.
Для получения более полной информации о системе с базой данный, необходимо установить на неё пакет postgresql-plpython3-16.
Текущие задачи
-
Довести все существующие alert-ы до рабочего состояния
- CPU Usage
- Disk space
- Active peers
- LWLOCK transactions
- Long transactions
- DB is unavailable
-
Рефакторинг бэкэнда (улучшение логики healthcheck) -
Redis (цель: динамика использования + графики) -
Генерация изображений на фронтэнде (Seaborn) -
Сделать рабочий конфиг в виде файла для быстрой загрузки и теста БД -
Возвращение uuid-а ошибки на фронт в случае неудачной работы сервиса -
Причесать сообщения на фронтэнде (Emoji) -
Выводить AlertType с эмодзи
Disk usage alert
- INSERTS
- Playground (забитый диск + низкий кэп)
Long transactions
- PG pause
- Playground
- Завершение долгих транзакций с бэкэнда (+ ручки)
- Отображение долгих транзакций + взаимодействие с ручками (завершить все долгие + завершение каждой по отдельности)
CPU Usage
- Нужны ресурсоемкие операции
- Playground (low CPU)