乐于分享
好东西不私藏

低代码实战:YOLO + OpenClaw 轻松实现缺陷检测与预警

低代码实战:YOLO + OpenClaw 轻松实现缺陷检测与预警
↑ 点击蓝字 关注极市平台
来源丨机器学习AI算法工程
编辑丨极市平台

极市导读

分享一篇用 YOLO 配合 OpenClaw 打造低代码的“离线自动化”质检系统的教程指南。只需几句简单的自然语言配置,就能轻松实现模型调用、缺陷预警与每日数据报表的全面自动化。 >>加入极市CV技术交流群,走在计算机视觉的最前沿

让 OpenClaw 指挥 YOLO,7×24 小时盯着流水线,发现缺陷立即停机报警,顺便生成日报——这听起来很美。但现实是:OpenClaw 调用大模型推理需要 1-3 秒,YOLO 检测需要 0.1-0.5 秒,总延迟 5 秒以上,对高速流水线来说是致命的。
解决方案:不追求实时,先做离线自动化。本教程不讲复杂原理,只讲三件事:

  1. 训练一个能用的 YOLO 缺陷检测模型
  2. 创建 OpenClaw 技能,集成 YOLO
  3. 配置自动化任务:日报、预警、趋势分析

全程低代码,大部分配置只需对着 OpenClaw 说句话。

第一步:快速训练 YOLO 模型

如果你已经有训练好的 YOLO 模型,直接跳到第二步。

一、环境配置(5 分钟)

# 创建虚拟环境
conda create -n yolo-defect python=3.10-y
conda activate yolo-defect

# 安装 PyTorch(有 GPU 用第一个,无 GPU 用第二个)
# GPU 版本(CUDA 12.1)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

# CPU 版本pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu

# 安装 YOLOv8

pip install ultralytics -i https://pypi.douban.com/simple/

二、准备数据集

目录结构:

defect_dataset/
├── images/
│   ├── train/      # 训练集图片(70%)
│   │   ├── IMG_001.jpg
│   │   └── ...
│   └── val/        # 验证集图片(20%)
└── labels/         # 标注文件(与 images 结构一一对应)
    ├── train/
    │   ├── IMG_001.txt  # 对应 IMG_001.jpg
    │   └── ...
    └── val/

标注格式(每行一个缺陷):

类别ID 中心点x 中心点y 宽度 高度

示例(检测到 2 个缺陷):

0 0.512 0.423 0.234 0.1561 0.678 0.345 0.089 0.123

数据集配置文件(data.yaml):

path: /path/to/defect_dataset  # 数据集根目录
train: images/train             # 训练集路径
val: images/val                 # 验证集路径

nc:4# 类别数量
names:# 类别名称
- scratch       # 划痕
- dent          # 凹坑
- stain         # 污渍
- crack         # 裂纹

三、开始训练

from ultralytics import YOLO

# 加载预训练模型(yolov8n 最快,yolov8s 最平衡)
model = YOLO('yolov8n.pt')

