B22: прикладное логирование vector.* + администрирование в доках (по образцу РВС)
- backend/logging_setup.py: setup_logging() (stdout INFO + файл /tmp/vector/vector.log,
ротация 5×2 МБ, VectorLOGLEVEL/VectorLOGFILE/VectorLOGDIR), get_logger('vector.*')
- события: vector.analyze (матрасчёт с длительностью), vector.auth (login_ok/failed/
lockout), vector.audit (каждая запись), vector.contour (ok/failed/rejected),
vector.operations (operation_complete), vector.geocode (успех/timeout/ошибка)
- существующие логгеры переведены в namespace vector.* (geo, geo.osm, rules, water, admin)
- README §13а: таблица наблюдаемых событий + правила (без ПДн/секретов)
- SETUP_GUIDE: §15 RPO/RTO + backup≠restore, §16 grep по vector.*, §17 диагностика
по цепочкам (БД, 500, fallback-зоны, вход), §17а чек-лист передачи проекта
- DEPLOY.md: вместо устаревшего дубля — ссылка на актуальные доки + шпаргалка стенда
- тесты: 239 passed
This commit is contained in:
@@ -42,7 +42,7 @@ OVERPASS_URLS = [
|
||||
]
|
||||
OVERPASS_URL = OVERPASS_URLS[0] # обратная совместимость для импортов
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
logger = logging.getLogger('vector.geo')
|
||||
|
||||
# --- Overpass circuit breaker ---------------------------------------------
|
||||
# build_search_zones issues ~128 Overpass calls per analysis. When the host has
|
||||
|
||||
@@ -16,7 +16,7 @@ from typing import Any, Optional
|
||||
from sqlalchemy import create_engine, text
|
||||
from sqlalchemy.engine import Engine
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
logger = logging.getLogger('vector.geo.osm')
|
||||
|
||||
_PG_URL = os.getenv('DATABASE_URL', 'postgresql://postgres:postgres@postgres:5432/vector_mchs')
|
||||
if _PG_URL.startswith('postgresql+asyncpg://'):
|
||||
|
||||
@@ -15,7 +15,7 @@ from pydantic import BaseModel, Field
|
||||
from services.geo_service import build_search_zones
|
||||
from services.scoring_service import WeightedScorer
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
logger = logging.getLogger('vector.rules')
|
||||
|
||||
|
||||
class PrimaryZone(BaseModel):
|
||||
|
||||
Reference in New Issue
Block a user