JULI: java.util.logging

Discussion in 'Java' started by gwoodhouse@gmail.com, Dec 22, 2010.

  1. Guest

    Hello all,

    I have a question about the JULI logging system that I’ve been unable
    to answer for several months now.

    I'm using a tomcat server (5.5) to run a web application, inside this
    application there are many different logging methods within many
    different classes spanning many namespaces. The java code can be
    summed up in this example:

    package uk.co.graeme.layout.element.register;
    import java.util.logging.Logger;

    public class ExampleClass
    {
    private static Logger LOG =
    Logger.getLogger(ExampleClass.class.getName());

    public Boolean evaluate(String a, String b)
    {
    try
    {
    if(a.equalsIgnoreCase(b)) { return true; }
    else { return false; }
    } catch (Exception e) {
    LOG.info ("An exception was thrown");
    }
    return false;
    }
    }

    Unfortunately this web application has been shipped to me a
    logging.properties file which isn't far removed from the default. You
    can see the logging file at this URL underneath the String "Example
    logging.properties file to be placed in common/classes:":
    http://tomcat.apache.org/tomcat-5.5-doc/logging.html

    For various reasons i cannot change the properties file.

    Now each of the different handlers specified in the example are
    logging, I can tell this by the fact that log files are being created
    and written to (catalina.log, localhost.log, etc.).

    My question is, from the above java code example, where would the
    String "An exception was thrown" log to (and how can you tell this?)

    Thank you in advance. I'm sorry to ask what seems like a very simple
    question but looking through documentation has been surprisingly
    unhelpful.

    Graeme
     
    , Dec 22, 2010
    #1
    1. Advertising

  2. Arne Vajhøj Guest

    On 22-12-2010 11:45, wrote:
    > I have a question about the JULI logging system that I’ve been unable
    > to answer for several months now.
    >
    > I'm using a tomcat server (5.5) to run a web application, inside this
    > application there are many different logging methods within many
    > different classes spanning many namespaces. The java code can be
    > summed up in this example:
    >
    > package uk.co.graeme.layout.element.register;
    > import java.util.logging.Logger;
    >
    > public class ExampleClass
    > {
    > private static Logger LOG =
    > Logger.getLogger(ExampleClass.class.getName());
    >
    > public Boolean evaluate(String a, String b)
    > {
    > try
    > {
    > if(a.equalsIgnoreCase(b)) { return true; }
    > else { return false; }
    > } catch (Exception e) {
    > LOG.info ("An exception was thrown");
    > }
    > return false;
    > }
    > }
    >
    > Unfortunately this web application has been shipped to me a
    > logging.properties file which isn't far removed from the default. You
    > can see the logging file at this URL underneath the String "Example
    > logging.properties file to be placed in common/classes:":
    > http://tomcat.apache.org/tomcat-5.5-doc/logging.html
    >
    > For various reasons i cannot change the properties file.
    >
    > Now each of the different handlers specified in the example are
    > logging, I can tell this by the fact that log files are being created
    > and written to (catalina.log, localhost.log, etc.).
    >
    > My question is, from the above java code example, where would the
    > String "An exception was thrown" log to (and how can you tell this?)
    >
    > Thank you in advance. I'm sorry to ask what seems like a very simple
    > question but looking through documentation has been surprisingly
    > unhelpful.


    As I read the properties files then I believe it should
    end up in the catalina log, because that (and the console)
    are those assigned to root.

    Arne

    PS: You can also control logging programmatic, so even
    though you can not change the properties file, then you
    should be able to get the output to a file of your choice
    anyway.
     
    Arne Vajhøj, Dec 24, 2010
    #2
    1. Advertising

  3. Lew Guest

    Some side notes unrelated to your primary question but still worth mentioning:

    wrote:
    >> public class ExampleClass
    >> {
    >> private static Logger LOG =


    The variable name 'LOG' here does not follow the Java naming conventions,
    which call for an initial lower-case letter and mixed-case, with the first
    letter of compound word parts (or initials) to be upper case, or for this
    variable, 'log'.

    >> Logger.getLogger(ExampleClass.class.getName());
    >>
    >> public Boolean evaluate(String a, String b)
    >> {
    >> try
    >> {
    >> if(a.equalsIgnoreCase(b)) { return true; }
    >> else { return false; }


    That is so rococo! Why not just 'return a.equalsIgnoreCase( b) );'?

    The simpler form is preferred.

    Also, you forgot to prevent 'NullPointerException'.

    Why are you returning 'Boolean'? Autoboxing is not the greatest thing. If
    you must use it, comment the usage along with its purpose. Don't just leave
    stuff like that lying around undocumented.

    public boolean evaluate( String a, String b )
    {
    return (a == null? b == null : a.equalsIgnoreCase( b ));
    }

    >> } catch (Exception e) {


    Why are you checking for exceptions at all, much less 'Exception'?

    Checking for 'Exception' is an antipattern, with a few specialized use cases
    where you might use it anyway, none of which apply here.

    >> LOG.info ("An exception was thrown");
    >> }
    >> return false;
    >> }
    >> }

    ....
    >> My question is, from the above java code example, where would the


    "Java" (the name of the programming language) is spelled with an upper-case "J".

    --
    Lew
    Ceci n'est pas une pipe.
     
    Lew, Dec 25, 2010
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Stefan Siegl
    Replies:
    0
    Views:
    988
    Stefan Siegl
    Aug 27, 2003
  2. Michael T. Peterson
    Replies:
    2
    Views:
    758
    Michael T. Peterson
    Sep 9, 2003
  3. janne
    Replies:
    0
    Views:
    9,626
    janne
    Sep 10, 2004
  4. Java script Dude

    java.util.logging for Java 1.3.1

    Java script Dude, Oct 27, 2005, in forum: Java
    Replies:
    2
    Views:
    687
    Tor Iver Wilhelmsen
    Oct 28, 2005
  5. Royan
    Replies:
    1
    Views:
    1,514
    Andrea Francia
    Apr 1, 2008
Loading...

Share This Page