From c7788c409f07362150448b52043aba58921e45f8 Mon Sep 17 00:00:00 2001 From: wangsiyuan <2392948297@qq.com> Date: Wed, 28 Feb 2024 17:56:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20huaweitest.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- huaweitest.py | 68 +++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 58 insertions(+), 10 deletions(-) diff --git a/huaweitest.py b/huaweitest.py index 7b04a52..f3f1a5a 100644 --- a/huaweitest.py +++ b/huaweitest.py @@ -1,4 +1,5 @@ -from fastapi import FastAPI +from fastapi import FastAPI, Query, Request +from datetime import datetime app = FastAPI() @@ -10,18 +11,43 @@ async def root(): @app.get("/script/getscriparam") async def getscriparam(): - data = {"bounceRate": {"from": 0.3, "to": 0.4}, "ctr": {"from": 0.03, "to": 0.05}, - "interaction": {"from": 20, "to": 30}, - "pagesToViewPerSession": {"from": 2, "to": 3}, "sessionsPerUser": {"from": 2, "to": 3}} - return { - "code": 0, - "msg": "ok", - "data": data + data = { + "interaction": { + "from": 20, + "to": 30 + }, + "bounceRate": { + "from": 0.3, + "to": 0.4 + }, + "ctr": { + "from": 0.03, + "to": 0.05 + }, + "pagesToViewPerSession": { + "from": 2, + "to": 3 + }, + "sessionsPerUser": { + "from": 2, + "to": 3 + } } + return data + @app.get("/script/success") -async def do_success(): +async def do_success(request: Request): + # 获取当前时间 + current_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S") + + # 获取请求者的IP地址 + client_host = request.client.host + + # 打印上报成功的时间和IP地址 + print(f"上报成功时间: {current_time}, IP地址: {client_host}") + data = {} return { "code": 0, @@ -32,8 +58,30 @@ async def do_success(): @app.get("/script/failed") async def do_failed(reason: str = None): + # 获取当前时间 + now = datetime.now() + + # 格式化时间为 年-月-日 时:分:秒 的格式 + formatted_now = now.strftime("%Y-%m-%d %H:%M:%S") # 假设这里记录失败原因到日志或数据库 - print(f"失败原因: {reason}") # 实际应用中应使用更专业的日志记录方式 + print(f"上报失败,Time: {formatted_now}, 失败原因: {reason}") # 实际应用中应使用更专业的日志记录方式 + return { + "code": 0, + "msg": "ok", + "data": {} + } + + +@app.get("/report/chrome/crash") +async def report_chrome_crash(id: str, timestamp: str = Query(None)): + # 获取当前时间 + now = datetime.now() + + # 格式化时间为 年-月-日 时:分:秒 的格式 + formatted_now = now.strftime("%Y-%m-%d %H:%M:%S") + + # 假设这里记录失败原因到日志或数据库 + print(f"Time: {formatted_now}, ID: {id}, 时间戳: {timestamp}") # 实际应用中应使用更专业的日志记录方式 return { "code": 0, "msg": "ok",