Хочу все знать
В проекте часто бывает некий data-flow который идет через ETL или даже отдельные серверы обогащения данных. Собственно и наш проект не исключение. Что было нужно? Данные из интернета летят в PostgreSQL, но только если в Redis не валяется хэш таких же. Далее несколько ETL проводит стандартный OLTP - OLAP преобразование и складывает все это в MongoDB - откуда клиент дергает эти данные и сравнивает их со своей PostgreSQL попутно складируя кэш в Redis. Все это периодически летает через RabbitMQ.Что бесило? DBeaver + MongoExpress + redis-cli все это в разных местах с разными учетками, экспресс постоянно падал по невыясненной причине, неправильный запрос в редиску подвисал, а затем улетал в космос. Мелькнула мысль: «ну почему никто не написал чего-то более стабильного и удобного?», - собственно это и стало драйвером выходного дня.Спасибо древним грекам, над названием долго думать не пришлось: Паноптикум - в оригинале «место откуда видно все», но также «сборище жутких и необычных артефактов».Собственно дальше все очень просто, можно читать, можно искать, можно обновить отдельную запись (если DevOps разрешит) собственно это не production-ready софт, а простой и надежный инструмент для QA и разрабов. Примитивная basic-auth которую обязательно надо прятать под TLS и желательно за корп-VPN, чтобы только свои могли запороть. Для прода и около можно сделать READ_ONLY - но тут каждый сам решает надо оно вообще ему или нет.Наконец-то можно проследить все преобразования данных и найти кто потерялся, можно открывать несколько вкладок, можно давать ссылку на конкретный объект. Ставится самым стандартным образом: берем образ - разворачиваем, ничего необычного. Читать далее