RFR: 8301627: System.exit and Runtime.exit debug logging [v2]
Alan Bateman
alanb at openjdk.org
Tue Feb 14 07:47:43 UTC 2023
On Mon, 13 Feb 2023 10:57:35 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:
>> src/java.base/share/classes/java/lang/Shutdown.java line 162:
>>
>>> 160: * If the system logger {@code java.lang.Runtime} is enabled for logging level DEBUG/FINE
>>> 161: * the stack trace of the call to {@code Runtime.exit()} or {@code System.exit()}
>>> 162: * is logged.
>>
>> Shutdown is not a public class so this impNote won't appear in the APIs docs. Should it move to Runtime.exit and System.exit? If it moved to a public API then "system logger" could link to System.Logger. Also would it be more correct to say "a system logger named "java.lang.Runtime" is enabled for logging level DEBUG"?
>
> FINE is not a level supported by the System.Logger, it is the level to which DEBUG is mapped when the backend is java.util.logging. I suggest to remove FINE from this description and add an `{@link Loger.Level#DEBUG DEBUG}` around DEBUG.
Roger has updated this but it's still a comment on a non-public class. I think the main question here is whether there should be a note in the System.exit and Runtime.exit to document that these methods log? If not, will it be documented anywhere, maybe a troubleshooting guide to help track down what/who is calling System.exit?
-------------
PR: https://git.openjdk.org/jdk/pull/12517
More information about the core-libs-dev
mailing list