Example #1
0
        def _readEvents(self, _read_func_cb):
                criteria = self._env.config.get("general", "criteria")
                if criteria:
                    criteria = "alert && (%s)" % (criteria)
                else:
                    criteria = "alert"

                try:
                    criteria = IDMEFCriteria(criteria)
                except Exception as e:
                    raise error.UserError("Invalid criteria provided '%s': %s" % (criteria, e))

                last = time.time()
                while self._continue:
                        msg = idmef.IDMEF()
                        r = _read_func_cb(msg)

                        if r:
                                if criteria.match(msg):
                                        self._handle_event(msg)

                        now = time.time()
                        if now - last >= 1:
                                context.wakeup(now)
                                last = now
Example #2
0
    def run(self):
        last = time.time()
        for msg in self._receiver.run():
            if msg and self._criteria.match(msg):
                self._handle_event(msg)

            now = time.time()
            if now - last >= 1:
                context.wakeup(now)
                last = now

            if not self._continue:
                break
Example #3
0
    def run(self):
        last = time.time()
        for msg in self._receiver.run():
            if msg and self._criteria.match(msg):
                self._handle_event(msg)

            now = time.time()
            if now - last >= 1:
                context.wakeup(now)
                last = now

            if not self._continue:
                break