如何在Python中编写脚本以输出Celery是否在机器(Ubuntu)上运行?
我的用例是,我有一个简单的Python文件,其中包含一些任务。我没有使用Django或Flask。我使用supervisor来运行任务队列。例如,
tasks.py
我的用例是,我有一个简单的Python文件,其中包含一些任务。我没有使用Django或Flask。我使用supervisor来运行任务队列。例如,
tasks.py
from celery import Celery, task
app = Celery('tasks')
@app.task()
def add_together(a, b):
return a + b
主管:
[program:celery_worker]
directory = /var/app/
command=celery -A tasks worker info
这一切都有效,我现在希望有一个页面来检查celery/supervisor进程是否正在运行。例如使用Flask编写类似下面的代码,使我可以托管页面并返回200状态,以实现负载均衡。
例如...
check_status.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def status_check():
#check supervisor is running
if supervisor:
return render_template('up.html')
else:
return render_template('down.html')
if __name__ == '__main__':
app.run()
app = celery.Celery('tasks', broker='redis://')
这行代码是不必要的。app
变量在其他地方没有被使用到。 - djromero