5

JBossの実行中にJBossのserver.logファイルをクリアするにはどうすればよいですか?私がやろうとすると

echo 1 > server.log

ファイルが別のプログラム(JBoss)によって使用されているというエラーメッセージが表示されます。コマンドラインツール(WindowsまたはLinux(私はCygWinを持っています))またはそのファイルをクリアするために自分で作成できるアプリケーションを使用することは可能ですか?

PSそのファイルが0kbである必要はありませんが、100MB未満である必要があります。

4

2 に答える 2

3

デフォルトでは、JBossはファイルにログメッセージを書き込んでいるため、ファイルをロックしたままにします。JBossが実行されている限りロックされ、JBoss自体を停止する以外の方法でリリースする方法はわかりません。

サイズを制御できるように、ログ構成を変更できます。これはデフォルトで。にあります<server>/conf˛jboss-log4j.xml。ログファイルの最大サイズを指定し、そのサイズに達したときに何をするかを定義できます。新しいファイルにロールオーバーし、既存のファイルを切り捨てて、再度書き込みを開始します。

基本的な例(テストされていないため、そのまま動作する保証はありません):

    <appender name="ROLL" class="org.apache.log4j.rolling.RollingFileAppender">
            ...
            <param name="maxFileSize" value="100MB" />
            ...
    </appender>

さらに、このmaxBackupIndexパラメーターを使用して、バックアップファイルの数を定義できます(デフォルトは1)。

于 2011-01-05T11:15:20.440 に答える
1

ロギング プロセスが実行されている限り、JBoss はファイルをロックします。

JMX コンソールを有効にした場合は、ロギングを停止し、ログを削除/変更して、ロギング サービスを再度開始できます。

URL は次のようになります (log4j の場合)。

http://jboss.example.com:8080/jmx-console/HtmlAdaptor?action=inspectMBean&name=jboss.system%3Atype%3DLog4jService%2Cservice%3DLogging

これを JBoss 5 でテストしました。

このソリューションもスクリプト可能である必要があります。

ログ ファイル サイズの問題について: ログ ファイルを手動で編集するのではなく、構成アプローチを使用する必要があります。

于 2012-11-07T12:34:58.637 に答える