Пример #1
0
  def GenerateReport(self, exceptions):
    """Generates an HTML exception report.

    Args:
      exceptions: A list of ExceptionRecord objects. This argument will be
        modified by this function.
    Returns:
      An HTML exception report.
    """

    exceptions.sort(key=lambda e: (e.minor_version, -e.count))
    versions = [(minor, list(excs)) for minor, excs
                in itertools.groupby(exceptions, lambda e: e.minor_version)]

    template_values = {
        'version_filter': self.version_filter,
        'version_count': len(versions),

        'exception_count': sum(len(excs) for _, excs in versions),

        'occurrence_count': sum(y.count for x in versions for y in x[1]),
        'app_id': self.app_id,
        'major_version': self.major_version,
        'date': self.yesterday,
        'versions': versions,
    }
    path = os.path.join(os.path.dirname(__file__), 'templates', 'report.html')
    return _template.render(path, template_values)
  def GenerateReport(self, exceptions):
    """Generates an HTML exception report.

    Args:
      exceptions: A list of ExceptionRecord objects. This argument will be
        modified by this function.
    Returns:
      An HTML exception report.
    """

    exceptions.sort(key=lambda e: (e.minor_version, -e.count))
    versions = [(minor, list(excs)) for minor, excs
                in itertools.groupby(exceptions, lambda e: "%s.%s" % (e.major_version, e.minor_version))]

    template_values = {
        'version_filter': self.version_filter,
        'version_count': len(versions),

        'exception_count': sum(len(excs) for _, excs in versions),

        'occurrence_count': sum(y.count for x in versions for y in x[1]),
        'app_id': self.app_id,
        'major_version': self.major_version,
        'date': self.yesterday,
        'versions': versions,
    }
    path = os.path.join(os.path.dirname(__file__), 'templates', 'report.html')
    return _template.render(path, template_values)
Пример #3
0
def render(tmplname, data):
    """Helper function to render a template."""
    here = os.path.dirname(__file__)
    tmpl = os.path.join(here, 'templates', tmplname)
    data['env'] = os.environ
    try:
        return _template.render(tmpl, data)
    except Exception, err:
        logging.exception('Failed to render %s', tmpl)
        return 'Problematic template %s: %s' % (tmplname, err)
Пример #4
0
def render(tmplname, data):
  """Helper function to render a template."""
  here = os.path.dirname(__file__)
  tmpl = os.path.join(here, 'templates', tmplname)
  data['env'] = os.environ
  try:
    return _template.render(tmpl, data)
  except Exception, err:
    logging.exception('Failed to render %s', tmpl)
    return 'Problematic template %s: %s' % (tmplname, err)
Пример #5
0
def RenderToResponse(handler, template_file, template_params):
  """Render the given template_file using template_vals and write to response.

  Args:
    handler: the handler whose response we should render to
    template_file: the file name only of the template file we are using
    template_params: the parameters used to render the given template
  """
  template_params = _GetDefaultParams(template_params)
  rendered = _template.render(_GetTemplatePath(template_file), template_params)
  handler.response.out.write(rendered)
Пример #6
0
def RenderToResponse(handler, template_file, template_params):
  """Render the given template_file using template_vals and write to response.

  Args:
    handler: the handler whose response we should render to
    template_file: the file name only of the template file we are using
    template_params: the parameters used to render the given template
  """
  template_params = _GetDefaultParams(template_params)
  rendered = _template.render(_GetTemplatePath(template_file), template_params)
  handler.response.out.write(rendered)
Пример #7
0
def render(tmplname, data):
    """Helper function to render a template."""
    here = os.path.dirname(__file__)
    tmpl = os.path.join(here, 'templates', tmplname)
    data['env'] = os.environ
    data['shell_ok'] = recording.config.SHELL_OK
    data['multithread'] = os.getenv('wsgi.multithread')
    try:
        return _template.render(tmpl, data)
    except Exception as err:
        logging.exception('Failed to render %s', tmpl)
        return 'Problematic template %s: %s' % (tmplname, err)
Пример #8
0
def render(tmplname, data):
  """Helper function to render a template."""
  here = os.path.dirname(__file__)
  tmpl = os.path.join(here, 'templates', tmplname)
  data['env'] = os.environ
  data['shell_ok'] = recording.config.SHELL_OK
  data['multithread'] = os.getenv('wsgi.multithread')
  try:
    return _template.render(tmpl, data)
  except Exception, err:
    logging.exception('Failed to render %s', tmpl)
    return 'Problematic template %s: %s' % (tmplname, err)
Пример #9
0
def RenderToResponse(handler, template_file, template_params):
    """Render the given template_file using template_vals and write to response.

  Args:
    handler: the handler whose response we should render to
    template_file: the file name only of the template file we are using
    template_params: the parameters used to render the given template
  """
    template_params = _GetDefaultParams(template_params)

    handler.response.headers['X-FRAME-OPTIONS'] = ('ALLOW-FROM %s' %
                                                   config.ADMIN_CONSOLE_URL)
    template_params['admin_console_url'] = config.ADMIN_CONSOLE_URL

    rendered = _template.render(_GetTemplatePath(template_file),
                                template_params)
    handler.response.out.write(rendered)
Пример #10
0
def RenderToResponse(handler, template_file, template_params):
  """Render the given template_file using template_vals and write to response.

  Args:
    handler: the handler whose response we should render to
    template_file: the file name only of the template file we are using
    template_params: the parameters used to render the given template
  """
  template_params = _GetDefaultParams(template_params)








  handler.response.headers['X-FRAME-OPTIONS'] = ('ALLOW-FROM %s' %
                                                 config.ADMIN_CONSOLE_URL)
  template_params['admin_console_url'] = config.ADMIN_CONSOLE_URL

  rendered = _template.render(_GetTemplatePath(template_file), template_params)
  handler.response.out.write(rendered)