- Added new commands in the Makefile for restarting individual services: `restart-bot`, `restart-prometheus`, and `restart-grafana`. - Updated Prometheus and Grafana dashboard expressions for better metrics aggregation. - Removed the `main_with_metrics.py` file and integrated metrics handling directly into the main bot file. - Refactored middleware to improve metrics tracking and error handling across message and callback processing. - Optimized metrics recording with enhanced bucket configurations for better performance monitoring.
82 lines
3.0 KiB
Makefile
82 lines
3.0 KiB
Makefile
.PHONY: help build up down logs clean restart status
|
||
|
||
help: ## Показать справку
|
||
@echo "🐍 Telegram Bot - Доступные команды (Python 3.9):"
|
||
@echo ""
|
||
@echo "🔧 Основные команды:"
|
||
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}'
|
||
@echo ""
|
||
@echo "📊 Мониторинг:"
|
||
@echo " Prometheus: http://localhost:9090"
|
||
@echo " Grafana: http://localhost:3000 (admin/admin)"
|
||
|
||
build: ## Собрать все контейнеры с Python 3.9
|
||
docker-compose build
|
||
|
||
up: ## Запустить все сервисы с Python 3.9
|
||
docker-compose up -d
|
||
|
||
down: ## Остановить все сервисы
|
||
docker-compose down
|
||
|
||
logs: ## Показать логи всех сервисов
|
||
docker-compose logs -f
|
||
|
||
logs-bot: ## Показать логи бота
|
||
docker-compose logs -f telegram-bot
|
||
|
||
logs-prometheus: ## Показать логи Prometheus
|
||
docker-compose logs -f prometheus
|
||
|
||
logs-grafana: ## Показать логи Grafana
|
||
docker-compose logs -f grafana
|
||
|
||
restart: ## Перезапустить все сервисы (с пересборкой Python 3.9)
|
||
docker-compose down
|
||
docker-compose build
|
||
docker-compose up -d
|
||
|
||
restart-bot: ## Перезапустить только бота
|
||
docker-compose stop telegram-bot
|
||
docker-compose build telegram-bot
|
||
docker-compose up -d telegram-bot
|
||
|
||
restart-prometheus: ## Перезапустить только Prometheus
|
||
docker-compose stop prometheus
|
||
docker-compose up -d prometheus
|
||
|
||
restart-grafana: ## Перезапустить только Grafana
|
||
docker-compose stop grafana
|
||
docker-compose up -d grafana
|
||
|
||
status: ## Показать статус контейнеров
|
||
docker-compose ps
|
||
|
||
check-python: ## Проверить версию Python в контейнере
|
||
@echo "🐍 Проверяю версию Python в контейнере..."
|
||
@docker exec telegram-bot .venv/bin/python --version || echo "Контейнер не запущен"
|
||
|
||
test-compatibility: ## Тест совместимости с Python 3.8+
|
||
@echo "🐍 Тестирую совместимость с Python 3.8+..."
|
||
@python3 test_python38_compatibility.py
|
||
|
||
clean: ## Очистить все контейнеры и образы Python 3.9
|
||
docker-compose down -v --rmi all
|
||
docker system prune -f
|
||
|
||
|
||
|
||
start: build up ## Собрать и запустить все сервисы с Python 3.9
|
||
@echo "🐍 Python 3.9 контейнер собран и запущен!"
|
||
@echo "📊 Prometheus: http://localhost:9090"
|
||
@echo "📈 Grafana: http://localhost:3000 (admin/admin)"
|
||
@echo "🤖 Бот запущен в контейнере с Python 3.9"
|
||
@echo "📝 Логи: make logs"
|
||
|
||
start-script: ## Запустить через скрипт start_docker.sh
|
||
@echo "🐍 Запуск через скрипт start_docker.sh..."
|
||
@./start_docker.sh
|
||
|
||
stop: down ## Остановить все сервисы
|
||
@echo "🛑 Все сервисы остановлены"
|