更新时间:2026-04-30 GMT+08:00

创建配置文件

在企业数据集成过程中,面临多源异构数据(如数据库、日志、消息队列)清洗与汇聚的复杂需求,编写Logstash配置文件不仅语法门槛高、调试困难,还极易因明文存储数据库密码等凭据导致安全风险。为此,CSS服务的Logstash提供了可视化配置中心,支持通过系统与自定义模板快速生成ETL逻辑,内置敏感信息脱敏功能保障凭据安全,并允许用户针对不同业务场景精细化调整管道并发与缓冲参数,从而实现安全、高效且易于管理的数据管道构建。

功能介绍

一个Logstash配置文件本质上定义了一个Pipeline(管道)。数据流经管道经历三个阶段:

  1. Input(输入):从数据源拉取数据。
  2. Filter(过滤/转换):通过解析、清洗、转换等方式处理数据(最消耗CPU的阶段)。
  3. Output(输出):将数据推送到目的端,如Elasticsearch。

以上3个插件的详细说明请参见官方文档Logstash Plugins

约束限制

  • Logstash集群最多支持创建50个配置文件。
  • 同一时间处于“校验中”状态的配置文件不能超过5个。
  • 单个配置文件大小不能超过100KB。

前提条件

  • 已准备好数据源(如Elasticsearch、MySQL、Kafka)和目的端(如Elasticsearch)的连接信息,包括IP地址、端口号、账号密码等。
  • 确保Logstash集群所在的VPC和安全组规则允许与数据源及目的端通信。

创建配置文件

  1. 进入配置中心页面。
    1. 登录云搜索服务管理控制台
    2. 在左侧导航栏,选择“集群管理 > Logstash”
    3. 在集群列表,单击目标集群名称,进入集群详情页。
    4. 选择“配置中心”页签。
  2. 在配置中心页面,单击右侧“创建”,进入创建配置文件页面。
  3. 编辑配置内容,定义数据如何采集和处理。
    表1 创建配置文件的参数说明

    参数

    说明

    名称

    自定义配置文件名称。

    只能包含字母、数字、中划线或下划线,且必须以字母开头。必须大于等于4个字符。

    建议命名包含业务含义,方便后续管理。

    配置文件内容

    定义Input、Filter、Output逻辑。

    支持使用配置文件模板:展开“系统模板”“自定义模板”,根据模板描述选择预置方案,单击操作列的“应用”自动填充代码。

    • 系统模板是CSS服务预置的配置文件模板,支持JDBC、Redis、DIS、Beats等多种输入源模板。具体请参见配置文件模板参考
    • 自定义模板是用户在使用过程中添加的配置文件模板。

    配置文件大小不能超过100KB。

    隐藏内容列表

    敏感信息脱敏配置。配置隐藏字符串列表,例如输入配置文件中出现的密码或密钥,按回车确认。配置后,返回信息会将本列表中的字符串隐藏为“***”

    列表最大支持20条,单个字符串最大长度是512字节。

    描述

    添加配置文件的描述信息,方便识别。

    支持0~128个字符。

  4. 编辑完成后,单击“下一页”进入管道参数配置。
  5. 配置管道参数,根据数据量级和可靠性要求调整管道运行参数。
    表2 配置管道的参数说明

    参数

    性能分类

    默认值

    说明

    pipeline.workers

    并发控制

    CPU核数

    工作线程数,定义并行执行管道的Filters和Outputs阶段的工作线程数。

    • I/O密集型(如简单转发):可设为CPU核数。
    • CPU密集型(复杂正则解析):建议设为CPU核数或略小。

    建议不超过单节点的CPU核数。过大可能导致上下文切换开销,反而降低性能。

    pipeline.batch.size

    吞吐量

    125

    单批次处理事件数,定义单个工作线程在尝试执行其Filters和Outputs之前从Inputs收集的最大事件数。

    对于大量小文档,增加该值(如 500~3000)可显著提升吞吐量,但受限于JVM堆内存,过大会导致OOM(内存溢出)。

    pipeline.batch.delay

    延迟控制

    50

    批处理等待时间,定义创建管道事件批时,在将过小的批调度到管道工作线程之前,等待每个事件的时间。

    单位:ms(毫秒)

    当业务对实时性要求高时可调小此值。

    queue.type

    数据可靠性

    memory

    队列类型,定义用于事件缓冲的内部队列模型。

    • memory:高性能。数据在内存中,进程崩溃会丢数据。
    • persisted:高可靠。数据落盘,防止数据丢失,支持断点续传。但需注意数据落盘可能导致磁盘空间不足。

    queue.checkpoint.writes

    检查点

    1024(建议保持默认值)

    写入多少个事件强制执行一次磁盘Checkpoint,表示强制执行检查点之前写入的最大事件数。

    “queue.type”配置为“persisted”时,才需要配置该参数。

    queue.max_bytes

    磁盘队列

    1024(建议保持默认值)

    持久化队列最大容量。

    • “queue.type”配置为“persisted”时,才需要配置该参数。
    • 请确保磁盘空间充足,超过限制后Logstash将停止接收新数据。

    单位:MB

  6. 配置完成后,单击“创建”
  7. 返回配置文件列表,确认新建配置文件的“状态”变为“可用”,表示创建成功。

管理配置文件

在配置文件列表,支持对创建的配置文件进行修改、设为模板、删除等全生命周期管理。

表3 管理配置文件

功能

使用限制

操作指导

修改

如果有正在运行的管道任务使用了该配置文件,则必须先停止任务才能修改配置文件。

在配置文件列表,单击操作列的“编辑”,在编辑配置文件页面修改配置,以适应新的业务需求或修复配置错误。

设为模板

在配置文件列表,单击操作列的“添加到自定义模板”,在弹窗中设置模板名称、描述和配置文件内容,单击“确定”添加到自定义模板列表中,方便在多个项目中复用,提高配置效率。

备份

在配置文件列表,单击右侧的,批量导出配置文件到本地,以防止意外丢失或损坏,确保配置文件的安全性。

删除

  • 如果有正在运行的管道任务使用了该配置文件,则必须先停止任务才能删除配置文件。
  • 配置文件删除后,不可恢复,请谨慎操作。

在配置文件列表,单击操作列的“删除”,在弹窗中输入DELETE,单击“确定”,删除配置文件,释放存储空间。