Como salvar uma resposta a comandos e como gerar arquivos a cada captura
5 respostas
V
vittorino
Sr.s, bom dia!
Vejam se podem me ajudar:
Tenho uma aplicação desktop que se conecta na minha plataforma e envia alguns comando que verificam o status do sistema, até aqui está funcionando. Eu preciso guardar a resposta destes comandos em um arquivo .txt a cada hora cheia, agora vem minha dificuldade. Como salvar a resposta e como gerar arquivos com a data e horário da captura. Ex. de nome: log201107232300.txt
vc pode usar shell script para criar o log… executar comandos diretos no sistema operacional… criando um arquivo com o nome q vc quiser… e com os dados dentro dele… nao eh minha especialidade mas fiz alguns exemplos criando arquivos txt e editando conteudo atravez de um shell script em linux… eh possivel fazer no windows tb… vc precisa fazer um script que va ate a pasta de log q vc definir… crie um arquivo txt e edite o conteudo dele jogando os logs pra dentro do txt…
todo esse script vc cria pelo java como string e de alguma forma vc executa no interpretador do sistema operacional… nao conheco mt do java… pode ser q exista alguma classe q ja faça isso… ou bem parecido com isso … mas o caminho tem essa base que te falei… espero ter ajudado abrass
V
vittorino
clauslk,
Essa alternativa não seria exatamente o que eu quero. São oito plataformas que eu tenho que colher essas informações, meu aplicativo se conecta em cada uma delas executa alguns comandos e agora eu preciso guardá-las a cada hora cheia em arquivos diferentes. Estou usando a biblioteca jakarta commons.
M
matheuslmota
Não sei se entendi corretamente. O seguinte código executa um shell script e pega a saída da execução e escreve em um arquivo:
Para verificar se é uma hora cheia, você pode criar uma Thread e dentro de dela colocar o seguinte código:
Thread.sleep(60*60*1000);
if (Calendar.getInstance().get(Calendar.MINUTE) == 0)
{
//Chame aqui o código que executa o script e gera o arquivo de Log
}
Espero que isso ajude.
Obs.: Sinto que esse meu código para gerar o nome do arquivo a partir da data e da hora em breve vai está no tópico de códigos toscos. Se alguém tiver uma solução pra melhorar isso, será muito bem vinda.
V
vittorino
Valeu Matheus abriu as idéias!
Ficou meio tosco mas funcionou !!!
publicstaticvoidmain(String[]args)throwsFileNotFoundException{//Convertendo data para stringDatedate=newDate();SimpleDateFormatformat=newSimpleDateFormat("yyyyMMdd_hh:mm");Stringdate2,date3;date2=format.format(date);SimpleDateFormatformata=newSimpleDateFormat("yyyy-MM-dd");date3=formata.format(date);//Criando arquivoOutputStreamsaida=newFileOutputStream("c:\\Network50_"+date2+".txt");OutputStreamWriterwriter=newOutputStreamWriter(saida);BufferedWriterbuffer=newBufferedWriter(writer);// Conectando ao elementotry{TelnetSampletelnet=newTelnetSample("10.222.157.76","usr","usr");// Executando comandos buffer.write(telnet.sendCommand("ZAHP:"data3+";"));...}
M
matheuslmota
Ótimo, disponha. Agora edite seu primeiro post e acrescente [Resolvido] ao título do post.