# 开始训练(自动下载预训练权重)
results = model.train(
    data='defect_dataset/data.yaml',
    epochs=100,# 训练轮数
    imgsz=640,# 输入尺寸
    batch=16,# 批次大小(根据 GPU 显存调整)
    name='defect_v1',# 实验名称
    device=0,# GPU ID(CPU 设为 'cpu')
    patience=20# 早停机制)

训练完成后,最佳模型保存在:

runs/detect/defect_v1/weights/best.pt

快速验证模型效果:

from ultralytics import YOLO

# 加载训练好的模型
model = YOLO('runs/detect/defect_v1/weights/best.pt')

# 单张图片检测
results = model('test.jpg', conf=0.25)

# 批量检测results = model('/data/products/*.jpg', conf=0.25, save=True)
# 结果保存在 runs/detect/predict/ 目录

第二步:创建 OpenClaw YOLO 技能

OpenClaw 通过"技能"扩展功能。我们创建一个 YOLO 缺陷检测技能,让 OpenClaw 能够调用 YOLO 模型。

一、创建技能目录

mkdir-p yolo-defect-skill/toolscd yolo-defect-skill

目录结构:

yolo-defect-skill/
├── skill.json          # 技能配置文件
├── prompt.md           # 系统提示词
└── tools/              # 检测工具
    ├── detect_single.py
    ├── detect_batch.py
    └── analyze.py

二、编写技能配置文件

skill.json:

{
"name":"yolo-defect-detect",
"version":"1.0.0",
"description":"使用 YOLO 检测产品表面缺陷(划痕、凹坑、污渍、裂纹)",
"permissions":{
"file.read":["*"],
"file.write":["*"]
},
"tools":
["detect_single","detect_batch","generate_report"],
"dependencies":[
"ultralytics>=8.0.0",
"opencv-python>=4.8.0",
"pandas>=2.0.0"
],
"config":{
"model_path":"runs/detect/defect_v1/weights/best.pt",
"default_conf":0.25,
"default_iou":0.45
}
}

三、编写检测工具

tools/detect_single.py:

from ultralytics import YOLO
import json
from pathlib import Path

defdetect_single(image_path:str, conf:float=0.25)->dict:
"""    
      检测单张图片中的缺陷    
      Args:
          image_path: 图片路径
          conf: 置信度阈值

      Returns:
          检测结果字典
      "
""
# 加载模型    

model = YOLO('runs/detect/defect_v1/weights/best.pt')

# 执行检测    
results = model(image_path, conf=conf)

# 解析结果    
    detections =[]
for r in results:
for box in r.boxes:
            xyxy = box.xyxy[0].tolist()
            cls_id =int(box.cls[0])
            conf_score =float(box.conf[0]) 
            class_name = r.names[cls_id]

            detections.append({
'class': class_name,
'class_id': cls_id,
'confidence':round(conf_score,3),
'bbox':{
'x1':round(xyxy[0],2),
'y1':round(xyxy[1],2),
'x2':round(xyxy[2],2),
'y2':round(xyxy[3],2)
}
})

return{
'image_path':str(image_path),
'total_detections':len(detections),
'detections': detections
}

tools/detect_batch.py:

from pathlib import Path
from.detect_single import detect_single

defdetect_batch(image_dir:str, conf:float=0.25)->dict:
"""    
    批量检测目录下的所有图片
    Args:
        image_dir: 图片目录
        conf: 置信度阈值
    Returns:
        批量检测结果
    "
""
# 获取所有图片    
image_files =list(Path(image_dir).glob("*.jpg"))+list(Path(image_dir).glob("*.png"))

# 批量检测    
    all_results =[]
for img_path in image_files:
try:
            result = detect_single(str(img_path), conf)    
            all_results.append(result)
except Exception as e:
print(f"检测失败: {img_path}, 错误: {e}")

# 统计
    total_images =len(image_files)

total_detections =sum(r['total_detections']for r in all_results)

# 按类别统计
    class_stats ={}
for r in all_results:
for det in r['detections']:
            class_name = det['class'

class_stats[class_name]= class_stats.get(class_name,0)+1

return{
'total_images': total_images,
'total_detections': total_detections,
'defect_rate':round(total_detections / total_images *100,2)if total_images >0else0,
'class_statistics': class_stats,
'detailed_results': all_results
}

tools/analyze.py:

import pandas as pd
import json

defgenerate_report(results:dict, output_path:str,format:str='csv')->str:
"""
    生成检测报告

    Args:
        results: 检测结果(来自 detect_batch)
        output_path: 输出路径
        format: 输出格式('csv', 'json')
    Returns:
        生成的文件路径
    "
""
# 提取详细数据    
    detailed_data =[]
for img_result in results['detailed_results']:
for det in img_result['detections']: 
            detailed_data.append({
'image_path': img_result['image_path'],
'class': det['class'],
'confidence': det['confidence'],
'x1': det['bbox']['x1'],
'y1': det['bbox']['y1'],
'x2': det['bbox']['x2'],
'y2': det['bbox']['y2']
})

# 生成 DataFrame    
    df = pd.DataFrame(detailed_data)

# 保存    
    output_file = Path(output_path)
ifformat=='csv':

df.to_csv(output_file, index=False, encoding='utf-8-sig')
elifformat=='json'

df.to_json(output_file, orient='records', force_ascii=False, indent=2)

# 生成统计摘要    
    summary ={
'总检测图片数': results['total_images'],
'总缺陷数': results['total_detections'],
'缺陷率':f"{results['defect_rate']}%",
'各类别统计': results['class_statistics']}

# 保存摘要    
              summary_file = output_file.parent /f"{output_file.stem}_summary.json"
withopen(summary_file,'w', encoding='utf-8')as f:

json.dump(summary, f, ensure_ascii=False, indent=2)

returnstr(output_file),str(summary_file)

四、安装技能到 OpenClaw

# 进入技能目录
cd yolo-defect-skill

# 安装技能
openclaw skills install.

# 验证安装
openclaw skills list |grep yolo-defect-detect

第三步:配置自动化任务(核心!)

这是最关键的一步。我们通过自然语言配置,让 OpenClaw 自动监测 YOLO 识别结果,并根据不同场景触发不同动作。

方案一:每日缺陷统计报表(定时任务)

场景:每天凌晨 2 点检测所有产品图片,早上 8 点推送报表到企业微信

配置方式(一句话搞定):

用户:每天凌晨 2 点,检测 /data/products/ 目录下所有图片,统计缺陷类型,早上 8 点把报表发我企业微信OpenClaw:已创建定时任务,每天 02:00 执行检测,08:00 推送报表

OpenClaw 自动生成的配置:

tasks/daily_defect_report.yaml
---
name:"每日缺陷统计报表"
schedule:
cron:"0 2 * * *"

workflow:
-step: detect
tool: yolo-defect-detect.detect_batch
params:
image_dir:"/data/products"
conf:0.25

-step: generate_report
tool: yolo-defect-detect.generate_report
params:
results:"${steps.detect.output}"
output_path:"/data/reports/daily_report_{{date}}.csv"
format:"csv"

-step: notify
tool: wecom-bot.send_message
params:
message:|
        📊 今日缺陷统计
        总检测:${steps.detect.output.total_images}
        缺陷数:${steps.detect.output.total_detections}件              不良率:${steps.detect.output.defect_rate}%

        缺陷分布:
${steps.detect.output.class_statistics}
at_time:"08:00"

收到的报表示例:

📊 今日缺陷统计

总检测:102,345 件 | 缺陷数:1,237 件 | 不良率:1.21%

缺陷分布:
▸ 划痕:623 次(重点查 2 号线)
▸ 凹坑:398 次
▸ 污渍:216 次
▸ 裂纹:0 次

方案二:实时缺陷预警(文件监听)

场景:监听 /data/uav/ 目录,无人机上传新照片后自动检测,发现缺陷立即推送预警

配置方式:

用户:监听 /data/uav/ 目录,有新文件就用 YOLO 检测,发现缺陷立即发企业微信预警OpenClaw:已创建文件监听任务,检测到缺陷将推送至企业微信

自动生成的配置:

tasks/realtime_defect_alert.yaml
---
name:"实时缺陷预警"
description:"监听目录,新文件自动检测并预警"

watch:
directory:"/data/uav"
pattern:"*.jpg"
debounce: 5s  # 5 秒内的新文件批量处理

workflow:
-step: detect
tool: yolo-defect-detect.detect_single
params:
image_path:"${event.file_path}"
conf:0.25

-step: check_defect
condition:"${steps.detect.output.total_detections} > 0"
tool: wecom-bot.send_message
params:
message:|
        ⚠️ 紧急预警:发现缺陷
        照片:${event.file_name}
        缺陷数:${steps.detect.output.total_detections}

        检测结果:
${steps.detect.output.detections}
priority:"high"

收到的预警示例:

⚠️ 紧急预警:光伏板热斑

照片:DJI_20240309_1423.jpg
位置:1 号线工位 5
时间:2024-03-09 14:23:15

检测结果:
▸ 划痕:5 处(置信度:0.87~0.95)
▸ 裂纹:1 处(置信度:0.92)

⚠️ 风险等级:高
📍 立即停机检查!

【此处应有图片:企业微信收到的预警截图】

方案三:月度质量趋势分析(数据挖掘)

场景:统计过去 3 个月的缺陷数据,生成趋势图表,识别问题模式
配置方式:

用户:帮我统计过去 3 个月的缺陷数据,生成趋势图表

OpenClaw:已生成趋势报告,划痕问题在 2 号线持续上升,建议重点关注

自动生成的配置:

tasks/monthly_trend_analysis.yaml
---
name:"月度质量趋势分析
"
schedule:
cron:"0 9 1 * *"# 每月 1 号早上 9 点

workflow:
-step: collect_data
tool: file-system.list_files
params:
directory:"/data/reports"
pattern:"daily_report_*.csv"
date_range:"-3 months"

-step: analyze_trend
tool: data-analyze.trend_analysis
params:
data_files:"${steps.collect_data.output}"
metrics:
["defect_rate","class_distribution","line_performance"]

-step: generate_chart
tool: data-visual.create_chart
params:
data:"${steps.analyze_trend.output}"
chart_type:"line"
output_path:"/data/charts/monthly_trend_{{date}}.png"

-step: send_report
tool: wecom-bot.send_message
params:
message:|
        📈 月度质量趋势分析

        请查看附件

        关键发现:
        1. 划痕问题在 2 号线持续上升(+15%)
        2. 凹坑问题整体下降(-8%)
        3. 整体不良率稳定在 1.2% 左右
attachments:["${steps.generate_chart.output}"]

方案四:设备健康度评分(自动化决策)

场景:根据 YOLO 检测的缺陷数量,自动给每台设备打分,低于 60 分的推送维保建议
配置方式:

用户:给每台设备打分,低于 60 分的推送维保建议

OpenClaw:已创建评分任务,依据 YOLO 检测的表面缺陷自动评分

自动生成的配置:

tasks/device_health_scoring.yaml
---
name:"设备健康度评分"
schedule:
cron:"0 18 * * *"# 每天 18:00

workflow:
-step: collect_defects
tool: yolo-defect-detect.detect_batch
params:
image_dir:"/data/products"
conf:0.25

-step: calculate_scores
tool: data-analyze.device_scoring
params:
defect_data:"${steps.collect_defects.output}"
scoring_rule:|
        基础分:100 分
        划痕:-2 分/个
        凹坑:-3 分/个
        污渍:-1 分/个
        裂纹:-5 分/个
-step: notify_low_score
condition:"${steps.calculate_scores.output.min_score} < 60"
tool: wecom-bot.send_message
params:
message:|
        ⚠️ 设备健康度预警
        设备:${steps.calculate_scores.output.low_score_device}
        评分:${steps.calculate_scores.output.min_score} 分
        主要问题:${steps.calculate_scores.output.main_issues}
        建议:立即安排维保priority:"high"

推送的评分报告示例:

⚠️ 设备健康度预警

设备:2 号线工位 3
评分:45 分
主要问题:划痕数量激增(共 35 处)

评分明细:
- 基础分:100 分
- 划痕扣分:-35 分(35 处 × 2 分)
- 凹坑扣分:-15 分(5 处 × 3 分)
- 污渍扣分:-5 分(5 处 × 1 分)
= 最终得分:45 分

建议:立即安排维保,检查设备磨损情况

方案五:自动化数据归档与检索(知识管理)

场景:把所有缺陷图片按类型归档,以后用自然语言就能快速检索
配置方式:

用户:把所有缺陷图片按类型归档,以后我说"找 3 月所有划痕"就能查到OpenClaw:已创建归档规则,支持自然语言检索

自动生成的配置:

tasks/auto_archiving.yaml
---
name:"自动化数据归档"
schedule:
cron:"0 3 * * *"# 每天 3:00

workflow:
-step: detect_and_classify
tool: yolo-defect-detect.detect_batch
params:
image_dir:"/data/products/temp"
conf:0.25

-step: archive_by_class
tool: file-system.archive_by_class
params:
defect_data:"${steps.detect_and_classify.output.detailed_results}"
target_dir:"/data/defects_archive/{{date}}/"
naming_rule:"{class}_{timestamp}_{index}.jpg"

自然语言检索示例:

用户:找 3 月所有划痕图片

OpenClaw:找到 1,237 张划痕图片,已打包发送到企业微信

第四步:企业微信集成配置

OpenClaw 支持多种消息推送渠道,这里以企业微信为例。

一、创建企业微信应用

  1. 登录 企业微信管理后台

  2. 进入「应用管理」→「应用」→「创建应用」

  3. 获取以下信息:

    • 企业 ID(CorpId)
    • 应用 Secret(Secret)
    • 应用 ID(AgentId)

二、配置 OpenClaw 企业微信插件

# 安装企业微信插件
openclaw plugins install @openclaw/wecom-bot

# 配置应用信息
openclaw config set wecom.corpId "your-corp-id"
openclaw config set wecom.agentId "your-agent-id"
openclaw config set wecom.secret "your-secret"

# 启用插件
openclaw config set wecom.enabled true

# 重启服务openclaw restart

三、测试消息推送

# 发送测试消息openclaw wecom send "测试消息:YOLO 缺陷检测智能体已就绪"

企业微信中应该能收到测试消息。

效果对比

指标
人工质检
YOLO+Open Claw
提升
检测准确率
78\%
96\%
+18\%
漏检率
22\%
4\%
-82\%
统计时间
1 小时/天
自动
-100\%
响应时间
数小时
数分钟
-95\%
成本
25 万/年
5 万/年
-80\%

公众号后台回复“数据集”获取100+深度学习各方向资源整理

极市干货

技术专栏:多模态大模型超详细解读专栏搞懂Tranformer系列大视觉模型 (LVM) 解读扩散模型系列极市直播
技术综述:小目标检测那点事大模型面试八股含答案万字长文!人体姿态估计(HPE)入门教程

点击阅读原文进入CV社区

收获更多技术干货

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-21 16:03:30 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/473922.html
  2. 运行时间 : 0.222601s [ 吞吐率:4.49req/s ] 内存消耗:4,822.64kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=d15551301de9e66260f6fae95b08c144
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.80 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.001006s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001601s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000731s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000700s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001253s ]
  6. SELECT * FROM `set` [ RunTime:0.000640s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001497s ]
  8. SELECT * FROM `article` WHERE `id` = 473922 LIMIT 1 [ RunTime:0.006357s ]
  9. UPDATE `article` SET `lasttime` = 1776758610 WHERE `id` = 473922 [ RunTime:0.002507s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000694s ]
  11. SELECT * FROM `article` WHERE `id` < 473922 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001018s ]
  12. SELECT * FROM `article` WHERE `id` > 473922 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001423s ]
  13. SELECT * FROM `article` WHERE `id` < 473922 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002923s ]
  14. SELECT * FROM `article` WHERE `id` < 473922 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.003841s ]
  15. SELECT * FROM `article` WHERE `id` < 473922 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.005139s ]
0.229428s