#FEATURE by exept
class: MiniLogger
debugIfLogGenerated option
class definition
class: MiniLogger class
added:
#debugIfLogGenerated
#debugIfLogGenerated:
changed: #basicLog:severity:facility:originator:attachment:
--- a/MiniLogger.st Wed Feb 26 16:32:43 2020 +0100
+++ b/MiniLogger.st Wed Feb 26 22:09:00 2020 +0100
@@ -20,7 +20,7 @@
classVariableNames:'ALL DEBUG ENTER ERROR FATAL INFO Instance LEAVE LogFormat
LogOnStderr LogOnTranscript NONE Severities TRACE TRACE0 TRACE1
TRACE2 TRACE3 Threshold ThresholdPerClass ThresholdPerPackage
- TimestampFormat WARN WARNING'
+ TimestampFormat WARN WARNING DebugIfLogGenerated'
poolDictionaries:''
category:'System-Debugging-Support'
!
@@ -414,6 +414,38 @@
!MiniLogger class methodsFor:'configuration'!
+debugIfLogGenerated
+ "if true, a break is generated whenever a log is generated."
+
+ ^ DebugIfLogGenerated ? false
+
+ "
+ self loggingThreshold:INFO.
+ self debugIfLogGenerated:true.
+ self info:'blabla'.
+ self debugIfLogGenerated:false.
+ self info:'blabla'.
+ "
+
+ "Created: / 13-08-2014 / 14:36:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+debugIfLogGenerated:aBoolean
+ "if true, a break is generated whenever a log is generated."
+
+ DebugIfLogGenerated := aBoolean
+
+ "
+ self loggingThreshold:INFO.
+ self debugIfLogGenerated:true.
+ self info:'blabla'.
+ self debugIfLogGenerated:false.
+ self info:'blabla'.
+ "
+
+ "Created: / 13-08-2014 / 14:36:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
loggingThreshold
"Return the logging threshold.
No messages with severity lower than threshold will be logged.
@@ -1702,16 +1734,13 @@
messageAsSent := messageAsSent string. "take care of Texts"
messageAsSent := OperatingSystem encodeTerminalOutput:messageAsSent.
messageAsSent _errorPrintCR.
-"/ [
-"/ Stderr nextPutLine: messageAsSent
-"/ ] on:StreamError do:[:ex|
-"/ 'STX:Logger [error]: error writing to stream: ' _errorPrint. ex description _errorPrintCR.
-"/ messageAsSent _errorPrintCR.
-"/ ].
- ^ self.
+ ] ifFalse:[
+ Stderr nextPutLine: messageAsSent
].
- Stderr nextPutLine: messageAsSent
+ (DebugIfLogGenerated ? false) ifTrue:[
+ self breakPoint:#stx info:'Log message generated'
+ ].
"Created: / 28-06-2018 / 11:05:17 / Stefan Vogel"
"Modified: / 20-12-2018 / 12:33:00 / sr"