You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/README.md
+8-3Lines changed: 8 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -178,10 +178,10 @@ The InfoLogger library allows to inject messages directly from programs, as show
178
178
179
179
* Some example calls are available in [the source code](/test/testInfoLogger.cxx)
180
180
181
-
* The tags associated to a message consist of the following fields:
181
+
* The tags associated to a message consist of the following fields (which may be left undefined):
182
182
* Severity: the kind of message, one of: Info (default), Error, Fatal, Warning, Debug
183
183
* Level: the relative visibility of the message and associated target audience to whom is addressed the message: from 1 (important, visible to all) to 99 (low-level debug message, for experts only).
184
-
For ALICE Run 2, the following ranges were used to categorize messages in DAQ/ECS: operations (1-5) support (6-10) developer (11-20) debug (21-99)
184
+
For ALICE Run 2, the following ranges were used to categorize messages in DAQ/ECS: operations (1-5) support (6-10) developer (11-20) debug (21-99).
185
185
* Timestamp: time at which message was injected (Unix time in seconds since 1.1.1970). Precision goes to the microsecond.
186
186
* Hostname: the name of the machine where the message is issued. For concision, the domain name is excluded from this tag, only the base IP host name is kept.
187
187
* Rolename: the role name associated to the entity running the process. The same host might run several different roles. Example role name: FLP-TPC-1, EPN-223.
@@ -198,7 +198,7 @@ The InfoLogger library allows to inject messages directly from programs, as show
198
198
* ErrorLine: the source line number from which message is injected. Useful to trace back low-level debug messages.
199
199
* Message: the message content itself. Free text. Multiple-line messages are split at each end-of-line. Some characters are not allowed and replaced (\* and \#).
200
200
201
-
It is important to set the fields as precisely as possible, so that messages can be searched and filtered efficiently.
201
+
It is important to set the fields as precisely as possible, so that messages can be searched and filtered efficiently.
202
202
The initial list of fields has been taken from the Run 2 vocabulary. It may be adapted, in particular depending on the implementation and naming conventions of the control system.
203
203
204
204
The fields are grouped in different categories.
@@ -215,6 +215,11 @@ The InfoLogger library allows to inject messages directly from programs, as show
215
215
defined.
216
216
217
217
Usually, one will only take care of defining the per-message messageOptions struct and a context with appropriate Facility field set, all other being set automatically.
218
+
219
+
* On the server side, messages are stored in a database, consisting of a single "messages" table (and possibly some archived versions of this table).
220
+
The reference for the data structure is the table description itself, with one column per message tag, trivially matching the list of tags described above.
221
+
Fields which are undefined appear as NULL (unless the library automatically sets a value for them).
222
+
String fields usually have a maximum size (and are truncated if exceeding this limit, typically 32 characters).
218
223
219
224
* InfoLogger library is also available for: Tcl, Python, Go, Node.js.
220
225
It allows to log message from scripting languages. A simplified subset of the InfoLogger C++ API is made available through SWIG-generated modules.
0 commit comments