|
@@ -23,9 +23,10 @@ from database import *
|
|
from scene import Dialog,Msg
|
|
from scene import Dialog,Msg
|
|
from entity import Error
|
|
from entity import Error
|
|
import traceback
|
|
import traceback
|
|
-from util import insert_log, timetic
|
|
|
|
-from prometheus_fastapi_instrumentator import Instrumentator, metrics
|
|
|
|
-#from prometheus_client import Summary
|
|
|
|
|
|
+from util import insert_log, timetic, BOT_CREATE_ACCOUNT_LATENCY
|
|
|
|
+
|
|
|
|
+from prometheus_fastapi_instrumentator import Instrumentator
|
|
|
|
+import time
|
|
|
|
|
|
|
|
|
|
logger=get_logger("log")
|
|
logger=get_logger("log")
|
|
@@ -34,11 +35,13 @@ logger=get_logger("log")
|
|
app = FastAPI()
|
|
app = FastAPI()
|
|
|
|
|
|
# 服务监控,qps,latent, cpu利用率
|
|
# 服务监控,qps,latent, cpu利用率
|
|
-Instrumentator().instrument(app).expose(app)
|
|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
|
|
@app.post("/botservice")
|
|
@app.post("/botservice")
|
|
@timetic
|
|
@timetic
|
|
def botservice(reqbot:reqRobot):
|
|
def botservice(reqbot:reqRobot):
|
|
|
|
+ start_time = time.time()
|
|
bid, uid, code, asr = reqbot.taskId, reqbot.userId, reqbot.nodeId, reqbot.asrText
|
|
bid, uid, code, asr = reqbot.taskId, reqbot.userId, reqbot.nodeId, reqbot.asrText
|
|
session_id, record_id = reqbot.sessionId, reqbot.recordId
|
|
session_id, record_id = reqbot.sessionId, reqbot.recordId
|
|
logger.info("智能客服:botId: {},session:{}, uid: {}, nodeId: {}, ASR: {}".format(bid, session_id, uid, code, asr))
|
|
logger.info("智能客服:botId: {},session:{}, uid: {}, nodeId: {}, ASR: {}".format(bid, session_id, uid, code, asr))
|
|
@@ -83,7 +86,10 @@ def botservice(reqbot:reqRobot):
|
|
logger.error(e)
|
|
logger.error(e)
|
|
#del_cache(uid, bid, 'status', session_id)
|
|
#del_cache(uid, bid, 'status', session_id)
|
|
return ChatResponse(code=Error.error.value, message="internal error").to_json_string()
|
|
return ChatResponse(code=Error.error.value, message="internal error").to_json_string()
|
|
|
|
+ finally:
|
|
|
|
+ latency = (time.time() - start_time)
|
|
|
|
+ AI_BOT_REQUEST_LATENCY.labels(bid).observe(latency)
|
|
|
|
|
|
-
|
|
|
|
|
|
+Instrumentator().instrument(app).expose(app)
|
|
if __name__ == '__main__':
|
|
if __name__ == '__main__':
|
|
uvicorn.run("AiBot:app", host='0.0.0.0', port=40072,workers=4)
|
|
uvicorn.run("AiBot:app", host='0.0.0.0', port=40072,workers=4)
|