Compare commits

..

No commits in common. "48b2c373ca3f8420be648098f56e51db7bea0a5e" and "992d19f0cba6cf658818bf5839ff9353d22b59d4" have entirely different histories.

3 changed files with 13 additions and 82 deletions

View File

@ -1,12 +1,8 @@
# -*- coding: utf-8 -*-
"""
@Time : 2025/8/15 19:29
@Auth : 九月的海
@IDE : PyCharm
@Motto : Catch as catch can....
"""
from chuangliangTool.db_base import Bd_task_db, Async_create_ad_batch_db
from typing import List, Dict, Any, Optional
import json
import html
from django.db import migrations, models
@ -97,6 +93,8 @@ class AsyncTaskDataQuery:
"result_data": row[3]
}
task_logs.append(task_log)
print(f"找到 {len(task_logs)} 条任务日志记录")
return task_logs
except Exception as e:

View File

@ -1,20 +1,13 @@
# -*- coding: utf-8 -*-
"""
@Time : 2025/8/15 19:29
@Auth : 九月的海
@File : views.py
@IDE : PyCharm
@Motto : Catch as catch can....
"""
from django.http import JsonResponse
from django.views.decorators.http import require_GET
from django.utils import timezone # 使用 Django 的时区支持
import json
from chuangliangBaidu.migrations.BaidutaskQuery import AsyncTaskDataQuery
from django.http import JsonResponse
from django.views.decorators.http import require_GET
from django.utils import timezone
from django.shortcuts import render
import json
import logging
logger = logging.getLogger('chuangliang')
def get_task_details(request):
@ -36,12 +29,10 @@ def get_task_details(request):
"method": request.method
}
if is_browser_request:
logger.error(error_data)
return render(request, 'json_formatter3.html', {
"json_data": json.dumps(error_data, ensure_ascii=False),
"status": 400
})
logger.error(error_data)
return JsonResponse(error_data, status=400, json_dumps_params={'ensure_ascii': False})
try:
@ -55,17 +46,14 @@ def get_task_details(request):
"provided_value": task_id
}
if is_browser_request:
logger.error(error_data)
return render(request, 'json_formatter3.html', {
"json_data": json.dumps(error_data, ensure_ascii=False),
"status": 400
})
logger.error(error_data)
return JsonResponse(error_data, status=400, json_dumps_params={'ensure_ascii': False})
# 创建查询实例并获取数据
try:
logger.info(f'查询的任务ID: {task_id}')
task_query = AsyncTaskDataQuery(task_id)
result = task_query.get_task_details()
# 处理任务日志并解码中文
@ -98,15 +86,14 @@ def get_task_details(request):
# 如果是浏览器请求返回HTML视图
if is_browser_request:
logger.info(response_data)
return render(request, 'json_formatter3.html', {
# "json_data": response_data,
"json_data": json.dumps(response_data, ensure_ascii=False, indent=2),
"json_data": response_data,
# "json_data": json.dumps(response_data, ensure_ascii=False, indent=2),
"status": 200,
"task_id": task_id
})
logger.info(response_data)
# 返回JSON响应
return JsonResponse(
response_data,
json_dumps_params={'ensure_ascii': False}
@ -120,11 +107,10 @@ def get_task_details(request):
"time": current_time,
"task_id": task_id
}
print(e)
if is_browser_request:
logger.error(error_data)
return render(request, 'json_formatter3.html', {
"json_data": json.dumps(error_data, ensure_ascii=False),
"status": 500
})
logger.error(error_data)
return JsonResponse(error_data, status=500, json_dumps_params={'ensure_ascii': False})

View File

@ -122,56 +122,3 @@ STATIC_URL = 'static/'
# https://docs.djangoproject.com/en/5.2/ref/settings/#default-auto-field
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
LOGGING = {
'version': 1,
'disable_existing_loggers': False, # 保留Django默认日志器如django.server
'formatters': {
# 定义日志格式(可根据需求调整)
'verbose': {
'format': '{levelname} {asctime} {module} {process:d} {thread:d} {message}',
'style': '{',
},
'simple': {
'format': '{levelname} {message}',
'style': '{',
},
'custom': {
# 推荐:包含接口/业务关键信息如请求路径、用户ID等
'format': '{asctime} - {levelname} - {module} - {message}',
'style': '{',
},
},
'handlers': {
# 控制台处理器(开发环境推荐)
'console': {
'level': 'DEBUG', # 控制台输出DEBUG及以上级别
'class': 'logging.StreamHandler',
'formatter': 'custom', # 使用上面定义的custom格式
},
# 文件处理器(生产环境推荐,开发环境可选)
'file': {
'level': 'INFO', # 文件记录INFO及以上级别避免DEBUG日志过多
'class': 'logging.handlers.RotatingFileHandler',
'filename': BASE_DIR / 'logs' / 'chuangliang.log', # 日志文件路径
'maxBytes': 1024 * 1024 * 10, # 单个文件最大10MB
'backupCount': 10, # 保留10个旧日志文件
'formatter': 'custom', # 使用custom格式
'encoding': 'utf-8', # 避免中文乱码
},
},
'loggers': {
# 配置Django内置日志器如访问日志
'django.server': {
'handlers': ['console'], # 开发环境输出到控制台
'level': 'INFO', # 记录INFO及以上级别Django默认访问日志是INFO
'propagate': False, # 不传播到根日志器
},
# 配置您自定义的业务日志器(关键!)
'chuangliang': { # 如Logger类中的self._logger = logging.getLogger("chuangliang")
'handlers': ['console', 'file'], # 同时输出到控制台和文件
'level': 'DEBUG', # 开发环境记录所有DEBUG及以上日志
'propagate': False, # 不传播到根日志器(避免与其他日志器冲突)
},
},
}