Bom, como disse, tem uma classe genérica que poderá gerar nosso log. Essa classe é genérica, porque não depende apenas de uma classe. Essa classe serve para qualquer classe para que eu possa gerar o log.
Obs.: os arquivos gerados de log, geralmente são com a extensão
txt,
log ou
xml. Existe a opção de você gerar o seu log em XML e a partir daí, você pode criar um programinha para ler esse XML mostrando mais detalhes, mas aí vai da sua criatividade.
Minha classe que gera logs ficou assim:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Date;
public class geraLog
{
public void LogTxt(String nome,String classe)
{
File arquivoTxt = new File("/home/klone/log_programa.txt");
if(!arquivoTxt.exists())
{
try
{ //Cria o arquivo
arquivoTxt.createNewFile();
System.out.println("Arquivo criado");
//salva o arquivo
FileWriter writer = new FileWriter(arquivoTxt);
writer.write("Problema:" + nome+"\n");
writer.write("Classe:"+classe+"\n");
writer.write("Data:"+ new Date()+"\n");
writer.close();
System.out.println("Arquivo salvado");
}
catch (IOException e)
{
e.printStackTrace();
}
}
else
{
try
{
FileReader reader = new FileReader(arquivoTxt);
BufferedReader br = new BufferedReader(reader);
String linha = br.readLine();
FileWriter writer = new FileWriter(arquivoTxt);
while(linha != null)
{
writer.write(linha+"\n");
br.readLine();
linha = br.readLine();
}
br.close();
reader.close();
writer.write("Problema:" + nome+"\n");
writer.write("Classe:"+classe+"\n");
writer.write("Data:"+ new Date());
writer.close();
System.out.println("Arquivo salvado");
}
catch(IOException err)
{
err.printStackTrace();
}
}
}
}
Logo no começo, eu crio o arquivo responsável por gravar os erro. Pode-se também fazer com que gere vários arquivos de log, mas nesse exemplo, estarei mostrando como salvar todo os erros num arquivo só.
Como podemos ver, é um método que recebe a mensagem de erro e a classe onde ocorreu o erro.
Essa classe, nada mais é que manipulação de arquivos, onde verifico se o arquivo existe. Se não existir, crio o arquivo e salvo as informações. Se o arquivo existir, abro ele e adiciono mais informações ao final.
Outro dado importante, é que coloco a data e a hora da ocorrência do erro, um dado fundamental.
Assim gera-se nosso log de erro simples.
Conclusão
Logs de erros são fundamentais para um bom sistema estruturado.
Sem eles, fica difícil realizar manutenção no código. Além disso, deixa o usuário mais confiável, pois sabendo-se onde ocorreu o erro, pode-se concertá-lo mais rapidamente.
Logs são mais do que um arquivo falando onde que ocorreu um erro, são um meio de comunicação entre o software e o usuário final.