[jdk10] RFR for 'JDK-8177721: Improve diagnostics in sun.management.Agent#startAgent()
Shafi Ahmad
shafi.s.ahmad at oracle.com
Wed Apr 26 08:15:54 UTC 2017
Hi,
Thank you Poonam, David and Daniel for the review and suggestion.
Please find updated webrev - http://cr.openjdk.java.net/~shshahma/8177721/webrev.01/
Regards,
Shafi
> -----Original Message-----
> From: Poonam Parhar
> Sent: Tuesday, April 25, 2017 1:40 AM
> To: Daniel Fuchs <daniel.fuchs at oracle.com>; David Holmes
> <david.holmes at oracle.com>; Shafi Ahmad <shafi.s.ahmad at oracle.com>;
> serviceability-dev at openjdk.java.net; hotspot-runtime-
> dev at openjdk.java.net
> Subject: RE: [jdk10] RFR for 'JDK-8177721: Improve diagnostics in
> sun.management.Agent#startAgent()
>
> Hello Shafi,
>
> You could do something like this:
>
> + public static void error(AgentConfigurationError e) {
> + String keyText = getText(e.getError());
> + String params = e.getParams();
> +
> + System.err.print(getText("agent.err.error") + ": " + keyText);
> +
> + if (params != null && params.length != 0) {
> + StringBuffer message = new StringBuffer(params[0]);
> + for (int i = 1; i < params.length; i++) {
> + message.append(" " + params[i]);
> + }
> + System.err.println(": " + message);
> + }
> + e.printStackTrace();
> + throw new RuntimeException(e);
> + }
>
> This error() variant first prints the 'error' and 'params' of the
> AgentConfigurationError and then prints the complete stack trace (including
> the cause).
>
> Daniel,
>
> Originally, if the stack trace was intentionally ignored to keep the error
> message short, then I think just printing the 'cause' instead of complete stack
> trace would also be sufficient in getting to the cause of the error here.
>
> Instead of
>
> e.printStackTrace();
>
> we can just do:
>
> System.err.println("Caused by: " + e.getCause());
>
>
> Thanks,
> Poonam
>
>
> > -----Original Message-----
> > From: Daniel Fuchs
> > Sent: Thursday, April 13, 2017 2:25 AM
> > To: David Holmes; Shafi Ahmad; serviceability-dev at openjdk.java.net
> > Subject: Re: [jdk10] RFR for 'JDK-8177721: Improve diagnostics in
> > sun.management.Agent#startAgent()
> >
> > On 13/04/2017 02:15, David Holmes wrote:
> > > Overall the exception management in this code looks like it predate
> > > the existence of an "exception cause" and should probably be updated
> > > to utilize that more effectively.
> >
> > Hi David,
> >
> > I think the original idea was to display a localized message to the
> > end user - and not frighten him with a big unlocalized stack trace.
> >
> > But I otherwise agree with your suggestion.
> >
> > best regards,
> >
> > -- daniel
More information about the hotspot-runtime-dev
mailing list