提交 57c36fa4 编辑于 作者: Bill Cai's avatar Bill Cai
浏览文件

Initial commit: docs, manifests, RCA100 answer key, AIOps2025 metadata

上级 e2cf2d56
加载中
加载中
加载中
加载中

.gitattributes

0 → 100644
+2 −0
原始行号 差异行号 差异行
*.tar.gz filter=lfs diff=lfs merge=lfs -text
*.parquet filter=lfs diff=lfs merge=lfs -text

.gitignore

0 → 100644
+1 −0
原始行号 差异行号 差异行
.DS_Store

AIOps2025/README.md

0 → 100644
+132 −0
原始行号 差异行号 差异行
# AIOps Challenge 2025 Dataset

400 chaos-injected fault cases on a HipsterShop + TiDB + Redis stack on Kubernetes, with multimodal observability data (metrics / logs / traces) and per-modality key-evidence ground truth. Released under CC BY-NC 4.0.

## Layout

```
AIOps2025/
├── README.md
├── input.json               (400 entries: uuid + anomaly description + time window)
├── groundtruth.jsonl        (400 entries: per-case fault label + reasoning-trace label)
├── checksums.md5            (MD5 checksums for the 18 daily archives)
└── 2025-06-DD.tar.gz × 18   (2025-06-06..14 and 2025-06-17..29)
```

Each `YYYY-MM-DD.tar.gz` extracts to:

```
YYYY-MM-DD/
├── log-parquet/             log_filebeat-server_*_HH-00-00.parquet      (24 hourly slices)
├── metric-parquet/
│   ├── apm/{pod,service}/                                                (per-pod / per-service APM)
│   ├── apm/pod_ns_hipstershop_*.parquet                                  (namespace-level)
│   ├── infra/{infra_node,infra_pod,infra_tidb}/                          (node / pod / TiDB SQL-layer)
│   └── other/                                                            (TiDB PD / TiKV / TiFlash)
└── trace-parquet/           trace_jaeger-span_*_HH-00-00.parquet         (24 hourly slices)
```

## input.json

`input.json` 包含400个故障案例的开始结束时间,可以作为智能体的输入。

## groundtruth.jsonl

`groundtruth.jsonl` 包含400个故障案例的真实故障原因,故障节点,故障持续时间,故障关键指标等信息。

每个`groundtruth`结构如下:

```
{
   uuid: 故障标识
   fault_category: 故障类型(大类)
   fault_type: 故障类型(细分)
   instance_type: 故障层级,pod,service,node
   service: instance所属的微服务
   instance: 故障注入的对象,值根据instance_type决定
   source: 网络类故障特有,从source发往destination的数据包存在问题
   destination: 网路类故障特有,从source发往destination的数据包存在问题
   start_time: 故障开始时间
   end_time: 故障结束时间
   key_observations: 故障关键指标,分为log,metric,trace三类。
   key_metrics: 用于赛道一 reason 字段关键词的评分,含有对应字段算对
   fault_description: 用于 reason 字段语义的评分,取语义相似度最高值
}
```

说明1:`key_metrics``fault_description` 是 针对 `reason` 字段评分准备的。

说明2:故障持续时间 由 `end_time` - `start_time` 计算得到。部分故障持续时间可能很短,可以关注 `end_time` 后一段时间内的数据。

说明3:可重点关注 `fault_type``instance_type``instance``start_time``end_time``key_observations` 字段。

### 故障类型说明

