org.powertac.server
Class LogService

java.lang.Object
  extended by org.powertac.server.LogService

@Service
public class LogService
extends Object

Support for per-game logging. Two logs are generated: a trace log, and a state log. The trace log is called "hhhxxx.trace" where hhh is the prefix provided as the argument to setPrefix(), and xxx is the id if the Competition instance. Ideally, hhh is the hostname of the machine running the sim.

The contents of the trace are intended to be error, warn, info, or debug messages that help developers or users understand what the server is doing. Loggers are named after the classes in which they are generated. Each class that will use a logger must include a statement

  static private Logger log = Logger.getLogger(ClassName.class.getName());
 
where ClassName is the name of the class.

The state log is a record of state changes, intended to allow complete reconstruction of a simulation. You get one with the statement

  static private Logger stateLog = Logger.getLogger("State");
 
Entries in the state log are of the form
  type:class:id:op:arg1:...
 
where type is one of [c,u,d] for create, update, delete; id is the identifier of the object, op (used only for update) is the operation, and the args are the arguments for that operation. The logger format will prepend the current offset from the beginning of the simulation in milliseconds.

Author:
John Collins

Constructor Summary
LogService()
           
LogService(String config)
           
 
Method Summary
 org.apache.log4j.Logger getStateLogger()
           
 void setPrefix(String prefix)
          Sets the filename prefix.
 void startLog(String id)
           
 void stopLog()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LogService

public LogService()

LogService

public LogService(String config)
Method Detail

setPrefix

public void setPrefix(String prefix)
Sets the filename prefix. This should be set to the hostname or some other distinguishing value.


getStateLogger

public org.apache.log4j.Logger getStateLogger()

startLog

public void startLog(String id)

stopLog

public void stopLog()


Copyright © 2013 Power TAC. All Rights Reserved.