In order to help hosts debug problems, PHost offers a tracing capability. This feature is still incomplete; many parts of PHost have not yet been instrumented. It will, however, already generate useful information. To use this feature, specify one or more -L options.

At every time, PHost is in some context. For example, PlanetaryLosses:planet16 means PHost is currently in the PlanetaryLosses stage processing planet 16. You can tell PHost to log events occuring in particular contexts. An event could look like this:

PlanetaryLosses:planet16:base removed

In this case, the base on planet 16 was removed because the planet became unowned due to riots.

  • -Ltype, e.g. -Lplanet requests that all events on objects of that particular type to be logged. Types currently in use include
    • planet (planet doing something)
    • ship (ship doing something)
    • target (ship being the target of another ship, e.g. in cargo transfer)
    • message (message being sent)
    • player (something being done to that player, e.g. turn file being read)
  • -LtypeId, e.g. -Lplanet16 requests that all events on the specified object be logged. Note that you have to specify -Lship99 and -Ltarget99 to catch all events on a particular ship.
  • -LStageName, e.g. -LPlanetaryLosses requests all events occuring in the named PControl stage be logged. Stage names include all names from PControl as well as a few more.
  • -Lall requests all events to be logged.
  • -Ltransitions requests all state transitions to be logged. This will generate much output, use with care.