mirror of https://github.com/tp4a/teleport
简单实现了一个定时任务执行功能,准备将session的超时删除纳入定时任务中,另外定时清除日志存储和每5分钟采集系统负载信息也可以用此方式实现了。
parent
9f673138c4
commit
e8644b689d
|
@ -716,6 +716,28 @@ class DatabaseInit:
|
|||
'CREATE TABLE `{}syslog` ({});'.format(self.db.table_prefix, ','.join(f))
|
||||
)
|
||||
|
||||
def _create_sys_state(self):
|
||||
""" 系统运行状态记录,用于dashboard页面展示
|
||||
系统每5分钟记录一次当前cpu负载/磁盘IO负载/网络IO负载/远程连接数,用来显示曲线图
|
||||
然后系统定时每天做一次清理操作,将超过30天的数据清除掉
|
||||
"""
|
||||
f = list()
|
||||
|
||||
# id: 自增主键
|
||||
f.append('`id` integer PRIMARY KEY {}'.format(self.db.auto_increment))
|
||||
|
||||
# type 数据类型:1=cpu, 2=disk-io, 3=net-io, 4=remote-count
|
||||
f.append('`type` int(11) DEFAULT 0')
|
||||
# val: 记录的值
|
||||
f.append('`val` int(11) DEFAULT 0')
|
||||
# ts: 记录时间
|
||||
f.append('`ts` int(11) DEFAULT 0')
|
||||
|
||||
self._db_exec(
|
||||
'创建系统运行状态记录表...',
|
||||
'CREATE TABLE `{}sys_state` ({});'.format(self.db.table_prefix, ','.join(f))
|
||||
)
|
||||
|
||||
def _create_record(self):
|
||||
""" 运维录像日志 """
|
||||
f = list()
|
||||
|
|
|
@ -15,6 +15,7 @@ from app.base.configs import get_cfg
|
|||
from app.base.db import get_db
|
||||
from app.base.logger import log
|
||||
from app.base.session import session_manager
|
||||
from app.base.cron import tp_corn
|
||||
|
||||
|
||||
class WebApp:
|
||||
|
@ -131,11 +132,17 @@ class WebApp:
|
|||
# 启动session超时管理
|
||||
session_manager().start()
|
||||
|
||||
def job():
|
||||
log.v('---job--\n')
|
||||
tp_corn().add_job('test', job, first_interval_seconds=None, interval_seconds=10)
|
||||
tp_corn().start()
|
||||
|
||||
try:
|
||||
tornado.ioloop.IOLoop.instance().start()
|
||||
except:
|
||||
log.e('\n')
|
||||
|
||||
tp_corn().stop()
|
||||
session_manager().stop()
|
||||
|
||||
return 0
|
||||
|
|
Loading…
Reference in New Issue