def flush(self, include_footers=False): """ This method is used internally by Cyclone, Cyclone specify the function on_finish but in that time the request is already flushed, so overwrite flush() was the easiest way to achieve our collection. It's here implemented to supports the I/O logging if requested with the command line options --io $number_of_request_recorded """ if hasattr(self, 'globaleaks_io_debug'): try: content = ("<" * 15) content += (" Response %d " % self.globaleaks_io_debug) content += ("<" * 15) + "\n\n" content += "status code: " + str(self._status_code) + "\n\n" content += "headers:\n" for k, v in self._headers.iteritems(): content += "%s: %s\n" % (k, v) if self._write_buffer is not None: content += "\nbody: " + str(self._write_buffer) + "\n" self.do_verbose_log(content) except Exception as excep: log.err("JSON logging fail (flush): %s" % excep.message) return RequestHandler.flush(self, include_footers)
def flush(self, include_footers=False): """ This method is used internally by Cyclone, Cyclone specify the function on_finish but in that time the request is already flushed, so overwrite flush() was the easiest way to achieve our collection. It's here implemented to supports the I/O logging if requested with the command line options --io $number_of_request_recorded """ if hasattr(self, 'globaleaks_io_debug'): try: content = ("<" * 15) content += (" Response %d " % self.globaleaks_io_debug) content += ("<" * 15) + "\n\n" content += "status code: " + str(self._status_code) + "\n\n" content += "headers:\n" for k, v in self._headers.iteritems(): content += "%s: %s\n" % (k, v) if self._write_buffer is not None: content += "\nbody: " + str(self._write_buffer) + "\n" self.do_verbose_log(content) except Exception as excep: log.err("JSON logging fail (flush): %s" % excep.message) return RequestHandler.flush(self, include_footers)
def flush(self, include_footers=False): """ This method is used internally by Cyclone, Cyclone specify the function on_finish but in that time the request is already flushed, so overwrite flush() was the easiest way to achieve our collection. It's here implemented to supports the I/O logging if requested with the command line options --io $number_of_request_recorded """ from globaleaks.event import outcoming_event_monitored, EventTrack # This is the event tracker, used to keep track of the # outcome of the events. if not hasattr(self, '_status_code'): if GLSetting.devel_mode: log.debug("Developer, check this out") import pdb; pdb.set_trace() else: raise Exception("Missing _status_code in some place!") for event in outcoming_event_monitored: if event['handler_check'](self.request.uri) and \ event['method'] == self.request.method and \ event['status_checker'](self._status_code): EventTrack(event, self.request.request_time()) # if event['anomaly_management']: # event['anomaly_management'](self.request) if hasattr(self, 'globaleaks_io_debug'): try: content = ("<" * 15) content += (" Response %d " % self.globaleaks_io_debug) content += ("<" * 15) + "\n\n" content += "status code: " + str(self._status_code) + "\n\n" content += "headers:\n" for k, v in self._headers.iteritems(): content += "%s: %s\n" % (k, v) if self._write_buffer is not None: content += "\nbody: " + str(self._write_buffer) + "\n" self.do_verbose_log(content) except Exception as excep: log.err("JSON logging fail (flush): %s" % excep.message) return RequestHandler.flush(self, include_footers)
def flush(self, include_footers=False): """ This method is used internally by Cyclone, Cyclone specify the function on_finish but in that time the request is already flushed, so overwrite flush() was the easiest way to achieve our collection. It's here implemented to supports the I/O logging if requested with the command line options --io $number_of_request_recorded """ # This is the event tracker, used to keep track of the # outcome of the events. if not hasattr(self, '_status_code'): log.debug("Developer, check this out") if GLSetting.devel_mode: import pdb; pdb.set_trace() for event in outcoming_event_monitored: if event['handler_check'](self.request.uri) and \ event['method'] == self.request.method and \ event['status_checker'](self._status_code): EventTrack(event, self.request.request_time()) # if event['anomaly_management']: # event['anomaly_management'](self.request) if hasattr(self, 'globaleaks_io_debug'): try: content = ("<" * 15) content += (" Response %d " % self.globaleaks_io_debug) content += ("<" * 15) + "\n\n" content += "status code: " + str(self._status_code) + "\n\n" content += "headers:\n" for k, v in self._headers.iteritems(): content += "%s: %s\n" % (k, v) if self._write_buffer is not None: content += "\nbody: " + str(self._write_buffer) + "\n" self.do_verbose_log(content) except Exception as excep: log.err("JSON logging fail (flush): %s" % excep.message) return RequestHandler.flush(self, include_footers)