Clean up monitoring TG Python adapter

This commit is contained in:
Grendgi
2026-06-04 16:10:13 +03:00
parent 76f1be8b2a
commit 7a01eebb5b
12 changed files with 85 additions and 1968 deletions

View File

@@ -1,8 +1,9 @@
# monitoring-tg
Backend-сервис мониторинга Telegram-каналов для Portal. Python-часть отвечает
за MTProto/Telethon, API и опрос каналов, а фоновая AI-классификация вынесена
в Go-воркер. Сервис сохраняет сообщения в Postgres, раскладывает каналы по
Backend-сервис мониторинга Telegram-каналов для Portal. Публичный API и
AI-классификация работают на Go, Python оставлен только как внутренний
MTProto/Telethon-адаптер для авторизации, опроса каналов и дозагрузки медиа.
Сервис сохраняет сообщения в Postgres, раскладывает каналы по
вертикалям/подразделам и выполняет AI-анализ через OpenAI-compatible endpoint,
общий с другими сервисами портала.
@@ -37,6 +38,7 @@ POSTGRES_PASSWORD=parser
POSTGRES_DB=parser
PUBLIC_BASE_PATH=/api/monitoring-tg
PYTHON_BASE_URL=http://127.0.0.1:8001
LLM_ENABLED=true
LLM_BASE_URL=http://10.2.3.5:8002
@@ -57,18 +59,19 @@ LLM_CLASSIFIER_OWNER=go
kubectl apply -k k8s
```
Миграции выполняются entrypoint-ом контейнера перед запуском API.
Миграции выполняются entrypoint-ом контейнера перед запуском процессов.
## Структура
```text
src/parser_bot/
├── api/ FastAPI роуты + Pydantic-схемы
├── api/ внутренние FastAPI роуты Telegram-адаптера
├── db/ SQLAlchemy модели + сессии
├── scheduler/ APScheduler-воркер периодического опроса
├── telegram/ Telethon-клиент
├── config.py pydantic-settings
└── main.py FastAPI lifespan + uvicorn
└── main.py FastAPI lifespan + uvicorn для внутреннего адаптера
cmd/server/ Go API для Portal
cmd/classifier/ Go-воркер фоновой LLM-классификации сообщений
alembic/ миграции
k8s/ манифесты для портала