1 – Setup and customization > 1.3 Viewpoint customization > Customizing logging

Customizing logging

By default, Viewpoint sends log files to the $VIEWPOINT_HOME directory. However, you can modify where the logs are sent, and you can change the logging verbosity by following these instructions.

Viewpoint uses Grails logging. For information, see http://grails.org/doc/latest/guide/single.html#logging.

The viewpoint.log file follows the standard logging format used in the Moab HPC Suite. For more information about the log format, see "Standard Log Format" in the Moab Workload Manager Administrator Guide.

To customize logging in Viewpoint

  1. Copy and paste the following into the log4j.groovy file in the $VIEWPOINT_HOME directory:
    import com.ace.viewpoint.Viewpoint
    log4j = {
      /*
        Tomcat6 will create a stacktrace.log inside viewpoint deployment directory but doesn't have the permissions so an exception will show up saying permission denied. This will disable that creation.
      */
      'null' name:'stacktrace'
      appenders {
        rollingFile name:'vpLog', layout:pattern(conversionPattern: "%d{yyyy-MM-dd'T'HH:mm:ss.SSSZ}\t%t\t%p\t%c\t0\t\t%m%n"), maxBackupIndex:5, file: Viewpoint.getViewpointHome() + '/viewpoint.log'
        rollingFile name:'ioLog', layout:pattern(conversionPattern: '%d{yyyy.MM.dd HH.mm.ss,SSS} %m%n'), maxBackupIndex:1, file: Viewpoint.getViewpointHome() + '/io.log'
      }
      //  NOTE: These are default loggers that normally shouldn't be changed
      //
      error   'org.codehaus.groovy.grails.web.servlet',  //  controllers
              'org.codehaus.groovy.grails.web.pages', //  GSP
              'org.codehaus.groovy.grails.web.sitemesh', //  layouts
              'org.codehaus.groovy.grails.web.mapping.filter', // URL mapping
              'org.codehaus.groovy.grails.web.mapping', // URL mapping
              'org.codehaus.groovy.grails.commons', // core / classloading
              'org.codehaus.groovy.grails.plugins', // plugins
              'org.codehaus.groovy.grails.orm.hibernate', // hibernate integration
              'org.springframework',
              'org.hibernate',
              'net.sf.ehcache.hibernate'
      warn    'org.mortbay.log'
     
      //  Viewpoint logging
      //
      warn    'grails.app'
      info    'ApplicationPlugin'
      info    'grails.app.conf'
      //
      //trace ioLog: 'viewpoint-io'
      //  Uncomment the following line to trace MWS queries in io.log
      //trace   ioLog: 'viewpoint-io.query'
      //  To trace MWS queries for specific paths, add a spec like the following, replacing <path> with "principals",
      //  "services", "vms", etc.
      //trace   ioLog: 'viewpoint-io.query.<path>'
      //  Uncomment the following line to trace MWS creates, modifies, and deletes in io.log
      //trace   ioLog: 'viewpoint-io.update'
      //  To trace MWS creates, modifies, and deletes for specific paths, add a spec like the following, replacing <path>
      //  with "principals", "services", "vms", etc.
      //trace   ioLog: 'viewpoint-io.update.<path>'
      root {
        error 'vpLog'
      }
    }
  2. Customize the settings to meet your specifications. For information on how to customize, see http://grails.org/doc/latest/guide/single.html#logging.
  3. As part of your logging customization, you can specify the following Viewpoint packages:

    Value Description
    com.cri

    This is the general package for all Viewpoint server code. This will log all server interaction with the Viewpoint Web server.

    com.cri.security This is the logger for all security packages. This is important for authentication and authorization testing.
    com.ace This is the logger for external Java API classes. This includes Java code that has been validated for external customer consumption. Classes include MoabJob, MoabNode, Reservation, and so forth. See the Moab Java API for more information.
    com.Moab This is the logger for internal Java API classes. Classes include VPCs, low-level Moab consumption, etc. This is the logger that shows what Moab commands are sent and the associated output.
    org.codehaus.groovy.grails.web.servlet This is the logger for controllers.
    org.codehaus.groovy.grails.web.pages This is the logger for GSP.
    org.codehaus.groovy.grails.web.sitemesh This is the logger for layouts.
    org.codehaus.groovy.grails.web.mapping.filter This is the logger for URL mapping.
    org.codehaus.groovy.grails.web.mapping This is the logger for URL mapping.
    org.codehaus.groovy.grails.commons This is the logger for classloading.
    org.codehaus.groovy.grails.plugins This is the logger for plugins.
    org.codehaus.groovy.grails.orm.hibernate This is the logger for hibernate integration.
    org.springframework ---
    org.hibernate ---
    net.sf.ehcache.hibernate ---
  4. Save your changes to the log4j.groovy file.

Related topics