Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

WarpParse、Vector、Logstash 性能基准测试报告

1. 技术概述与测试背景

1.1 测试背景

本报告记录在 Linux 平台完成的单机基准测试结果,覆盖从轻量级 Web 日志到复杂安全威胁日志的典型场景,用于形成阶段性 benchmark 基线,便于后续版本或方案之间的横向与纵向对比。本文仅描述测试方法与结果,不对生产环境性能上限作外推。

1.2 被测对象

  • WarpParse: 大禹安全公司研发的 ETL 核心引擎,采用 Rust 构建。
  • Vector: 开源可观测性数据管道工具,采用 Rust 构建。
    • Vector-VRL:基于 VRL 的 parse_regex 进行正则解析。
    • Vector-Fixed:尽量使用内置解析(如 nginx/aws 内置函数;sysmon 直接 JSON 解析;APT 无专用手段仍使用正则)。
  • Logstash: Elastic 生态的日志处理引擎,采用 JVM 运行时。

1.3 测试对象与版本说明

本次测试使用版本如下:

  • WarpParse:0.12.0
  • Vector:0.49.0
  • Logstash:9.2.3

构建与来源信息:

  • WarpParse:构建来源/commit/tag = GitHub tag v0.12.0-alpha (commit: 2ba6e55);构建参数 = 官方 release 构建产物(zip/tar.gz),未修改构建选项
  • Vector:构建来源/commit/tag = v0.49.0 (commit: dc7e792);构建参数 = 官方发布的 release 二进制,未修改构建选项
  • Logstash:构建来源/commit/tag = GitHub tag v9.2.3 (commit: 4eb0f3f);构建参数 = 官方发行包(zip / tar.gz,bundled JDK),未进行源码级构建

本报告已记录版本与构建来源;复现时仍需确保引擎运行参数、系统配置与数据集参数一致。

1.4 报告定位

本文档定位为阶段性 benchmark 报告,侧重方法与数据的可复现性与长期可比性,不作为最终性能结论或生产容量承诺。

2. 测试环境与方法

2.1 测试环境(Test Environment)

平台信息(Platform)

  • 平台类型:AWS EC2
  • 实例规格(Instance Type):c5a.2xlarge
  • 操作系统:Ubuntu 24.04 LTS
  • 系统架构:x86_64
  • 网络环境:本机回环(127.0.0.1,Loopback)

计算资源(Compute)

  • CPU:8 vCPU
  • CPU 型号:AMD EPYC 7R32
  • 内存:16 GiB

存储配置(Storage)

  • 存储类型:Amazon EBS
  • 卷类型:通用型 SSD(gp3)
  • 卷大小:128 GiB
  • IOPS:30,000
  • 吞吐量:200 MiB/s

说明(Notes)

  • gp3 卷支持 IOPS 与吞吐量独立配置,用于避免容量与性能强绑定
  • 当前配置提供较高的随机 I/O 能力(IOPS),并具备中等顺序 I/O 吞吐能力
  • 网络带宽/网卡能力:
    • 本报告中的 TCP 场景均基于本机 loopback(127.0.0.1)进行数据发送与接收;
    • 测试流量不经过物理网卡或云实例网络链路,不受实例网络带宽或 ENI 性能限制;
    • TCP 场景主要反映内核 TCP 协议栈开销与引擎自身的解析、调度与 I/O 处理能力。

2.2 测试范畴 (Scope)

  • 日志类型:
    • Nginx Access Log (239B): 典型 Web 访问日志,高吞吐场景。
    • AWS ELB Log (411B): 云设施负载均衡日志,中等复杂度。
    • Firewall Log (1K): 终端安全监控日志,JSON 结构,字段较多。
    • APT Threat Log (3K): 模拟的高级持续性威胁日志,大体积、长文本。
    • Mixed Log (886B): 上述四类日志混合形成的日志类型。
  • 数据拓扑:
    • File -> BlackHole: 测算引擎极限 I/O 读取与处理能力 (基准)。
    • TCP -> BlackHole: 测算网络接收与处理能力。
    • TCP -> File: 测算端到端完整落地能力。
  • 测试能力:
    • 解析 (Parse): 仅进行正则提取/KV解析与字段标准化。
    • 解析+转换 (Parse+Transform): 在解析基础上增加字段映射、富化、类型转换等逻辑。

