def __iter__(self): if not self.stdin: for (method, properties, body) in self.channel.consume(self.queue): self.channel.basic_ack(0, multiple=True) yield CMessage(headers=properties.headers, rkey=method.routing_key, object=body if self.raw else json.loads(body)) else: for line in self.stdin: if not line.strip(): continue yield adict(json.loads(line))
def on_message(message): # (method, properties, body) = message out = adict(object=message.object, headers=message.headers, rkey=message.rkey) if args.keys: out.object = extract_keys(out.object, args.keys) out.object = post_process(out.object) if not args.verbose: out = out.object if args.z is None or out: print_(out) print