Нужно делать это отдельным ботом, а лучше даже не ботом, а просто курлом дёргать API и засылать туда сообщения логов.
Из самого бота это лучше не делать, особенно если речь о неожиданных ошибках.
Ожидаемые (штатные) ошибки вполне можно слать из того же инстанса, где бот крутится.
Итак, подключаете стандартный logging, настраиваете отдельный хендлер, фильтрующий нужный уровень сообщений, настраиваете форматтер. чтобы полноценный отчет об ошибке сформатировать.
Можно поискать готовую либу такого хендлера, наверняка есть в pipy, а можно и самостоятельно заморочиться.
Но нужно аккруатно. Необходимо понимать, что какие-то ошибки, особенно в случае их неправильной обработки, могут выпадать очень и очень часто, отчего вашего бота, который постит эти ошибки, просто забанят.
UPD/
Как я и говорил, полно готовых хендлеров:
https://pypi.org/project/python-telegram-handler/
https://pypi.org/project/python-telegram-logger/
https://pypi.org/project/logging2telegram/
https://pypi.org/project/tglogger/