CIB merge technical documentation (EN)
12. Annex
12.3. Error log file
Diagnosis level
Error categories
Error log file until CIB merge 3.8.x
General
With the parameter -L(!)<Error log file> CIB merge writes a description of the error message to the specified log file. If no error occurs, an empty file is written. See also Chapter -L<Logfile>.
Error log file with --verbose from CIB merge 3.9.x
As of version 3.9.x, CIB merge writes an error log file freely scalable according to error categories and diagnostic levels, which can thus be individually tailored to the needs of the user.
Diagnosis level
The diagnostic levels indicate the level of detail of the log file as follows:
level |
verbosity |
name |
standards |
function |
remarks |
0 |
nothing |
silent/still/stumm |
|
quiet |
|
1 |
severe errors |
severe/schwer(wiegend) |
|
errors |
|
2 |
all errors |
error(s)/Fehler |
|
|
|
3 |
important consequences |
initial |
initial |
|
|
4 |
helpful consequences |
""/default/standard |
default |
|
|
5 |
all consequences |
stack |
|
|
|
6 |
helpful information |
info(rmation) |
|
trace |
|
7 |
technical information |
technical/technisch |
|
|
|
8 |
timing information |
timing/Zeit(en) |
|
|
reserved |
9 |
memory information |
memory/Speicher |
|
|
reserved |
If --verbose is not set, the initial level 3 is set. If --verbose is set without a diagnostic level, the default level 4 applies.
Error categories
CIB merge distinguishes different error categories for logging with --verbose:
ALL/ALLE, DATA/DATEN, DIALOG, DOC/DOCUMENT/DOK/DOKUMENT, INCLUDE/EINFUEGEN, FIELD/FELD, FILE/DATEI, PAR, REF, SOURCE/QUELLE, SOURCEPATH/QUELLPFAD
These can be combined as desired, e.g. --verbose +DATA +DOK +INCLUDE or --verbose +ALL -SOURCE
Error log file until CIB merge 3.8.x
The error log file and contains information for application developers, raw text developers and CIB support. Scaling with --verbose is not possible, the file is structured as follows:
The first line indicates the error type and category.
The second line describes in which file the error occurred. CIB merge versions < 3.8.108 give information for the CIB support in the second line.
In the following lines the user gets the necessary information to trace the cause of the error.
The last line of the error messages contains the following information:
Program return value: xxxx - see chapter Program return values "==>" always indicates the consequences in CIB merge.
Notes on the analysis of the error log file
Field statements are always evaluated from inside to outside, CIB merge therefore lists first the "innermost" error and then the resulting errors in the outer fields.
Example
A variable is compared to a fixed value in an IF condition. The template is part of a larger project and is inserted into the root document with INSERT TEXT. If the variable is now missing in the data supply, CIB merge will output the following:
ERROR: error condition: incorrect field statement
Error during the file baustein.rtf
unknown variable
Name: dummy_feld
==> could not evalute field statement
command: REF
parameters: 2 pieces
1: REF
2: dummy_field
Switch: 0 pieces
==> field not recalculated
==> left operand not evaluated
==> condition not evaluated
==> could not evaluate field statement
command: IF
parameters: 6 pieces
1: IF
2: {REF dummy_field}
3: <>
4: ""
5: "REF dummy field is not empty
6: "REF Dummy field is empty".
switch: 0 pieces
==> field result not recalculated and written
==> field not correctly evaluated and written
==> document not completely edited and written
==> data set no.: 1
==> could not evaluate field statement
command: INSERT TEXT
parameters: 2 pieces
1: INSERT TEXT
2: "building block.rtf
switch: 0 pieces
==> field result not recalculated and written
==> field not correctly evaluated and written
==> single document not completely edited and written
==> mixing process cancelled
==> document not completely edited and written
==> data set no.: 1
==> document not processed correctly
Program return value 0010