Debugar no cliente?

4 respostas
dm_thiago

Aqui na empresa estamos com um problema para debugar os erros (não estou falando só de exceções) que acontecem nos clientes (aplicação J2EE). Quando recebemos um erro, e não conseguimos simular a situação em nossa base, geralmente pegamos a base do cliente para debugar aqui na empresa mesmo.

Grande parte dos cliente tem bases pequenas e ainda podemos pegá-las, mas o problema é que as bases estão sempre crescendo e alguns já estão chegando no gB e pegá-las está ficando inviável.

Nosso jar é ofuscado, então debuggar lá simplesmente instalando um IDE também não é uma opção.

Alguem já passou por um problema parecido e conseguiu resolver?

4 Respostas

rod

vocês não usam um sistema de logs na aplicação?

dm_thiago

Sim, tem o log do JBoss, mas foi por isso que eu coloquei o “…(não estou falando só de exceções) …”.

Por exemplo, uma consulta não está exibindo todos os dados que deveria (um problema atual), mas somente 3 dados não estão sendo recuperados. Os que vieram antes e os que vieram depois e em todos os outros clientes assim como na nossa base retornam certo. Por que esses dados em específico não retornam eu não sei, até posso refazer a consulta, mas teria que enviar para o cliente sem nem testar porque aqui já estava retornando tudo certo.

fenrir

Mas o log não é apenas para exceções! É por isso que existem 6 níveis de log:
TRACE, DEBUG, INFO, WARN, ERROR e FATAL.

O log é que deve ser usado, primariamente, para debugar uma aplicação. Se é preciso recorrer ao debug de uma IDE, então é sinal de que, ou o problema é absurdamente complexo, ou o log não está bem feito.

Em 99.99% dos casos, pela minha experiência, cai na segunda opção.

D

Reproduzir o ambiente do cliente com 100% de fidelidade nem sempre é possível, temos um cliente por exemplo que todo o seu legado roda através de procs wrapadas, assim nem o nosso contato tem acesso as procs.

Precisamos criar procs fakes aqui no nosso ambiente mas quando dá algum problema mais sério tem que ir lá debugar.

Criado 27 de fevereiro de 2009
Ultima resposta 2 de mar. de 2009
Respostas 4
Participantes 4