def get(self): self.render("index.html") class RestartHandler(BaseHandler): @cyclone.web.authenticated def post(self): return self.render_json(**execute("supervisorctl restart all && supervisorctl status all")) class UpdateHandler(BaseHandler): @cyclone.web.authenticated def post(self): return self.render_json(**execute("supervisorctl status all")) class UpgradeHandler(BaseHandler): @cyclone.web.authenticated def post(self): release = self.get_argument("release") cmd1 = "cd /opt/ottadmin" cmd2 = "git pull origin %s && git checkout %s " % (release, release) cmd3 = "supervisorctl restart all" return self.render_json(**execute("%s && %s && %s" % (cmd1, cmd2, cmd3))) permit.add_route(DashboardHandler, r"/dashboard", u"控制面板", MenuSys, order=2.0000, is_menu=True) permit.add_route(DashboardHandler, r"/", u"控制面板", MenuSys, order=2.0001,is_menu=False) permit.add_route(UpdateHandler, r"/dashboard/update", u" 刷新服务", MenuSys, order=2.0002, is_menu=False) permit.add_route(RestartHandler, r"/dashboard/restart", u"重启服务", MenuSys, order=2.0003, is_menu=False)
logcls = models.get_logtable(table_name) _query = self.db.query(logcls).filter( logcls.time >= start_time + ':00', logcls.time <= end_time + ':59' ) if priority: _query = _query.filter(logcls.priority == priority) if facility: _query = _query.filter(logcls.facility == facility) if host: _query = _query.filter(logcls.host == host) if username: _query = _query.filter(logcls.username == username) if keyword: _query = _query.filter(logcls.message.like('%' + keyword + '%')) _query = _query.order_by(logcls.time.desc()) self.render("log_query.html", prioritys=PRIORITY, facilitys=FACILITY, page_data=self.get_page_data(_query), **self.get_params()) permit.add_route(LogQueryHandler, r"/log/query", u"日志查询", MenuStat, order=3.0000, is_menu=True)
class PasswordUpdateHandler(BaseHandler): def get(self): form = password_forms.password_update_form() form.fill(tra_user=self.get_secure_cookie("tra_user")) return self.render("base_form.html", form=form) def post(self): form = password_forms.password_update_form() if not form.validates(source=self.get_params()): self.render("base_form.html", form=form) return if form.d.tra_user_pass != form.d.tra_user_pass_chk: self.render("base_form.html", form=form, msg=u'确认密码不一致') return opr = self.db.query(models.TlOperator).filter_by(operator_name=form.d.tra_user).first() opr.operator_pass = md5(form.d.tra_user_pass).hexdigest() ops_log = models.TlOperateLog() ops_log.operator_name = self.get_secure_cookie("tra_user") ops_log.operate_ip = self.get_secure_cookie("tra_login_ip") ops_log.operate_time = utils.get_currtime() ops_log.operate_desc = u'操作员(%s)修改密码' % (self.get_secure_cookie("tra_user"),) self.db.add(ops_log) self.db.commit() self.redirect("/") permit.add_route(PasswordUpdateHandler, r"/password", u"密码修改", MenuSys, order=1.0000, is_menu=False)