当用户需要分析数据库 AWR(或兼容)报告时使用。调用官方 API 需要有效凭据,详见正文 Setup
将数据库性能报告提交到 BIC-Skills AWR 分析 API(HTTPS),由服务端异步处理,分析结果通过邮件发送。
Base URL(AWR):https://api.bic-qa.com/skills/awr
Security note: 本技能仅向 BIC-QA 官方 API(
api.bic-qa.com)发送凭据,与官网账户体系一致。API Key 仅以Authorization: Bearer …形式出现在请求头中,不会写入其它域名、本地日志或随技能文件分发。
按顺序完成(界面以官网实际为准):
官网提供免费 API Key;若页面有「重置 / 轮换」功能,更新后需同步修改本地或环境变量中的配置。
集成层或 Agent 在发请求前需能读到 Key,并组装为 Authorization: Bearer <你的_API_Key>。
方式 A — 配置文件(推荐):
mkdir -p ~/.bic/config
chmod 700 ~/.bic/config
echo "your_api_key_here" > ~/.bic/config/api_key
chmod 600 ~/.bic/config/api_key
方式 B — 环境变量:
export BIC_API_KEY="your_api_key_here"
Agent 会按优先级依次尝试:环境变量 → 配置文件。
每次调用 API 前,先确认 API Key 可用。若为空,停止调用并提示用户按 Setup 完成注册与配置。
# Load user-provisioned BIC-QA API key (used ONLY for api.bic-qa.com authentication)
BIC_QA_KEY="${BIC_API_KEY:-$(cat ~/.bic/config/api_key 2>/dev/null)}"
if [ -z "$BIC_QA_KEY" ]; then
echo "缺少 BIC-QA API Key,请先在 https://www.bic-qa.com 注册获取,并按 Setup 配置 BIC_API_KEY 或 ~/.bic/config/api_key"
exit 1
fi
AWR 接口为 HTTP POST,发往 https://api.bic-qa.com/skills/awr。支持 multipart 上传文件(推荐)或 JSON + 服务端可访问路径。
适合助手直接上传用户提供的报告文件;Content-Type 由客户端自动生成 boundary。
# All requests go ONLY to the official BIC-QA API (api.bic-qa.com)
curl -s -X POST "https://api.bic-qa.com/skills/awr" \
-H "Authorization: Bearer ${BIC_QA_KEY}" \
-F "dbtype=oracle" \
-F "lang=zh" \
-F "file=@/path/to/awr_report.html"
file 等)。dbtype(必填):小写,须为服务端支持的库类型(常见如 oracle、kingbase 等,与 bic-skills 校验一致)。lang(可选):见下文「lang(语言)」。适用于 运行 bic-skills 的环境能读取该路径 的场景(例如代理与文件在同一机器)。公开云 API 若无法访问本机路径,请优先用 方式一。
curl -s -X POST "https://api.bic-qa.com/skills/awr" \
-H "Authorization: Bearer ${BIC_QA_KEY}" \
-H "Content-Type: application/json" \
-d '{"file":"/path/to/awr_report.html","dbtype":"oracle","lang":"zh"}'
| 字段 | 必填 | 说明 |
|---|---|---|
file | 是 | AWR 报告文件的路径(字符串) |
dbtype | 是 | 数据库类型(小写) |
lang | 否 | 见下文「lang(语言)」 |
lang 表示分析结果/邮件侧重的界面语言,应按用户当前交流语言选择,而非固定写死:
| 用户语言环境 | 建议 lang |
|---|---|
| 中文(简体/繁体等中文交互) | zh |
| 英文(用户主要使用英文提问、界面为英文等) | en |
若无法判断,可依据用户本轮对话所用语言:中文对话用 zh,英文对话用 en。未传 lang 时由服务端默认处理(以实际接口行为为准)。
status: "success" 及提示用户稍后查收邮件的 message。error 或 message 向用户说明原因(文件缺失、类型不支持、未授权等)。Authorization:不要假装已上传成功;用与用户一致的语言说明需前往 https://www.bic-qa.com 获取或更新 API Key,并在请求头使用 Bearer 方式携带。dbtype、文件或参数。dbtype 与 lang。POST https://api.bic-qa.com/skills/awr。