2016-07-18 11 views
0

私はRabbitMQのfirehoseトレーサを使用しています。RabbitMQのFirehoseトレーサログの削除

この例では、電卓というキューがヘッダー交換にバインドされています。

Javaクライアントを使用して、ログを読むために、私はこのコードを使用してログ・ファイルを読み取るためのHTTP APIを使用しています:

URL url = new URL("http://127.0.0.1:15672/api/trace-files/calculator.log"); 

HttpURLConnection connection = (HttpURLConnection) url.openConnection(); 

connection.setRequestMethod("GET"); 

String userpass = "guest" + ":" + "guest"; 
String basicAuth = "Basic " + javax.xml.bind.DatatypeConverter.printBase64Binary(userpass.getBytes()); 

connection.setRequestProperty("Authorization", basicAuth); 
connection.connect(); 

BufferedReader buff = new BufferedReader(new InputStreamReader(connection.getInputStream())); 

問題は、私は、私はそれらを読んで、右後にログを削除したいです。 /var/tmp/rabbitmq/にあるログファイルを削除すると、トレースはもう機能しません。

トレースプロセスに影響を与えずにログファイルの内容を削除する方法はありますか?

答えて

0

それは実際に私がスーパーユーザーとしてgeditのでそれを削除したとき、それが機能しなかった理由を

sudo bash -c "> /var/tmp/rabbitmq-tracing/mylogs.log" 

がない今使用して動作します。

+0

bashコマンドは、ファイルを実際に削除するのではなく、ファイルを切り捨て(すべてのファイル内容を削除する)ます。ファイルはコマンドの後に存在しますが、長さは0バイトです。 – psaxton

関連する問題