Descreva a feature em detalhes
Python oferece uma ferramente chamada logging, que, de forma simples, oferece meios de criar logs do código. Sua configuração pode ser feita um módulo separado e todos os outros módulos dentro de um mesmo pacote podem aproveitar as configurações estabelecidas previamente.
Necessidade da feature:
Prints no meio do código são uteis para um debug primitivo durante o desenvolvimento, logging, por outro lado, oferece debugs sofisticados. Tendo em vista que o bot roda como um daemon, fica complicado ter acesso a esses prints em tempo de execução. A forma padrão de lidar com isso é implementando logs e joga-los em um local externo (arquivo de texto ou qualquer outra coisa).
Resumo da ópera: logging é o print dos cavalheiros.
Como ela pode ser implementada:
Costumo usar esse guia para conhecer a ferramenta, a documentação do logging ajuda bastante quanto ao que pode ou não ser logado e como logar. Para padrões sugiro o padrão Apache de loggins, claro, não é necessário fazer tal qual está nesse padrão, mas é um ótimo alicerce.
Contexto adicional:
Quanto mais cedo houver essa transição para logs, mais simples será de mantê-los, até porque dificilmente acertaremos um bom padrão na primeira tentativa e, mesmo com poucos módulos, atingir bons logs é uma tarefa cansativa na base da tentativa e erro.