2.3 评估指标

  • EPS (Events Per Second): 每秒处理事件数(核心吞吐指标)。
  • MPS (MiB/s): 每秒处理数据量。
  • CPU (Avg/Peak): 测试进程 CPU 使用率的平均值与峰值。
  • MEM (Avg/Peak): 测试进程内存占用的平均值与峰值。
  • Rule Size: 规则配置文件体积,评估分发与维护成本。
  • 性能倍数: 在同一日志类型 + 同一拓扑下,以 Vector-VRL 的 EPS 为 1.0x 进行归一化。

说明:

  • CPU 为多核累计百分比(例如 800% ≈ 8 个逻辑核满载),统计对象为测试进程本身(非系统总 CPU),由外部监控脚本按固定采样周期采集并计算 Avg/Peak。
  • MPS 换算公式:MPS = EPS × AvgLogSize(B) / 1024 / 1024
  • 采样来源与采样口径说明:
    • EPS:统一基于各引擎原生可观测性或统计接口获取。
      • WarpParse / Vector:使用引擎内置的吞吐统计能力。
      • Logstash:通过自动化脚本定期采集其官方 Monitoring API / 运行时统计信息。
    • CPU / MEM:通过外部监控脚本采集测试进程的资源使用情况(基于 shell 的周期性采样),用于跨引擎对比。
    • MPS:基于测得的 EPS 与对应日志的平均大小进行换算计算,用于辅助衡量实际数据吞吐规模。
    • 规则大小统计前对配置进行了统一去注释/去空行处理,仅保留有效表达部分,降低格式差异影响。
    • 各指标在不同引擎中的采集实现方式可能不同,但统计口径保持一致,结果以各指标最权威来源为准。

2.4 测试方法与执行方式

测试在单机环境中按日志类型与拓扑逐项执行。输入数据由本仓库提供的 benchmark 脚本生成或回放, 测试过程中各引擎独立运行,避免相互干扰。 输出目标根据测试拓扑配置为 BlackHole 或 File,以分别评估纯处理能力与包含 I/O 的端到端性能。

测试执行流程、脚本入口及通用参数说明见 benchmark/README.md。

2.4.1 最小复现清单(Minimal Repro Checklist)

  • 引擎版本与来源:

    • WarpParse / Vector / Logstash 的版本、tag、commit 及构建方式见 1.3。
  • Benchmark 工具链版本:

    • benchmark 仓库以 wp-example 仓库的最新提交(repo HEAD)为准。
    • 复现实验时建议记录具体 commit hash 以保证结果可追溯。
  • 数据规模与事件数量:

    • 本报告中“数据集规模”与“事件数量”为同一概念,均以处理的事件总数作为规模定义。
    • 在 WarpParse 的 benchmark 执行脚本中,通过参数 -c 指定事件总数; 该参数用于明确数据集规模,但并非要求所有引擎具备相同参数形式。
    • 对于 Vector 与 Logstash,测试数据集规模与 WarpParse 使用相同的事件数量, 通过等量输入数据实现规模对齐,而非依赖统一的启动参数。
    • 因此,-c 可视为本 benchmark 中“统一事件规模定义”的符号化表示, 而非跨引擎通用的命令行参数。
  • 结束条件:

    • 所有测试均以处理完成等量事件作为结束条件。
    • 不采用按固定运行时长结束的方式, 以避免不同引擎在启动、预热与稳定阶段差异带来的统计偏差。
  • Warmup 与采样窗口:

    • WarpParse 与 Vector:引擎启动后快速进入稳定状态,未单独区分 warmup 阶段。

    • Logstash:由于 JVM/JIT 与 pipeline 初始化特性,测试前先进行 warmup 运行; 在确认吞吐进入稳定区间后,开始采集 EPS / 资源指标。

    • 重复次数与取值规则:

      • 默认单次运行。
      • 如需更严格统计,建议重复 N=3 次并取 median 作为最终结果。

