2017-05-10 47 views
0

は、私たちは、私はGCごとに30分を強制しようとしていたJBoss EAP-6.4.0/JBossののJBoss GCの設定

を使用しています。起動ファイルは以下の通りです

NO_GC_LOG_ROTATE=`echo $JAVA_OPTS | $GREP "\-verbose:gc"` 
if [ "x$NO_GC_LOG_ROTATE" = "x" ]; then 
    # backup prior gc logs 
    mv "$JBOSS_LOG_DIR/gc.log.0" "$JBOSS_LOG_DIR/backupgc.log.0" >/dev/null 2>&1 
    mv "$JBOSS_LOG_DIR/gc.log.1" "$JBOSS_LOG_DIR/backupgc.log.1" >/dev/null 2>&1 
    mv "$JBOSS_LOG_DIR/gc.log.2" "$JBOSS_LOG_DIR/backupgc.log.2" >/dev/null 2>&1 
    mv "$JBOSS_LOG_DIR/gc.log.3" "$JBOSS_LOG_DIR/backupgc.log.3" >/dev/null 2>&1 
    mv "$JBOSS_LOG_DIR/gc.log.4" "$JBOSS_LOG_DIR/backupgc.log.4" >/dev/null 2>&1 
    mv "$JBOSS_LOG_DIR"/gc.log.*.current "$JBOSS_LOG_DIR/backupgc.log.current" >/dev/null 2>&1 
    "$JAVA" $JVM_OPTVERSION -verbose:gc -Xloggc:"$JBOSS_LOG_DIR/gc.log" -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:+UseParallelOldGC **-Dsun.rmi.dgc.client.gcInterval=1800000 -Dsun.rmi.dgc.server.gcInterval=1800000** -XX:GCLogFileSize=3M -XX:-TraceClassUnloading -version >/dev/null 2>&1 && mkdir -p $JBOSS_LOG_DIR && PREPEND_JAVA_OPTS="$PREPEND_JAVA_OPTS -verbose:gc -Xloggc:\"$JBOSS_LOG_DIR/gc.log\" -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:-TraceClassUnloading" 
fi 

なぜこれが動作しないのかよく分かりませんか?

答えて

0

EAP内のGCログは、時間ベースのローテーションではローテーションできません。むしろ、サイズベースの回転で回転できます。

gc.logはJVM設定でロールバックできます。OpenJDK Oracle JDKでは、UseGCLogFileRotation/NumberOfGCLogFiles/GCLogFileSizeを使用できます。たとえば:

-verbose:gc -Xloggc:gc.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=1048576 
+0

おかげウイルス、これは私がGCログを回転させるように見ているわけではない かなり良いを助けたが、GCは、私が以前あなたにコメントしたよう1時間ごと –

+0

が起こるしたい、あなたはGCを回転させるだけですることができますファイルサイズに基づいたログ。 GCログファイルは時間ベースのローテーションでは回転できません。 –

関連する問題