可观测性-Vector

作者:waMoYu 发布时间: 2026-07-16 阅读量:0 评论数:0

一、软件简介

Vector 是一款轻量级、超高性能的可观测性数据管道工具,使用 Rust 语言开发,能够高效地采集(Source)→ 转换(Transform)→ 输出(Sink)各类可观测性数据(日志和指标)。项目采用 MPL-2.0 开源协议(GitHub 22k+ Stars)。

核心特性包括:

  • 极致性能:Rust 编写,内存效率高,吞吐量远超同类工具(Filebeat、Logstash 等)

  • 端到端管道:从数据采集到输出,一个工具搞定 A → B 的全流程

  • 统一数据模型:同时支持日志(Log Events)和指标(Metric Events)

  • VRL(Vector Remap Language):内置转换语言,灵活解析、过滤、丰富数据

  • 厂商中立:不锁定任何特定平台,生态开放,避免供应商锁定

  • 多种部署角色:支持 Agent(代理)、Sidecar(边车)、Aggregator(聚合器)三种角色

  • 部署拓扑:支持分布式、集中式、流式三种拓扑架构

  • 配置即代码:YAML 配置,简单、可版本化管理

  • 清晰的数据保障:明确声明每条数据管道的保障级别(at-least-once / exactly-once 等)

二、下载地址

三、典型管道示例

sources:
  nginx_logs:
    type: file
    include: ["/var/log/nginx/access.log"]

transforms:
  parse_nginx:
    type: remap
    inputs: ["nginx_logs"]
    source: |
      parsed, err = parse_regex!(.message, r'^(?P<ip>\S+) \S+ \S+ \[(?P<timestamp>[^\]]+)\] "(?P<method>\S+) (?P<path>\S+) \S+" (?P<status>\d+) \d+')
      if err == null {
        . = merge(., parsed)
      }

sinks:
  console:
    type: console
    inputs: ["parse_nginx"]
    encoding:
      codec: json

四、文档结构

模块

说明

Introduction

项目概述与核心概念

Setup

安装(APT/Docker/K8s/Arch/源码等)

Architecture

架构设计、部署角色、拓扑

Administration

配置管理、监控、安全加固

Reference

Sources / Transforms / Sinks 完整参考、VRL 语言参考、数据模型

Guides

实操指南、迁移案例、调试技巧

评论