def _getResult(self, results): """ Append each search result into the ResultsListbox. """ try: self._meta = results.pop(0) for evid,event in results: self._results.append(EVID.fromString(evid), event) console.redraw() except Exception, e: logger.exception(e)
def _getResult(self, results): """ Append each search result into the ResultsListbox. """ try: meta = results.pop(0) self._lastId = meta['lastId'] logger.debug("tail returned %i results, last id is %s" % (len(results), self._lastId)) if len(results) > 0: for evid,event in results: self._results.append(EVID.fromString(evid), event) console.redraw() from twisted.internet import reactor self._delayed = reactor.callLater(self.interval, self._tail) except Exception, e: logger.exception(e)
def printResult(self, results): logger.debug("XMLRPC result: %s" % str(results)) meta = results["meta"] data = results["data"] if len(data) > 0: for evid, event in data: evid = EVID.fromString(evid) ts = datetime.datetime.fromtimestamp(evid.ts, dateutil.tz.tzutc()) if self.tz: ts = ts.astimezone(self.tz) print "%s: %s" % (ts.strftime("%d %b %Y %H:%M:%S %Z"), event["default"]) if self.longfmt: del event["default"] for field, value in sorted(event.items(), key=lambda x: x[0]): if self.fields and field not in self.fields: continue print "\t%s=%s" % (field, value) return meta["lastId"]
def printResult(self, results): logger.debug("XMLRPC result: %s" % str(results)) meta = results['meta'] data = results['data'] if len(data) > 0: for evid, event in data: evid = EVID.fromString(evid) ts = datetime.datetime.fromtimestamp(evid.ts, dateutil.tz.tzutc()) if self.tz: ts = ts.astimezone(self.tz) print "%s: %s" % (ts.strftime("%d %b %Y %H:%M:%S %Z"), event['default']) if self.longfmt: del event['default'] for field, value in sorted(event.items(), key=lambda x: x[0]): if self.fields and field not in self.fields: continue print "\t%s=%s" % (field, value) return meta['lastId']
:returns: A Deferred object which receives the results. :rtype: :class:`twisted.internet.defer.Deferred` """ # look up the named indices if indices == None: indices = tuple(self._indexstore.iterSearchableIndices()) else: try: indices = tuple(self._indexstore.getSearchableIndex(name) for name in indices) except KeyError, e: raise QueryExecutionError("unknown index '%s'" % e) # if lastId is 0, return the id of the latest document if lastId == None: return QueryResult({'runtime': 0.0, 'lastId': str(EVID.fromDatetime())}, []) try: lastId = EVID.fromString(lastId) except: raise QueryExecutionError("invalid lastId '%s'" % str(lastId)) # check that limit is > 0 if limit < 1: raise QueryExecutionError("limit must be greater than 0") query = parseTailQuery(query) logger.trace("tail query: %s" % query) period = Period(lastId, EVID.fromString(EVID.MAX_ID), True, False) logger.trace("tail period: %s" % period) # query each index, and return the results task = searchIndices(indices, query, period, None, False, fields, limit) def _returnTailResult(result, lastId=None): if isinstance(result, Failure) and result.check(SearcherError): raise QueryExecutionError(str(e)) events = list(result.events)
else: try: indices = tuple( self._indexstore.getSearchableIndex(name) for name in indices) except KeyError, e: raise QueryExecutionError("unknown index '%s'" % e) # if lastId is 0, return the id of the latest document if lastId == None: return QueryResult( { 'runtime': 0.0, 'lastId': str(EVID.fromDatetime()) }, []) try: lastId = EVID.fromString(lastId) except: raise QueryExecutionError("invalid lastId '%s'" % str(lastId)) # check that limit is > 0 if limit < 1: raise QueryExecutionError("limit must be greater than 0") query = parseTailQuery(query) logger.trace("tail query: %s" % query) period = Period(lastId, EVID.fromString(EVID.MAX_ID), True, False) logger.trace("tail period: %s" % period) # query each index, and return the results def _returnTailResult(result, lastId=None): if isinstance(result, Failure) and result.check(SearcherError): raise QueryExecutionError(str(e)) events = list(result.events)