Como salvar uma resposta a comandos e como gerar arquivos a cada captura
5 respostas
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
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.
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.
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+";"));...}
matheuslmota
Ótimo, disponha. Agora edite seu primeiro post e acrescente [Resolvido] ao título do post.