Как лучше организовать event taxonomy для ошибок оплаты, чтобы аналитика могла быстро находить причины падения конверсии и не путать успех с ошибкой?

AЛогировать только системные logging-сообщения на устройстве без событий.
BДелать разные имена событий под каждую ошибку, например payment_error_timeout, payment_error_3ds.
CЛогировать payment_succeeded для успеха и payment_failed для ошибки с properties={'stage': '3ds', 'error_code': 'timeout', 'provider': 'bank'}.
DНе логировать ошибки, чтобы не «загрязнять» данные.
Правильный ответ. Разделение успеха и ошибки на разные event и явные properties делает data quality и диагностику лучше.

Разбор

Если смешивать успех и ошибки в одном событии или раздувать имена под каждую причину, отчёты становятся нестабильными и трудно валидируемыми. Отдельные payment_succeeded и payment_failed упрощают воронки и дают ясные точки для invariants. Свойства stage и error_code позволяют агрегировать причины и не терять детализацию. Это снижает время диагностики и делает instrumentation предсказуемой.

Проверь себя · 1/3разбор после ответа
Вы описываете event taxonomy для purchase_succeeded. Как лучше хранить сумму покупки в properties, чтобы избежать проблем data quality при агрегациях?
Тренировать продукт в Telegram

Ещё вопросы по теме «Инструментация и качество данных»