feat: 添加 Dashboard 完整日志监控系统 v1.1.0

 新增功能
- 完整的日志记录系统(6 种日志级别)
- 日志配置功能(可通过 config.json 控制)
- 性能监控装饰器和请求日志中间件
- 7 个管理工具脚本
- 完整的文档和使用指南

🛠️ 管理工具
- start-with-log.sh: 启动脚本(带日志)
- stop-dashboard.sh: 停止脚本
- view-logs.sh: 日志查看器
- monitor-logs.sh: 实时监控工具(支持多种过滤器)
- analyze-logs.sh: 日志分析工具(自动生成报告)
- demo-logging.sh: 功能演示脚本
- test-logging-config.sh: 配置测试工具

📊 日志特性
- 支持 INFO/SUCCESS/WARN/ERROR/DEBUG/PERF 6 种级别
- 自动记录启动过程、API 请求、性能统计
- 缓存命中情况追踪
- 分步性能监控
- 智能过滤器

⚙️ 配置功能
- 可控制是否启用日志(默认:true)
- 可设置日志级别(默认:INFO)
- 可控制文件/控制台输出
- 支持动态配置(重启生效)

📚 文档
- LOGGING_GUIDE.md: 完整使用指南
- LOGGING_CONFIG.md: 配置说明文档
- LOGGING_CONFIG_QUICK.md: 快速配置指南
- 多个中文说明文档

🔒 安全
- 添加 .gitignore 排除敏感信息
- config.json(含 Token)不提交
- 日志文件不提交
- 示例配置使用占位符

 测试
- 语法检查通过
- 功能完整性验证
- 配置控制测试通过
- 文档完整性检查

详见 CHANGELOG_v1.1.0.md

Made-with: Cursor
This commit is contained in:
fang
2026-03-11 11:37:35 +08:00
commit 5f14174bb9
65 changed files with 12754 additions and 0 deletions

View File

@@ -0,0 +1,82 @@
---
name: web-search
description: 免费全网搜索技能。使用 DuckDuckGo 搜索引擎,无需 API Key。支持搜索 + 网页抓取 + 内容提取。
metadata: { "openclaw": { "emoji": "🌐", "requires": { "bins": ["curl", "node"] } } }
---
# Web Search — 免费全网搜索
无需任何 API Key 即可搜索互联网并提取网页内容。
## 1. 搜索DuckDuckGo
```bash
node {baseDir}/scripts/search.mjs "搜索关键词"
node {baseDir}/scripts/search.mjs "搜索关键词" -n 10
node {baseDir}/scripts/search.mjs "搜索关键词" --region cn-zh
```
### 搜索参数
| 参数 | 说明 | 默认值 |
|------|------|--------|
| 第一个参数 | 搜索关键词(必填) | - |
| `-n <数量>` | 返回结果数量 | 10 |
| `--region <区域>` | 搜索区域,如 `cn-zh`(中国)、`us-en`(美国) | `wt-wt`(全球) |
### 搜索示例
```bash
# 基础搜索
node {baseDir}/scripts/search.mjs "加密货币钱包泄露"
# 限定区域和数量
node {baseDir}/scripts/search.mjs "crypto wallet leak 2026" -n 15 --region us-en
# 搜索特定网站内容
node {baseDir}/scripts/search.mjs "site:github.com wallet private key exposed"
```
## 2. 网页内容抓取
```bash
node {baseDir}/scripts/fetch.mjs "https://example.com/article"
node {baseDir}/scripts/fetch.mjs "https://example.com" --raw
```
### 抓取参数
| 参数 | 说明 | 默认值 |
|------|------|--------|
| 第一个参数 | 目标 URL必填 | - |
| `--raw` | 输出原始 HTML 而非提取的文本 | false |
| `--max <字数>` | 最大输出字数 | 5000 |
## 典型工作流
对于需要全网调查的任务,按以下步骤执行:
1. **搜索**:用 `search.mjs` 搜索相关关键词,获取 URL 列表
2. **抓取**:用 `fetch.mjs` 逐个读取感兴趣的页面内容
3. **分析**:综合所有信息,给出结论
4. **多轮搜索**:如果第一轮结果不够,换关键词再搜
### 完整示例:调查加密钱包泄露
```bash
# 第一步:搜索
node {baseDir}/scripts/search.mjs "crypto wallet private key leaked 2026"
# 第二步:针对找到的 URL 抓取详情
node {baseDir}/scripts/fetch.mjs "https://example.com/security-report"
# 第三步:换个关键词继续搜
node {baseDir}/scripts/search.mjs "数字钱包 私钥泄露 安全事件"
```
## 注意事项
- 此技能完全免费,无需配置任何 API Key
- DuckDuckGo 搜索可能有速率限制,如遇到限制请稍等片刻重试
- 网页抓取不执行 JavaScript部分动态页面可能无法获取完整内容
- 建议使用英文关键词获得更全面的搜索结果