PubSub diagnostics are intended to assure users about the correct operation of a PubSub system and to help in the discovery of potential faults. Depending on the situation, not all diagnostic Objects might be needed, and on the other hand providing them requires resources. As a result, diagnostic objects are assigned to different diagnostic levels. Only diagnostic Objects belonging to the currently set diagnostic level or a more severe level have to be provided. This mechanism provides the user the ability to select a suitable diagnostic configuration depending on the application.

The DiagnosticsLevel is an enumeration that specifies the possible diagnostics levels. The possible enumeration values are described in Table 136.

Table 136 – DiagnosticsLevel Values




Diagnostic objects from this level cannot be disabled, and thus objects from this level are the minimum diagnostic feature set that can be expected on any device that supports PubSub diagnostics at all.


Diagnostic objects related to exceptional behaviour are contained in the Advanced_1 diagnostic level.


The Info_2 diagnostic level contains high-level diagnostic objects related to the normal operation of a PubSub system.


Diagnostic objects for the detailed logging of the operation of a PubSub system are contained in the Log_3 diagnostic level.


Diagnostic objects with debug information specific to a given implementation of PubSub are contained in the Debug_4 diagnostic level. As this level is intended for implementation specific diagnostics, no such objects are specified by the standard.