def sinfo(): # Get server info for rendering. id = request.args.get("id", 999999) try: serv = current_app.config["SERVERS"][int(id)] except (IndexError, ValueError): return "", 404 res = create_send_recv(ip=serv["ip"], port=serv["port"], password=serv["pw"], data=Packet2BasicInfo, id=2) try: result = res.get(timeout=1) except celery.exceptions.TimeoutError: logger.error("Failed to get result in time.") return "", 500 return render_template("solebaga/partial/basic_info.html", uptime=display_time(int(result["data"]["uptime"]), 6), hostname=result["data"]["hostname"], uname=result["data"]["uname"], gutsama_version=result["data"]["gutsama_version"], py_version='{}.{}.{}'.format(*result["data"]["py_version"][0:3]))
def render_celery() -> dict: i = ap.celery.control.inspect() stats = list(i.stats().values())[0] return {"celery_banner": celery.VERSION_BANNER, "flask_ver": flask.__version__, "broker": stats["broker"]["transport"], "runtime": display_time(int(stats["clock"]), 6)}