2017-04-25 6 views
0

私はログファイルからデータを抽出するためにlogstashを使用しています。私は、Javaプログラムからlogstashを呼びたいと思います。どのようにしてこのような仕事をすることができますかJavaプログラムからlogstashコマンドを実行する方法は?

+0

これはMongoDBとどのような関係がありますか?そして、あなたは何を達成したいですか? LogstashにはHTTP APIが用意されています。https://www.elastic.co/guide/en/logstash/current/monitoring.html –

+2

[Run Logstash in Java Program]の複製が可能です(http://stackoverflow.com/questions/35504385/run-logstash-in-java-program) – Sajjad

+0

うわー。すばらしいです。私は、logstashの出力データをmongoDBデータベースに直接格納しています。 –

答えて

0

このコードは機能しました。

 ProcessBuilder b1 = new ProcessBuilder("cmd.exe", "/c", "cd \"C:\\elk\\logstash-5.1.2\\bin\" && logstash -f first-pipeline.conf --config.reload.automatic"); 
     b1.redirectErrorStream(true); 
     Process p1 = b1.start(); 
     BufferedReader r1 = new BufferedReader(new InputStreamReader(p1.getInputStream())); 
     String line1; 
     while (true) { 
      line1 = r1.readLine(); 
      if (line1 == null) { break; } 
      System.out.println(line1); 
     } 
関連する問題