Pull to refresh

MS SQL + Telegram =?

Reading time 2 min
Views 14K

image Привет, Хабр!


Мы с моим приятелем fedoref занимаемся разработкой и поддержкой решений на MS SQL.


Одной из наших проблем при работе с MS SQL было то, что без MS SQL Management Studio невозможно что-то сделать или проверить. А значит — всегда нужен под рукой компьютер и VPN в сеть клиента (или что посложнее). Нас это не устраивало — мы не всегда сидим перед монитором, а ситуации ингода требуют оперативности, особенно когда дело касается высоких нагрузок в real-time системах. Поэтому мы решили сделать телеграм-бота SQL. (Поискали готовые варианты на Github, но, увы, не нашли того, что нам подошло бы).


Штука оказалась удобной. Вот что она умеет:


  1. Для работы нужен только SQL сервер от 2016 и выше (никаких доп. сервисов поднимать не надо).
  2. Можно явно привязать своего бота к своему чату (как, есть в инструкции в репозитории). Т.е. никто кроме вас с вашим сервером общаться не сможет.
  3. Бот умеет выполнять SQL запросы и структурировано показывать результат:
    select
  4. Бот умеет выполнять быстрые команды (их можно сконфигурировать самостоятельно) и выводить результат:
    select
  5. Бот умеет показывать прогресс бар для долгих процессов (например backup/restore)
    backup
  6. Дополнительно:
    a. В комплект с ботом идет простая система мониторинга состояния MS SQL Server
    b. Бот берет из системы мониторинга критическую статистику и публикует в чат

Мы выложили исходники и инструкции по установке на github в открытый доступ.


Если кому-то этот инструмент окажется полезным — будем рады. И, конечно, искренне благодарны за обратную связь, контакты есть в репозитории.


П.С.
Хочу выразить благодарность t0rr, одному из мейнтейнеров aiogram — за консультацию и вдохновение на начальном этапе создания.


UPD (12.11.2020) Мы учли пожелания в комментариях, и добавили группу безопасности. Теперь писать запросы в бот могут только те, кто авторизован это делать.

Tags:
Hubs:
+11
Comments 17
Comments Comments 17

Articles