def subscribe(self,pattern): """ Subscribes a consumer client to channels matching the specified pattern. """ try: filter = ResourceNamePattern(pattern) except NamingException: return [ ] return [ channel for channel in sorted(self.channels) if filter.matches(channel) ]
def __init__(self,sourceFilter='*',minLevel='WARNING'): self.last = 0 try: self.sourcePattern = ResourceNamePattern(sourceFilter) except NamingException: # quietly accept everything if we are passed an invalid pattern self.sourcePattern = ResourceNamePattern() try: self.minLevel = logging.__dict__[minLevel] except KeyError: # quietly accept everything if we are passed an invalid level name self.minLevel = logging.NOTSET
class LogFilter(object): """ Filters a log record. """ def __init__(self,sourceFilter='*',minLevel='WARNING'): self.last = 0 try: self.sourcePattern = ResourceNamePattern(sourceFilter) except NamingException: # quietly accept everything if we are passed an invalid pattern self.sourcePattern = ResourceNamePattern() try: self.minLevel = logging.__dict__[minLevel] except KeyError: # quietly accept everything if we are passed an invalid level name self.minLevel = logging.NOTSET def selects(self,record): selected = ( (record.timestamp > self.last) and (record.msg.levelno >= self.minLevel) and (self.sourcePattern.matches(record.source)) ) if record.timestamp > self.last: self.last = record.timestamp return selected