2.5 默认配置与调优说明

除非表格或备注中明确说明,本报告结果基于各引擎默认配置,未开启专项性能调优或非默认参数。

3. 详细吞吐量性能对比分析

3.0 测试结果汇总表

下表为结果索引,用于定位不同日志类型与测试能力的明细表格。

日志类型解析(Parse Only)解析 + 转换(Parse + Transform)
Nginx Access Log (239B)见 3.1.1见 3.2.1
AWS ELB Log (411B)见 3.1.2见 3.2.2
Firewall Log (1K)见 3.1.3见 3.2.3
APT Threat Log (3K)见 3.1.4见 3.2.4
Mixed Log (平均日志大小:867B)见 3.1.5见 3.2.5

3.1 日志解析能力 (Parse Only)

本节给出纯解析场景的测试结果。

3.1.1 Nginx Access Log (239B)

表 3.1.1-1:Nginx Access Log(Parse Only;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole810,100184.65626% / 639%115 MB / 314 MB3.83x
Vector-VRLFile -> BlackHole211,25048.15292% / 305%148 MB / 153 MB1.0x
Vector-FixedFile -> BlackHole170,66638.90431% / 451%141 MB / 151 MB0.81x
LogstashFile -> BlackHole106,38224.25436% / 461%1144 MB / 1175 MB0.50x
WarpParseTCP -> BlackHole765,800174.55574% / 628%245 MB / 366 MB1.56x
Vector-VRLTCP -> BlackHole492,200112.19501% / 510%155 MB / 159 MB1.0x
Vector-FixedTCP -> BlackHole255,50058.24480% / 533%138 MB / 145 MB0.52x
LogstashTCP -> BlackHole161,29036.76462% / 475%1174 MB / 1224 MB0.33x
WarpParseTCP -> File377,60086.07645% / 673%221 MB / 444 MB20.30x
Vector-VRLTCP -> File18,6004.24133% / 135%122 MB / 126 MB1.0x
Vector-FixedTCP -> File17,3003.94148% / 156%115 MB / 119 MB0.93x
LogstashTCP -> File147,05833.52465% / 476%1148 MB / 1186 MB7.91x

解析规则大小:

  • WarpParse:174B
  • Vector-VRL:217B
  • Vector-Fixed:86B
  • Logstash:248B

在同一日志类型 + 同一拓扑下,以 Vector-VRL 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

3.1.2 AWS ELB Log (411B)

表 3.1.2-1:AWS ELB Log(Parse Only;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole398,800156.31698% / 756%194 MB / 366 MB2.82x
Vector-VRLFile -> BlackHole141,60055.50423% / 437%166 MB / 170 MB1.0x
Vector-FixedFile -> BlackHole161,94463.47496% / 515%174 MB / 179 MB1.14x
LogstashFile -> BlackHole87,71934.38514% / 532%1145 MB / 1170 MB0.62x
WarpParseTCP -> BlackHole369,900144.98669% / 724%178 MB / 461 MB2.49x
Vector-VRLTCP -> BlackHole148,40058.16456% / 486%178 MB / 185 MB1.0x
Vector-FixedTCP -> BlackHole176,60069.22417% / 435%169 MB / 176 MB1.19x
LogstashTCP -> BlackHole125,00049.00557% / 625%1181 MB / 1217 MB0.84x
WarpParseTCP -> File169,90066.59686% / 699%191 MB / 251 MB9.71x
Vector-VRLTCP -> File17,5006.86169% / 176%166 MB / 171 MB1.0x
Vector-FixedTCP -> File16,6006.51159% / 171%157 MB / 164 MB0.95x
LogstashTCP -> File121,95147.80559% / 621%1283 MB / 1359 MB6.97x

解析规则大小:

  • WarpParse:1153B
  • Vector-VRL:921B
  • Vector-Fixed:64B
  • Logstash:876B

在同一日志类型 + 同一拓扑下,以 Vector-VRL 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

3.1.3 Firewall Log (1K)

表 3.1.3-1: Firewall Log(Parse Only;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole163,700175.16672% / 761%272 MB / 441 MB2.88x
VectorFile -> BlackHole56,76060.73513% / 693%176 MB / 204 MB1.00x
LogstashFile -> BlackHole17,39118.61675% / 724%1201 MB / 1228 MB0.31x
WarpParseTCP -> BlackHole154,900165.75665% / 735%128 MB / 353 MB2.38x
VectorTCP -> BlackHole65,20069.77648% / 768%240 MB / 253 MB1.00x
LogstashTCP -> BlackHole19,15720.50722% / 745%1283 MB / 1298 MB0.29x
WarpParseTCP -> File99,700106.68659% / 746%89 MB / 280 MB5.09x
VectorTCP -> File19,60020.97293% / 328%243 MB / 253 MB1.00x
LogstashTCP -> File18,01819.28654% / 709%1292 MB / 1364 MB0.92x

解析规则大小:

  • WarpParse:1552B
  • Vector-Fixed:1852B
  • Logstash:2406B

在同一日志类型 + 同一拓扑下,以 Vector 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

3.1.4 APT Threat Log (3K)

表 3.1.4-1:APT Threat Log(Parse Only;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole129,700438.71535% / 543%273 MB / 295 MB7.67x
VectorFile -> BlackHole16,90157.17692% / 730%175 MB / 180 MB1.0x
LogstashFile -> BlackHole9,00930.47684% / 736%1211 MB / 1229 MB0.53x
WarpParseTCP -> BlackHole129,600438.37499% / 558%265 MB / 389 MB6.86x
VectorTCP -> BlackHole18,90063.93774% / 794%229 MB / 243 MB1.0x
LogstashTCP -> BlackHole10,18334.45733% / 757%1294 MB / 1308 MB0.54x
WarpParseTCP -> File55,000186.04362% / 368%197 MB / 224 MB5.91x
VectorTCP -> File9,30031.46412% / 450%211 MB / 218 MB1.0x
LogstashTCP -> File8,92830.20672% / 726%1305 MB / 1369 MB0.96x

解析规则大小:

  • WarpParse:985B
  • Vector:873B
  • Logstash:1027B

在同一日志类型 + 同一拓扑下,以 Vector 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

3.1.5 Mixed Log (平均日志大小:886B)

表 3.1.5-1:Mixed Log(Parse Only;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole286,000241.66632% / 736%271 MB / 374 MB5.56x
Vector-VRLFile -> BlackHole51,44643.47494% / 692%228 MB / 249 MB1.00x
Vector-FixedFile -> BlackHole52,53044.39500% / 696%182 MB / 201 MB1.02x
LogstashFile -> BlackHole21,50518.17400% /444%1136 MB / 1163 MB0.42x
WarpParseTCP -> BlackHole258,600218.51532% / 709%189 MB / 483 MB3.10x
Vector-VRLTCP -> BlackHole83,30070.38516% / 781%208 MB / 222 MB1.00x
Vector-FixedTCP -> BlackHole81,70069.03518% / 784%181 MB / 191 MB0.98x
LogstashTCP -> BlackHole35,08729.65629% / 697%1222 MB / 1282 MB0.42x
WarpParseTCP -> File149,400126.24546% / 623%111 MB / 221 MB7.82x
Vector-VRLTCP -> File19,10016.14315% / 332%275 MB / 287 MB1.00x
Vector-FixedTCP -> File19,20016.22276% / 293%190 MB / 195 MB1.01x
LogstashTCP -> File32,78627.70593% / 670%1317 MB / 1428 MB1.72x

解析规则大小:

  • WarpParse:3864B
  • Vector-VRL:3960B
  • Vector-Fixed:4725B
  • Logstash:5396B

在同一日志类型 + 同一拓扑下,以 Vector-VRL 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

规则大小可能受格式/换行/注释/路径等影响,体积差异不影响性能口径;规则逻辑保持一致。

混合日志规则:

  • 4类日志按照3:2:1:1混合

3.2 解析 + 转换能力 (Parse + Transform)

本节给出解析 + 转换场景的测试结果。

3.2.1 Nginx Access Log(239B)

表 3.2.1-1:Nginx Access Log(Parse + Transform;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole656,800149.71688% / 768%220 MB / 357 MB3.27x
Vector-VRLFile -> BlackHole201,00045.81339% / 350%167 MB / 175 MB1.0x
Vector-FixedFile -> BlackHole153,33334.95466% / 481%159 MB / 168 MB0.76x
LogstashFile -> BlackHole76,92317.53470% / 483%1126 MB / 1160 MB0.38x
WarpParseTCP -> BlackHole524,800119.62608% / 637%189 MB / 410 MB1.34x
Vector-VRLTCP -> BlackHole392,20089.39472% / 512%162 MB / 166 MB1.0x
Vector-FixedTCP -> BlackHole208,90047.61502% / 537%146 MB / 151 MB0.53x
LogstashTCP -> BlackHole107,14224.42520% / 552%1163 MB / 1243 MB0.27x
WarpParseTCP -> File297,10067.72645% / 664%238 MB / 317 MB17.90x
Vector-VRLTCP -> File16,6003.78138% / 143%138 MB / 143 MB1.0x
Vector-FixedTCP -> File17,2003.92156% / 166%128 MB / 133MB1.04x
LogstashTCP -> File95,23821.71510% / 551%1141 MB / 1217 MB5.74x

解析+转换规则大小:

  • WarpParse:521B
  • Vector-VRL:519B
  • Vector-Fixed:500B
  • Logstash:712B

在同一日志类型 + 同一拓扑下,以 Vector-VRL 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

3.2.2 AWS ELB Log(411B)

表 3.2.2-1:AWS ELB Log(Parse + Transform;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole275,900108.14649% / 719%236 MB / 327 MB2.22x
Vector-VRLFile -> BlackHole124,33348.73523% / 560%190 MB / 199 MB1.0x
Vector-FixedFile -> BlackHole141,81855.59514% / 529%179 MB / 191 MB1.14x
LogstashFile -> BlackHole54,05421.19582% / 653%1155 MB / 1217 MB0.43x
WarpParseTCP -> BlackHole259,900101.87682% / 697%139 MB / 275 MB1.99x
Vector-VRLTCP -> BlackHole130,60051.19446% / 500%191 MB / 195 MB1.0x
Vector-FixedTCP -> BlackHole146,00057.23413% / 441%181 MB / 184 MB1.12x
LogstashTCP -> BlackHole78,12530.62624% / 696%1212 MB / 1272 MB0.60x
WarpParseTCP -> File139,80054.80717% / 738%139 MB / 296 MB7.99x
Vector-VRLTCP -> File17,5006.86177% / 194%181 MB / 187 MB1.0x
Vector-FixedTCP -> File17,6006.90164% / 182%173 MB / 180 MB1.01x
LogstashTCP -> File69,44427.22636% / 690%1192 MB / 1232 MB3.97x

解析+转换规则大小:

  • WarpParse:1694B
  • Vector-VRL:1259B
  • Vector-Fixed:570B
  • Logstash:2019B

在同一日志类型 + 同一拓扑下,以 Vector-VRL 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

3.2.3 Firewall Log (1K)

表 3.2.3-1:Firewall Log(Parse Only;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole132,500141.78693% / 786%348 MB / 430 MB2.49x
VectorFile -> BlackHole53,25856.99482% / 692%198 MB / 225 MB1.00x
LogstashFile -> BlackHole15,87316.98579% / 680%1111 MB / 1127 MB0.30x
WarpParseTCP -> BlackHole125,500134.29614% / 747%130 MB / 304 MB2.22x
VectorTCP -> BlackHole56,60060.56630% / 702%257 MB / 272 MB1.00x
LogstashTCP -> BlackHole16,52817.69664% / 720%1228 MB / 1262 MB0.29x
WarpParseTCP -> File69,80074.69620% / 760%129 MB / 175 MB3.31x
VectorTCP -> File21,10022.58315% / 332%275 MB / 287 MB1.00x
LogstashTCP -> File16,39317.54660% / 716%1210 MB / 1236 MB0.78x

解析+转换规则大小:

  • WarpParse:2249B
  • Vector:2344B
  • Logstash:3453B

在同一日志类型 + 同一拓扑下,以 Vector-VRL 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

3.2.4 APT Threat Log (3K)

表 3.2.4-1:APT Threat Log(Parse + Transform;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole123,100416.38599% / 607%199 MB / 265 MB7.65x
VectorFile -> BlackHole16,09354.43674% / 742%188 MB / 199 MB1.0x
LogstashFile -> BlackHole7,63325.82657% / 732%1174 MB / 1197 MB0.47x
WarpParseTCP -> BlackHole114,200386.28508% / 532%228 MB / 248 MB6.14x
VectorTCP -> BlackHole18,60062.91769% / 790%243 MB / 252 MB1.0x
LogstashTCP -> BlackHole9,85233.33704% / 748%1283 MB / 1304 MB0.53x
WarpParseTCP -> File54,800185.36441% / 447%196 MB / 215 MB5.89x
Vector-VRLTCP -> File9,30031.46345% / 479%217 MB / 227 MB1.0x
LogstashTCP -> File8,62029.16671% / 729%1229 MB / 1251 MB0.93x

解析+转换规则大小:

  • WarpParse:1638B
  • Vector:1382B
  • Logstash:2041B

在同一日志类型 + 同一拓扑下,以 Vector-VRL 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

3.2.5 Mixed Log (平均日志大小:886B)

表 3.2.5-1:Mixed Log(Parse + Transform;File -> BlackHole / TCP -> BlackHole / TCP -> File)

引擎拓扑EPSMPSCPU (Avg/Peak)MEM (Avg/Peak)性能倍数
WarpParseFile -> BlackHole204,400172.71566% / 663%196 MB / 265 MB4.45x
Vector-VRLFile -> BlackHole45,90938.79469% / 683%204 MB / 225 MB1.00x
Vector-FixedFile -> BlackHole48,48440.97541% / 714%178 MB / 209 MB1.06x
LogstashFile -> BlackHole32,96727.86573% / 685%1150 MB / 1172 MB0.72x
WarpParseTCP -> BlackHole190,300160.80603% / 623%119 MB / 190 MB2.40x
Vector-VRLTCP -> BlackHole79,40067.09776% / 782%204 MB / 211 MB1.00x
Vector-FixedTCP -> BlackHole76,50064.64776% / 781%190 MB / 203 MB0.96x
LogstashTCP -> BlackHole30,30325.60656% / 719%1258 MB / 1287MB0.38x
WarpParseTCP -> File120,100101.48648% / 727%121 MB / 183 MB6.19x
Vector-VRLTCP -> File19,40016.39268% / 300%201 MB / 216 MB1.00x
Vector-FixedTCP -> File20,00016.90273% / 303%195 MB / 207 MB1.03x
LogstashTCP -> File26,66622.53612% / 689%1218 MB / 1253 MB1.37x

解析+转换规则大小:

  • WarpParse:3864B
  • Vector-VRL:4723B
  • Vector-Fixed:1733B
  • Logstash:3984B

在同一日志类型 + 同一拓扑下,以 Vector-VRL 的 EPS 作为统一基准(1.0x),对所有引擎进行归一化对比。

规则大小可能受格式/换行/注释/路径等影响,体积差异不影响性能口径;规则逻辑保持一致。

混合日志规则:

  • 4类日志按照3:2:1:1混合

4 固定速率资源占用测试

4.1 Mixed Log (平均日志大小:867B)

表 4.1.1-1:Mixed Log(Parse Only; TCP -> BlackHole )

引擎拓扑CPU (Avg/Peak)MEM (Avg/Peak)
WarpParseTCP -> BlackHole54% / 56%60 MB / 66 MB
Vector-VRLTCP -> BlackHole173% / 180%162 MB / 166 MB
Vector-FixedTCP -> BlackHole171% / 177%128 MB / 134 MB
LogstashTCP -> BlackHole276% / 396%1190 MB / 1223 MB
  • 20000EPS下的资源消耗情况
  • logstash在warmup后采集

5. 结果解读

5.1 吞吐与资源表现

结果摘要:

  1. 在 Linux 平台测试中,WarpParse 相对 Vector-VRL 的 EPS 倍数范围为:解析 1.56x - 20.30x,解析+转换 1.34x - 17.90x;TCP -> File 拓扑下的倍数区间更高。
  2. CPU 使用率在 WarpParse 场景中整体高于 Vector/Logstash(见各表);吞吐提升与 CPU 占用同时出现。
  3. APT (3K) 场景下,WarpParse 的 MPS 保持较高水平;Vector 在同场景的 EPS/MPS 相对更低(见 3.1.4/3.2.4)。
  • 5.2 规则与表达能力要点

    • 规则体积不仅反映配置分发与维护成本, 也可作为衡量引擎在表达同等日志语义时所需复杂度的参考指标。 在相同解析与转换语义下,规则体积越小,通常意味着引擎具备更高层级的内置能力或更强的表达抽象。

    • 各日志类型与拓扑下的规则体积差异见对应表格“规则大小”备注, 用于辅助评估不同引擎在表达能力、规则可读性与维护复杂度方面的差异。

    • Vector 测试同时包含 VRL 与 Fixed 两种策略:

      • VRL 更偏向通用表达能力,对复杂语义具备更强灵活性;
      • Fixed 优先使用内置解析能力,在规则体积与维护复杂度上更具优势。 两者在表达能力与性能上的权衡以表格数据为准。
    • 在多数日志类型下,TCP → File 拓扑呈现更高的性能倍数区间(见 3.1 / 3.2 对应表格), 该结论在不同规则复杂度水平下均保持一致。

5.3 稳定性

  • 本报告未引入背压/队列深度等专用指标,稳定性判断仅基于运行期间吞吐与资源观测。
  • 注意点: TCP -> File 大包场景(如 APT)下内存随吞吐上升(约 224-389 MB),需结合容量规划。

6. 阶段性总结与建议

以下为基于本报告范围的阶段性观察,不构成生产选型结论;实际落地需结合业务流量、架构约束与运维能力评估。

决策维度建议方案结果要点依据
追求吞吐能力WarpParse关注本报告中的 EPS 倍数区间解析场景 1.56x-20.30x,解析+转换 1.34x-17.90x;TCP -> File 拓扑区间更高。
资源受限环境WarpParse关注 CPU/内存的权衡关系Vector-VRL 在多数场景下 CPU/MEM 低于 WarpParse;Logstash 内存占用显著更高(见各表)。
边缘/Agent部署WarpParse关注规则体积与单机吞吐规则体积在不同日志类型间存在差异;吞吐指标在本报告中更高,具体差异见各节“规则大小”和表格数据。
通用生态兼容WarpParse关注生态与可扩展性生态兼容性未在本报告中量化,建议结合现有生态与插件适配成本评估。

阶段性结论: 基于本报告数据,WarpParse 与 Vector-VRL 的 EPS 倍数区间为:纯解析 1.56x-20.30x,解析+转换 1.34x-17.90x,端到端(TCP -> File)倍数更高。上述结果可作为同类场景的阶段性基线参考;在大包 TCP -> File 场景下需关注内存随吞吐上升(约 224-389 MB)。

7. 已知限制与注意事项

  • 本报告为单机测试,未覆盖多节点、HA(High Availability,高可用)、持久化优化或生产负载波动等因素。
  • 测试范围限定为五类日志与三种拓扑,未覆盖更复杂的输入/输出链路。
  • 结果依赖具体硬件、操作系统与存储配置,跨环境对比需谨慎。