article
README
🚀 蜂巢项目指南
Honeycomb 是一个强大的数据分析平台,它能支持用户运行查询、分析数据并生成报告。下面将详细介绍该工具的使用方法。
🚀 快速开始
若想使用 Honeycomb 工具,需先进行环境准备:
# 安装依赖项
npm install honeycomb-client
✨ 主要特性
工具功能概述
- 运行查询:支持多种计算操作和过滤器,可助力用户从数据中提取关键信息。
- 优化响应:所有工具的响应都经过优化,能减少上下文窗口的使用,同时保证必要的信息完整性。
工具响应优化说明
- 列出数据集:返回名称、标识符和简要描述。
- 获取列信息:返回字段名称、类型和描述。
- 运行查询:
- 包含实际结果和元数据。
- 自动计算摘要统计信息。
- 只包含热图查询的系列数据。
- 省略冗余的链接和执行细节。
- 分析列:
- 返回顶部值、计数和关键统计信息。
- 在适当情况下自动计算数字指标。
查询规范详情
支持的操作
- 计算操作:涵盖 COUNT、CONCURRENCY、COUNT_DISTINCT、HEATMAP、SUM、AVG、MAX、MIN 等。
- 过滤器条件:支持 =、!=、>、>=、<、<=、starts - with、does - not - start - with、exists、does - not - exist、contains、does - not - contain、in、not - in 等操作符。
💻 使用示例
基础用法
示例查询
慢调用 API 查询
{
"环境": "生产",
"数据集": "api-requests",
"计算": [
{"字段": "duration_ms", "操作": "HEATMAP"},
{"字段": "duration_ms", "操作": "MAX"}
],
"过滤器": [
{"字段": "trace.parent_id", "操作": "does-not-exist"}
],
"分组": ["http.target", "name"],
"排序": [
{"字段": "duration_ms", "操作": "MAX", "顺序": "降序"}
]
}
数据库调用分布查询(过去一周)
{
"环境": "生产",
"数据集": "api-requests",
"计算": [
{"字段": "duration_ms", "操作": "HEATMAP"}
],
"过滤器": [
{"字段": "db.statement", "操作": "exists"}
],
"分组": ["db.statement"],
"时间范围": "过去一周"
}
错误率分析查询
{
"环境": "生产",
"数据集": "api-requests",
"计算": [
{"字段": "error_rate", "操作": "AVG"}
],
"过滤器": [
{"字段": "status_code", "操作": "in", "值": [400, 500]}
]
}
高级用法
示例代码
const Honeycomb = require('honeycomb-client');
// 初始化客户端
const client = new Honeycomb({
apikey: 'your_api_key',
dataset: 'api-requests'
});
// 执行查询
async function runQuery() {
try {
const result = await client.runQuery({
"计算": [
{ "字段": "duration_ms", "操作": "HEATMAP" }
],
"过滤器": [
{ "字段": "trace.parent_id", "操作": "does-not-exist" }
]
});
console.log(result);
} catch (error) {
console.error('查询失败:', error);
}
}
runQuery();
📄 许可证
本项目遵循 Apache 2.0 许可证,更多详细信息请查看 LICENSE 文件。
📚 详细文档
附录
错误代码说明
| 错误代码 | 说明 | | ---- | ---- | | 401 | 未授权 | | 500 | 服务器内部错误 | | 400 | 请求格式有误 |
常见问题解答
- Q:如何获取 API Key?
- A:请联系 Honeycomb 管理员获取 API Key。
- Q:查询结果为空怎么办?
- A:检查过滤器条件和时间范围是否设置正确。
Scan to contact