def get(self):
    logging.info(self.request.path)
    if not self.request.path.endswith('/'):
      querystring = self.request.query_string
      if not querystring:
        self.redirect(self.request.path + '/')
      else:
        self.redirect(self.request.path + '/?' + self.request.query_string)
      return
    if not 'source' in self.request.arguments():
      pklfiles = self.ListPklFiles()
      self.RenderPklList(pklfiles)
    else:
      source = self.request.get('source')
      logging.info('Before ReadData')
      errormessage, recordlist = self.ReadData(source)
      logging.info('After ReadData')
      if errormessage:
        self.RenderError(errormessage, source)
        return
      if not recordlist:
        self.RenderError('No records in this Appstats snapshot.', source)
        return


      recording_starttime = recordlist[-1].start_timestamp_milliseconds()
      recording_starttime *= 0.001
      filter_condition, filtered_records = self.FilterRecords(
          recordlist, recording_starttime)
      records_bytimestamp, urlstatsdict = self.InitURLStats(filtered_records)
      url = self.request.get('url')
      detail = self.request.get('detail')
      if not url and not detail:
        self.RenderMain(urlstatsdict, source, recording_starttime)
      elif not detail:
        self.RenderDrill(url, urlstatsdict, recording_starttime,
                         source, filter_condition)
      else:
        detail = int(detail)
        self.RenderDetail(url, urlstatsdict, records_bytimestamp, detail)
Handler for statistics/diagnostics page.
dataset/ETHPy150Open AppScale/appscale/AppServer/google/appengine/ext/analytics/main.py/StatsPage.get