RFR: 7164841: Improvements to the GC log file rotation
Yasumasa Suenaga
suenaga.yasumasa at lab.ntt.co.jp
Tue Aug 20 00:02:37 UTC 2013
Hi Scott,
> I'm willing to compile the patch for 6950794 and let you know if it compiles on Windows 7, 64 bit. I'm just a list observer but I can build it.
Do you want to build JDK for Linux (RHEL) ? If so, you have to build JDK on Linux.
Please apply my patch for your OpenJDK source tree and read "README-builds.html" in it.
http://hg.openjdk.java.net/build-infra/jdk7/file/tip/README-builds.html
Thanks,
Yasumasa
On 2013/08/20 0:07, STIRLING, SCOTT wrote:
> For hosting large e-comm sites with dozens to hundreds of JVMs, where we always have GC logging enabled, the advent of GC log rotation features in the JVM was a nice surprise and I started using it immediately on a major new e-comm site (with Oracle ATG and Weblogic on Sun 1.6-latest JDK and RHEL). But as the file naming and rotation work now, when you stop and then restart a JVM with GC log rotation enabled, it overwrites the last un-rotated log file. That's not usually what we want. We like logs to have the timestamp or datestamp encoded in the file name for scripting, for future reference when logs are on a laptop for analysis with visualization tools (more important these days as GC logs for new garbage collectors get uglier and uglier), etc.
>
> It's possible to parameterize the log file name in scripts before it is passed to the JVM, but that's been do-able for years. And if you take a product such as Oracle Weblogic, it has a versionable, auto-deployed, centrally manageable config.xml, which we like to use as much as possible for, e.g., all the JVM args for all the JVMs in the domain. There's no facility for parameterized variables in config.xml. So you have to, again, do stuff in the launch script, which is more stuff to maintain, and so on.
>
> I'm willing to compile the patch for 6950794 and let you know if it compiles on Windows 7, 64 bit. I'm just a list observer but I can build it.
>
> Scott Stirling
> AT&T, Boston
>
> -----Original Message-----
> From: hotspot-gc-dev-bounces at openjdk.java.net [mailto:hotspot-gc-dev-bounces at openjdk.java.net] On Behalf Of Yasumasa Suenaga
> Sent: Sunday, August 18, 2013 8:34 PM
> To: Yumin Qi
> Cc: hotspot-gc-dev at openjdk.java.net; hotspot-runtime-dev at openjdk.java.net
> Subject: Re: RFR: 7164841: Improvements to the GC log file rotation
>
> Hi Yumin,
>
> I've posted a RFE and patch for adding timestamp, PID, etc to log filename.
>
> JDK-6950794 : Make the GC log file name parameterized
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6950794
> http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2012-July/004758.html
>
> Your patch writes timestamp into logfile.
> Howeverm, in production system, we may want to check log generation through
> log filename. (e.g. ls command at Linux)
>
> Could you check my patch?
>
>
> Thanks,
>
> Yasumasa
>
> On 2013/08/16 0:35, Yumin Qi wrote:
>> Hi,
>>
>> Can I have your review for this small changes?
>> http://cr.openjdk.java.net/~minqi/7164841/webrev00/<http://cr.openjdk.java.net/%7Eminqi/7164841/webrev00/>
>>
>> This is for a enhancement to add head/tail message to the logging files to assist reading GC output.
>> 1. modified prompt message if invalid arguments used for log rotating;
>> 2. add time and file name message to log file head/tail.
>> 3. for easily identify which log file is current, use file name like<filename>.n.current, after it reaches maximum size, rename it to<filename>.n
>> On Windows, there is no F_OK (existing test) definition, F_OK is defined as "0" and for _access of VC++, it just describes:
>>
>> modevalue
>>
>>
>>
>> Checks file for
>>
>> 00
>>
>>
>>
>> Existence only
>>
>> 02
>>
>>
>>
>> Write-only
>>
>> 04
>>
>>
>>
>> Read-only
>>
>> 06
>>
>>
>>
>> Read and write
>>
>>
>> http://msdn.microsoft.com/en-us/library/1w06ktdy.aspx
>> The definition are consistent with unistd.h.
>>
>> Test: JPRT and jtreg.
>>
>> Thanks
>> Yumin
>
More information about the hotspot-gc-dev
mailing list