Exemple #1
0
import datetime
import threading
from Queue import Queue

from tools.conf import POLLING

from tools.db import db
from tools.toolbox import init_log
from tools.webs import create_web_status
from tools.servers import create_server_status

lock = threading.RLock()
queue = Queue()

# 初始化日志模块
logger = init_log(log_name='flow', level_name='info', fi=True)


class MainThread(threading.Thread):
    def run(self):
        """
        主线程
        向队列中添加任务, 没过特定时间扫描一遍数据库,将需要查询的项目添加到队列
        此处需要查询的项目有: 服务器、网站、机房温度
        所有查询出的信息都必须包含时间字符串
        每一轮创建任务开始是检查任务队列是否为空
        不为空时输出日志并清空队列
        """
        global queue
        while True:
            if queue.empty() is False:
Exemple #2
0
import datetime
from bson.objectid import ObjectId
from socket import error as SocketError
from bottle import jinja2_template as template
from beaker.middleware import SessionMiddleware

from tools.conf import STATIC_DIR, COOKIE_EXPIRES

from tools.toolbox import init_log
from tools.webs import on_create_web
from tools.servers import on_create_server
from tools.db import db, update_monitor_status
from tools.users import check_code, create_admin , update_admin

# 初始化日志模块
logger = init_log(log_name='bottle_server', level_name='info',fi=True)

# 启动监控轮询线程
from tools.flow import start as flow_start
flow_start()



# Session Config
session_opts = {
    'session.type': 'file',
    'session.cookie_expires': COOKIE_EXPIRES,
    'session.data_dir': './sessions',
    'session.auto': True
}
app = SessionMiddleware(app(), session_opts)
Exemple #3
0
import threading
from Queue import Queue

from tools.conf import POLLING

from tools.db import db
from tools.toolbox import init_log
from tools.webs import create_web_status
from tools.servers import create_server_status


lock = threading.RLock()
queue = Queue()

# 初始化日志模块
logger = init_log(log_name='flow', level_name='info',fi=True)

class MainThread(threading.Thread):

    def run(self):

        """
        主线程
        向队列中添加任务, 没过特定时间扫描一遍数据库,将需要查询的项目添加到队列
        此处需要查询的项目有: 服务器、网站、机房温度
        所有查询出的信息都必须包含时间字符串
        每一轮创建任务开始是检查任务队列是否为空
        不为空时输出日志并清空队列
        """
        global queue
        while True:
Exemple #4
0
import datetime
from bson.objectid import ObjectId
from socket import error as SocketError
from bottle import jinja2_template as template
from beaker.middleware import SessionMiddleware

from tools.conf import STATIC_DIR, COOKIE_EXPIRES

from tools.toolbox import init_log
from tools.webs import on_create_web
from tools.servers import on_create_server
from tools.db import db, update_monitor_status
from tools.users import check_code, create_admin, update_admin

# 初始化日志模块
logger = init_log(log_name='bottle_server', level_name='info', fi=True)

# 启动监控轮询线程
from tools.flow import start as flow_start
flow_start()

# Session Config
session_opts = {
    'session.type': 'file',
    'session.cookie_expires': COOKIE_EXPIRES,
    'session.data_dir': './sessions',
    'session.auto': True
}
app = SessionMiddleware(app(), session_opts)
bottle.BaseTemplate.defaults['session'] = request.environ.get('beaker.session')