intermediate

Логи

Пишите структурированные, коррелированные, с redaction события: что сделал сервис и почему упал.

Логи описывают дискретные события: запросы, решения, сбои, retry и события безопасности. Production-логи должны быть структурированными, коррелированными, с редактированием чувствительных полей и поиском.

					logger.info({
  event: 'order_created',
  orderId,
  requestId: req.headers['x-request-id'],
  userId,
  durationMs,
});
				

| Практика | Зачем | |----------|-------| | Structured JSON | Машинный разбор и агрегация | | Request/correlation ID | Трассировка действия пользователя между сервисами | | Дисциплина уровней | Сигнал vs шум | | Redaction | Без утечек credentials и PII |

На интервью: уровни логов, поля контекста, correlation ID, редактирование PII, sampling, retention и почему неструктурированный console spam — не observability.

Типовые ошибки: секреты или полные payload в логах; всё на `info` топит инциденты.

Компромисс — диагностическая полнота против стоимости, приватности и signal-to-noise.

Чеклист:

  • Структурированные логи.
  • Корреляция запросов между сервисами.
  • Redaction чувствительных полей по умолчанию.
  • Политики retention и доступа.