File tree Expand file tree Collapse file tree 2 files changed +27
-0
lines changed Expand file tree Collapse file tree 2 files changed +27
-0
lines changed Original file line number Diff line number Diff line change @@ -47,3 +47,18 @@ Using logger
47
47
logger.warn(' warn message' )
48
48
logger.error(' error message' )
49
49
logger.critical(' critical message' )
50
+
51
+ Using filter
52
+ ''''''''''''
53
+
54
+ You can also filter some messages only
55
+
56
+ .. code-block :: python
57
+
58
+ from slack_logger import SlackLogFilter
59
+
60
+ sf = SlackLogFilter()
61
+ sh.addFilter(sf)
62
+
63
+ logger.info(' info message' ) # Not posted to slack
64
+ logger.info(' info message to slack' , extra = {' notify_slack' : True }) # Posted to slack
Original file line number Diff line number Diff line change @@ -58,3 +58,15 @@ def format(self, record):
58
58
ret ['ts' ] = record .created
59
59
ret ['text' ] = super (SlackFormatter , self ).format (record )
60
60
return ret
61
+
62
+
63
+ class SlackLogFilter (logging .Filter ):
64
+ """
65
+ Logging filter to decide when logging to Slack is requested, using
66
+ the `extra` kwargs:
67
+
68
+ `logger.info("...", extra={'notify_slack': True})`
69
+ """
70
+
71
+ def filter (self , record ):
72
+ return getattr (record , 'notify_slack' , False )
You can’t perform that action at this time.
0 commit comments