def get(self): day = timedelta(hours=24) _yesterday = self.now - day date_from = self.get_argument("date_from", False) date_to = self.get_argument("date_to", False) if date_from: date_from = datestring_to_unixtime(date_from) else: date_from = datetime_to_unixtime(_yesterday) if date_to: date_to = datestring_to_unixtime(date_to) else: date_to = datetime_to_unixtime(self.now) process_data = {} for process in self.processes: row = self.mongo.get_collection(process) process_data[process] = row.find({"time": {"$gte": date_from, "$lt": date_to}}).sort("time", ASCENDING) _template = render( template="processes.html", current_page=self.current_page, processes=self.processes, process_data=process_data, date_from=date_from, date_to=date_to, unread_values=self.unread_values, ) self.write(_template)
def get(self): # Update unread count self.unread_col.update({"id": 1}, {"$set": {"logs": 0}}) row = self.mongo.get_collection("logs") logs = row.find().sort("time", DESCENDING) _template = render( template="logs.html", current_page=self.current_page, logs=logs, unread_values=self.unread_values ) self.write(_template)
def write_error(self, status_code, **kwargs): error_trace = None if "exc_info" in kwargs: import traceback error_trace = "" for line in traceback.format_exception(*kwargs["exc_info"]): error_trace += line _template = render(template="error.html", status_code=status_code, error_trace=error_trace, unread_values=None) self.write(_template)
def get(self): row = self.mongo.get_collection("exceptions") exceptions = row.find().sort("last_occurrence", DESCENDING) # Update unread count self.unread_col.update({"id": 1}, {"$set": {"exceptions": 0}}) _template = render( template="exceptions.html", exceptions=exceptions, current_page=self.current_page, unread_values=self.unread_values, ) self.write(_template)
def post(self): level = self.get_arguments("level[]") filter = self.get_argument("filter", None) query = {} if level: level_params = [{"level": x} for x in level] query = {"$or": level_params} if filter: query["_searchable"] = {"$regex": str(filter), "$options": "i"} row = self.mongo.get_collection("logs") logs = row.find(query).sort("time", DESCENDING) _template = render(template="partials/logs_filter.html", logs=logs) self.write(_template)
if "disk" in active_checks: for check in checks["disk"]: disk.append(check) _volumes = get_disk_volumes() for volume in _volumes: if volume not in volumes: volumes.append(volume) _template = render( template="system.html", current_page="system", checks=checks, network=network, network_interfaces=network_interfaces, volumes=volumes, disk=disk, date_from=date_from, date_to=date_to, start_date=start_date, unread_values=self.unread_values, ) self.write(_template) class Processes(Base): def initialize(self): super(Processes, self).initialize() self.current_page = "processes" self.processes = settings.PROCESS_CHECKS