| 故障位置 | 故障类型              | 故障描述        | 故障表征           |
|----------|-----------------------|-----------------|--------------------|
| SERVICE  | network_delay         | 网络延迟        | 指标, 调用链       |
| SERVICE  | network_loss          | 网络丢包        | 指标, 调用链       |
| SERVICE  | network_corrupt       | 网络包损坏      | 指标, 调用链       |
| POD      | cpu_stress            | CPU 压力       | 指标               |
| SERVICE  | cpu_stress            | CPU 压力       | 指标               |
| POD      | memory_stress         | 内存压力       | 指标               |
| SERVICE  | memory_stress         | 内存压力       | 指标               |
| POD      | pod_failure           | pod 故障       | 指标, 调用链, 日志 |
| SERVICE  | pod_failure           | pod 故障       | 指标, 调用链, 日志 |
| POD      | pod_kill              | pod 杀死       | 指标, 调用链, 日志 |
| SERVICE  | pod_kill              | pod 杀死       | 指标, 调用链, 日志 |
| POD      | jvm-exception         | 抛出自定义异常 | 指标, 日志         |
| SERVICE  | jvm-exception         | 抛出自定义异常 | 指标, 日志         |
| POD      | jvm-gc                | 触发垃圾回收   | 指标, 日志         |
| SERVICE  | jvm-gc                | 触发垃圾回收   | 指标, 日志         |
| POD      | jvm-latency           | 增加方法延迟   | 指标, 日志         |
| SERVICE  | jvm-latency           | 增加方法延迟   | 指标, 日志         |
| POD      | jvm-cpu-stress        | 增加 jvm 压力 | 指标, 日志         |
| SERVICE  | jvm-cpu-stress        | 增加 jvm 压力 | 指标, 日志         |
| POD      | dns-error             | dns 故障       | 指标, 调用链, 日志 |
| SERVICE  | dns-error             | dns 故障       | 指标, 调用链, 日志 |
| NODE     | node_cpu              | CPU 压力       | 指标               |
| NODE     | node_disk             | 磁盘故障       | 指标               |
| NODE     | node_network_loss     | 节点网络丢包   | 指标               |
| NODE     | node_network_delay    | 节点网络延迟   | 指标               |
| SERVICE  | target_port_misconfig | service 端口错误 | 指标, 调用链, 日志 |
| SERVICE  | erroneous-code        | 业务代码存在错误 | 指标, 调用链, 日志 |
| POD      | io-fault              | 文件系统读写错误 | 指标, 日志         |


## 下载归档及完整性校验

本目录包含按日期切分的压缩包(每日一个 `.tar.gz`,共 18 个)及其 MD5 校验和。校验和文件为本目录下的 [`checksums.md5`](./checksums.md5)

### 验证方法

1. 进入数据目录,确保 `.tar.gz``checksums.md5` 处于同一目录。
2. 运行校验命令:
   ```bash
   md5sum -c checksums.md5
   ```

   如果输出类似:
   ```
   2025-06-06.tar.gz: OK
   2025-06-07.tar.gz: OK
   ```
   说明下载完整且未被篡改。

3. 解压所有日期归档(约 12 GB):
   ```bash
   for f in 2025-*.tar.gz; do tar -xzf "$f"; done
   ```

## 温馨提示

数据文件名中含有的时间为 CST 时区,如 `log_filebeat-server_2025-06-06_00-00-00.parquet` 中的时间,表示北京时间2025年6月6号零点零分。

日志数据中的时间格式为 `2025-06-05T16:00:29.045Z`,为 UTC 时区。

指标数据中的时间格式为 `2025-06-05T16:00:00Z `,为 UTC 时区。

调用链数据中 `startTimeMillis` 的时间格式为 `1749139200377`,为时间戳,单位毫秒。

## License
AIOps Challenge 2025 Dataset © 2025 by Dan Pei is licensed under Creative Commons Attribution-NonCommercial 4.0 International. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc/4.0/
+18 −0
原始行号 差异行号 差异行
471249e70a807e6234326a0756c84f05  2025-06-06.tar.gz
279c0564593f95002c4ab55ef90d9d4f  2025-06-07.tar.gz
3d34b367b9af9719a9e01fde2294e8de  2025-06-08.tar.gz
13b568b8f3da2b77ffa765cf20502253  2025-06-09.tar.gz
39ec1c1d7b6b5885d29212fd4ecdf3d7  2025-06-10.tar.gz
3cb9c3756ee3c78774f151a68bee3155  2025-06-11.tar.gz
b8ae5ba33d0a330f45eb7437c1087aef  2025-06-12.tar.gz
9109696d9bf0ff152894012086f08033  2025-06-13.tar.gz
470538db9f97e2d7a5bc876f7ba51fbf  2025-06-14.tar.gz
9e19c346a5f1095c523c1901df89330e  2025-06-17.tar.gz
aa43548b39da19ce7b87997183634a54  2025-06-18.tar.gz
19fcd4e7067f7c2f93a96b9ed76f1884  2025-06-19.tar.gz
a6246b7f4868ab233db059b00df8ce9b  2025-06-20.tar.gz
fbfd802a5d11912cfd9b83c69c1a0184  2025-06-21.tar.gz
cc7485bd64becbd128bc97bae2a00941  2025-06-24.tar.gz
60ddab1458967a840991be70bf1a00c5  2025-06-27.tar.gz
21b9cf1d4f35c442162b023827ba3732  2025-06-28.tar.gz
0341f078258dc50d1a7791033e0da838  2025-06-29.tar.gz
+400 −0

添加文件。

预览已超出大小限制,变更已折叠。

加载中