|sge_dl(8)||System Manager's Manual||sge_dl(8)|
dl - setting SGE debug tracing information
The dl shell script alias is obtained by sourcing one of the scripts $SGE_ROOT/util/dl.sh or $SGE_ROOT/util/dl.csh, for Bourne and C shell respectively. It provides a convenient way to set up the environment to produce certain SGE debugging information. It is mostly useful for maintainers, but may occasionally be useful to users diagnosing problems. (In that case it probably indicates a need for extra user-level messages logged in the spool area or elsewhere, which should be improved.)
The level argument specifies the printing of debugging output by the SGE components as described below, or 0 to turn off debugging output and reset the other environment variables concerned. When tracing is on, output goes to the stderr stream. dl also sets (or, with argument 0, resets) the SGE_ND environment variable to make daemon programs run in the foreground rather than actually daemonizing, and also SGE_ENABLE_COREDUMP, which enables core dumps from daemons which change user or group. The trace output is most often used for debugging daemons; some is available from client programs but is typically less useful.
Debugging is specified in terms of "layers", describing particular components of the system, such as libraries, indexed by a number:
- TOP (0)
- General information;
- CULL (1)
- List-processing (not used consistently);
- BASIS (2)
- Apparently intended for low-level routines, such as string processing, but used quite generally;
- GUI (3)
- Operations in the qmon graphical client;
- GDI (6)
- Grid Engine Database Interface for dealing with "objects" maintained by the qmaster process;
- PACK (7)
- Packing and unpacking network data.
The other indices are unused.
There are also different "classes" which determine the type/amount of information printed, again indexed by a number:
- TRACE (1)
- Tracing function enter/exit (generated by DENTER, DEXIT etc. macros);
- INFOPRINT (2)
- General information (generated by DPRINTF);
- TIMING (16)
- Time taken by execd to start a job;
- LOCK (32)
- Locking/mutex information.
Other classes are defined, but currently unused. For those and unused layers, see the source file libs/uti/sge_rmon_monitoring_level.h.
The layers and classes are combined into a number of different "levels" which may be used as the argument of dl to select the output layers and classes, as follows:
|0||-||turn off all|
|2||TOP||TRACE + INFOPRINT|
|3||TOP + CULL + GDI||INFOPRINT|
|4||TOP + CULL + GDI||TRACE + INFOPRINT|
|5||TOP + GUI + GDI||INFOPRINT|
|6||TOP + CULL + BASIS + GDI||LOCK|
|9||TOP + CULL + BASIS||INFOPRINT|
|10||TOP + CULL + BASIS + PACK||TRACE + INFOPRINT|
with other levels unused. 10 is not usually interesting.
SGE_DEBUG_LEVEL, SGE_ND, and SGE_ENABLE_COREDUMP, as above