다음 JVM은 다음 인수를 사용하면 자세한 GC 로그를 StdOut에 출력합니다.Java GC 세부 로그
-verbose:gc
-XX:+PrintGCTimeStamps
-XX:+PrintGCDetails
그러나 StdOut에서 출력을 원하지 않고 모든 단일 GC에 대해 세부 사항을 필요로하지 않습니다. 프로그래밍 방식으로 이러한 로그에 사용 된 데이터에 액세스 할 수 있습니까? 내 자신의 로그 파일에 할당/수집 된 메모리 양을 이상적으로 시간이 지남에 따라 평균 개체 크기를 로그 할 수 싶습니다.
감사합니다. API가 있으면 런타임에이 데이터에 액세스하고 할당되고 수집되고 승격되는 데이터 양에 대해 5 분마다 통계를 쓸 수 있기를 바랍니다. – mchr
가비지 수집에 관한 많은 정보가 JMX를 통해 제공되며,'jconsole'을 열고 JVM에서 노출되는 다른 mbeans을 확인하십시오. JMX와 GC에 관해서도 여기에 몇 가지 질문이 있습니다. 독일어를 이해한다면이 기사와 관련 코드에는 흥미로운 아이디어가 포함되어 있습니다. http://www.torsten-horn.de/techdocs/jmx-gc.htm – fvu
JVM 1.6.0_34부터 Java에서 로그를 회전시킬 수 있습니다. '-XX : + UseGCLogFileRotation -XX : NumberOfGCLogFiles = <파일 번호> -XX : GCLogFileSize = 세 가지 옵션이 필요하다는' 참고. 다른 팁은 여기에 있습니다 : http://jyates.github.io/2012/11/05/rolling-java-gc-logs.html –