Знакомьтесь, Gotcha

Gotcha — self-hosted observability в одном Go-бинарнике: ошибки, аптайм, трейсы, метрики и профили. Совместим со штатными Sentry SDK и принимает OTLP, так что переезд на свой сервер занимает столько же времени, сколько смена DSN в уже настроенном SDK.

Зачем

Событийные данные — трейсы, ошибки, метрики, профили — часто самые чувствительные логи в системе: в них попадают пользовательские данные, внутренние адреса, стек-трейсы с секретами. Gotcha даёт возможность держать всё это на собственной инфраструктуре, под своим контролем, вместо стороннего облака. Лицензия Apache-2.0, исходный код открыт.

Что внутри

Архитектура

Один бинарник gotcha с флагом --mode, который выбирает набор подсистем в конкретном процессе: ingest (приём событий), web (UI), uptime (проверки), probe (удалённая проба) или all — всё сразу, стандартный режим для небольшой self-hosted установки. Реляционное состояние хранится в PostgreSQL, событийные данные большого объёма — в ClickHouse, с настраиваемой retention по каждому типу сигнала. Поднимается через Docker Compose за одну команду.

Подробнее — в документации и на странице установки.