Documentation
LogContext()
A context for a logger instance. Each context manages a stack of scopes where each scope can hold a different set of log tags. Initially a context already has one scope on its stack, that cannot be left. Trying to do so will lead to an error. Thus each party entering a scope is also responsible for leaving that scope again.
LogContext#enterScope()
Enters a new scope by pushing a scope object with an empty set of tags onto the stack.
LogContext#leaveScope()
Leaves the current scope and thus discards all tags set on this scope. An error is raised if an attempt to remove the root scope is made.
LogContext#addTag( tag, value )
Adds a value for a log tag to the scope entered last, i.e. the one on the top of the stack. If a tag
is already known for the current scope, the value is appended to the existing one using a ;
as
separator. Note that no formatting of the value takes place and a non-string value will just have its
appropriate toString
method called.
Parameters
-
tag {String}: the id of the tag to add a value for
-
value {String}: the value to add
LogContext#gatherTags()
Returns a map of all tags gathered from all scopes. If there are multiple values for the same tag across
different scopes, their values are concatenated using a ;
as separator.
Returns
- {Object}: a mapping from tag to its value(s)