我试图通过cronjob调用deamon进程,可以使用
调用foo = calloc(10, sizeof (my_struct));
我尝试了以下方法
root@ip:/home/web/path_to_directory# python api/api_daemon.py start
修改1 基本上,我使用cron作业来检查进程是否正在运行,如果进程没有运行,那么只会调用进程。
import os
os.system("/usr/bin/python /home/web/path_to_directory/api/api_daemon.py start")
import os
os.system("python /home/web/path_to_directory/api/api_daemon.py start")
import os
os.system("python api/api_daemon.py start")#works on shell and when triggered manually
通过cronjob def process_check():
process_list = ['api_daemon.py']
for process in process_list:
processname = 'python api/'+process+' start'
#print processname
tmp = os.popen("ps -Af").read()
proccount = tmp.count(processname)
message1 = 'processes running of %s' % (processname)
print proccount
#proccount = -2
if not proccount > 0 :
logging.info('status file stopped')
send_msg(process) # to notify process has been restarted
run_process()
def run_process():
import os
os.system("chdir /home/web/path_to_directory && python api/api_daemon.py start")
被称为
答案 0 :(得分:0)
如果api_daemon.py
scrpt取决于/home/web/path_to_directory
中的某个模块,则必须先将该目录添加到该目录的路径或chdir。
话虽如此,您可以尝试调用命令:
chdir /home/web/path_to_directory && python api/api_daemon.py start
在您的crontab文件中。首先会转到项目目录,然后启动api_daemon
。