1 Star 0 Fork 0

朱烜宇/FileDeal

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
main.py 1.69 KB
一键复制 编辑 原始数据 按行查看 历史
hello_python 提交于 2019-05-21 17:39 +08:00 . test ok
import sys
import logging
from cloghandler import ConcurrentRotatingFileHandler
from config.settings import log_config
from controller.controller import Controller
def daemon():
import os
# create - fork 1
try:
pid = os.fork()
if pid > 0:
return pid
except OSError as error:
logging.error('fork #1 failed: %d (%s)' %
(error.errno, error.strerror))
return -1
# it separates the son from the father
# os.chdir('/opt/pbx')
os.setsid()
os.umask(0)
# create - fork 2
try:
pid = os.fork()
if pid > 0:
return pid
except OSError as error:
logging.error('fork #2 failed: %d (%s)' %
(error.errno, error.strerror))
return -1
sys.stdout.flush()
sys.stderr.flush()
si = open("/dev/null", 'r')
so = open("/dev/null", 'a+')
se = open("/dev/null", 'a+')
os.dup2(si.fileno(), sys.stdin.fileno())
os.dup2(so.fileno(), sys.stdout.fileno())
os.dup2(se.fileno(), sys.stderr.fileno())
return 0
def setlog():
"""
设置日志格式
:return:
"""
rotateHandler = ConcurrentRotatingFileHandler(
log_config['file_path'], "a", 20 * 1024 * 1024, 100)
rotateHandler.setLevel(logging.INFO)
formatter = logging.Formatter(
'[%(asctime)s] [process:%(process)s] [%(filename)s:%(lineno)d] %(levelname)s %(message)s')
rotateHandler.setFormatter(formatter)
log = logging.getLogger()
log.addHandler(rotateHandler)
log.setLevel(logging.INFO)
def main():
setlog()
#pid = daemon()
# if pid:
# return pid
Controller().start()
if __name__ == "__main__":
main()
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/pythonista/FileDeal.git
git@gitee.com:pythonista/FileDeal.git
pythonista
FileDeal
FileDeal
master

搜索帮助