diff --git a/doc/dev/coding.html b/doc/dev/coding.html index 4cc369e7f2..fb4a7a0d7f 100644 --- a/doc/dev/coding.html +++ b/doc/dev/coding.html @@ -498,3 +498,30 @@ initialized.

Dead Code Pruning

Source which becomes obsolete should be removed, not just disabled with #if 0 ... #endif.

+ +

Log messages

+ +Error and warning messages should be logged through the logging +system. Debugging printfs may be used during development, but +must be removed when the debugging is finished. The +UNEXPECTED_ERROR() macro is obsolete and +should not be used in new code.

+ +Log messages do not start with a capital letter, nor do they end +in a period.

+ +When variable text such as a file name or domain name occurs +as part of an English phrase, it should be enclosed in single +quotes, as in "zone '%s' is lame".

+ +When the variable text forms a separate phrase, such as when it +separated from the rest of the message by a colon, it can be left +unquoted. E.g., isc_log_write(... "open: %s: %s", filename, +isc_result_totext(result));

+ +Function names, line numbers, memory addresses, and other references +to program internals may be used in debugging messages and in +messages to report programming errors detected at runtime. +They may not be used in messages that indicate errors in the +program's inputs or operation.

+