Add Trace/LogTrace and Critical/LogCritical #107
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This replaces the abandonned PR #98
(1)
There is a naming anomaly in CommonMessageLogger that violates the principle of least astonishment:
LogLevel.Information
-level messages are added by methodsInformation
/LogInformation
: OK!LogLevel.Warning
-level messages are added by methodsWarning
/LogWarning
: OK!LogLevel.Error
-level messages are added by methodsError
/LogError
: OK!but:
LogLevel.Critical
-level messages are added by methodsFatal
/LogFatal
: ASTONISHING!This pull request adds the expected
Critical
/LogCritical
methods forLogLevel.Critical
-level messages, and declares theFatal
/LogFatal
as obsolete. All references to the latter in Arc4u are changed appropriately.(2)
There is no accessible method to log
Loglevel.Trace
-level messages. TheSystem
method uses this log level, but it's only for internal Arc4u use. However, it is legitimate for user core to logLogLevel-Trace
-level messages.This pull request adds the
Trace
/LogTrace
methods forLogLevel-Trace
-level messages, accessible in user code.The
System
method still exists, but contains a structured property"Arc4u"
with value"Internal"
to be able to disambiguate those logs messages if needed.