Ola gostaria de implementar logs no meu sistema sempre quando ocorrer alguma transação no banco de dados e gravar em uma tabela de log do sistema fiz uma classe mas bem basica
[code]public class EmpresasLogger implements GenericLogger {
private static final Logger log = Logger.getLogger(EmpresasLogger.class.getName());
public static Logger getLog() {
return log;
}
@PostPersist
public void logAddition(Object pc) {
getLog().log(Level.FINE,"Criado novo :" + ((Empresas) pc).getNome());
}
@PreRemove
public void logDeletion(Object pc) {
getLog().log(Level.WARNING,"Removido do banco :" + ((Empresas) pc).getNome());
}
}[/code]
esta é a melhor maneira de controlar log no sistema?
e aproveitando quando eu executo a aplicação em JPA + Hibernate ele varre todas as classes e a saida do console fica assim
26/05/2010 10:17:09 org.hibernate.cfg.annotations.Version <clinit>
INFO: Hibernate Annotations 3.3.1.GA
26/05/2010 10:17:09 org.hibernate.cfg.Environment <clinit>
INFO: Hibernate 3.2.5
26/05/2010 10:17:09 org.hibernate.cfg.Environment <clinit>
INFO: hibernate.properties not found
26/05/2010 10:17:09 org.hibernate.cfg.Environment buildBytecodeProvider
INFO: Bytecode provider name : cglib
26/05/2010 10:17:09 org.hibernate.cfg.Environment <clinit>
INFO: using JDK 1.4 java.sql.Timestamp handling
26/05/2010 10:17:09 org.hibernate.ejb.Version <clinit>
INFO: Hibernate EntityManager 3.3.2.GA
26/05/2010 10:17:09 org.hibernate.cfg.AnnotationBinder bindClass
INFO: Binding entity from annotated class: persistence.entity.Clientes
26/05/2010 10:17:09 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: Clientes.findAll => SELECT c FROM Clientes c
26/05/2010 10:17:09 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: Clientes.findByCgc => SELECT c FROM Clientes c WHERE c.cgc = :cgc
26/05/2010 10:17:09 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: Clientes.findByNome => SELECT c FROM Clientes c WHERE c.nome = :nome
26/05/2010 10:17:09 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: Clientes.findByInsEstadual => SELECT c FROM Clientes c WHERE c.insEstadual = :insEstadual
26/05/2010 10:17:09 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: Clientes.findByTelefone => SELECT c FROM Clientes c WHERE c.telefone = :telefone
26/05/2010 10:17:09 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: Clientes.findByFax => SELECT c FROM Clientes c WHERE c.f....
que configuração eu faço para que o JPA não mostre todas essas informações?
Obrigado.