InstallJammer provides several different ways and helpful tools to help debug installs. Most installs are fairly simple and don't really require complex debugging, but some installs can get very elaborate and require the ability to peek into what InstallJammer is really doing in the background.
Commands for debugging
InstallJammer provides two commands to assist with debugging: debug and debugging. The debug command will output a debug message and can be used in scripts or in the console to output debugging information. The debugging command is the command that controls what debugging is taking place during installation.
The following is the usage for the debugging command:
debugging level <0, 1, 2 or 3>
This command sets the level of debugging output to show. 0 means no output, and 3 means very verbose output. The default level when not specified is 1.
debugging <on | off>
This command will simply turn debugging on or off.
debugging <file | console> <on | off> ?filename?
This command will turn debugging on or off specifically for outputing debug information to a file or to the console. If a filename is given, file output will be directed to that file. If no filename is given, and debug output to a file is turned on, the file <%Temp%>/debug.log will be used.
In any case, when you use the debugging command, it will tell you exactly what and how it is logging. Calling the debugging command with no arguments will tell you the current state of debugging in the installer.
Debug output to the console is controlled by the ::debug variable.
Debug output to a file is controlled by the ::info(Debugging) variable.
The ::debugfp variable is the open file pointer to the debug log file if it is open. The variable will be an empty string if file logging is turned off.