Bibliotecas de Log

2008-10-09

Logging – guardar registos de actividades das aplicações – é uma tarefa extremamente importante no desenvolvimento de uma aplicação, e ajuda muito a resolver as dores de cabeça que vão surgindo. Eu tenho usado, nas minhas aplicações, algumas classes de log construídas de raiz – num caso escrevendo os registos para XML, noutro, para um ficheiro texto simples (CSV).

Mas na verdade, existem já alguns módulos pela web dedicados a esta tarefa. Algumas efectuam o registo apenas de erros das aplicações (.NET) como é o caso do Elmah que falei anteriormente, ou do Spacebin que é um serviço externo de armazenamento dos registos. A vantagem destes é que captam automaticamente os erros, sem necessitar de inserir código específico À tarefa – apenas uma entrada no ficheiro de configuração.

Mas num comentário que surgiu no post do Elmah (e que não tomei a devida atenção), estava referido o Nlog, um projecto aberto com suporte para diversos típos de registos (trace, debug, info, erro…) e múltiplos repositórios (dbs, ficheiros, serviços, etc…). Este parece muito completo e quero experimentar! A documentação parece bastante completa e intuitiva.

Outro similar ao NLog, mas que utiliza uma abordagem diferente em termos do esquema dos repositórios, é o log4net que faz parte dos serviços de log da Apache. Novamente, múltiplas tipos e repositórios de registo, e OpenSource.

Não havendo razão para construir algo especifico a uma aplicação, estas são, certamente óptimas soluções!