博客
关于我
logstash使用
阅读量:764 次
发布时间:2019-03-21

本文共 1720 字,大约阅读时间需要 5 分钟。

Logstash 是一个开源数据收集引擎,专注于实时数据管道功能。它能够将来自不同数据源的数据动态聚合并标准化,输出到指定目标。

使用说明

Logstash 的核心功能基于其管道结构,包括输入、过滤和输出三个主要模块。

1.1 输入配置

输入模块主要负责数据源的接收。常用输入方式包括:

  • 文件输入:通过配置指定文件路径(如访问日志)来读取数据。注意事先安装并启动Nginx,确保对应日志文件的可访问性。
  • Filebeat 插件:使用Filebeat进行文件收集(推荐使用,如果需要更强的日志管理和扩展功能),在filebeat.yml中设置输出到Logstash的配置,此处不详细展开。

1.2 过滤配置

过滤器用于对收集到的数据进行后处理。常用工具包括Grok、Regex等,供开发者根据需求定义数据格式转换规则。例如,使用Grok对Apache访问日志进行解析。

1.3 输出配置

输出模块定义数据处理后的存储目标。常见场景:

  • 标准输出(如示例所示):适用于简单的命令行执行。
  • Elasticsearch:将处理后的数据存储至Elasticsearch实例。需确保Elasticsearch服务已启动,配置中需设定对应的端口和索引名称(如logstash-%{+YYYY.MM.dd})。

命令行使用示例

通过命令行执行Logstash处理功能:

  • 在Logstash所在路径的\bin文件夹打开命令提示符。
  • 使用以下命令启动Logstash:
    logstash -e "input { stdin { } } output { stdout { codec => rubydebug } }"
  • 输入数据(如"Hello Tom"),Logstash会输出解析后的日志信息。
  • 配置文件使用方法

    创建或定位Logstash配置文件(路径可根据系统调整):

  • 新建config/logstash.conf文件。
  • 填写配置内容:
    input {    file {        path => ["D:\nginx\nginx-1.16.1\logs\access.log"]        type => "nginx_access"        start_position => "beginning"    }    beats {        port => "5044"    }}filter {    grok {        match => {             "message" => "%{COMBINEDAPACHELOG}"        }    }}output {    stdout {        codec => "rubydebug"    }    elasticsearch {        hosts => ["localhost:9200"]        index => "logstash-%{+YYYY.MM.dd}"    }}
  • 3.启动Logstash:

    logstash -f config/logstash.conf --config.test_and_exit --config.reload.automatic

    使用参数:

    • -f:指定配置文件或目录。
    • --config.test_and_exit:在配置文件解析前进行验证。
    • --config.reload.automatic:启动后自动重载配置。

    运行完成后,Logstash会实时接收并处理访问日志,并将结果输出至命令窗口和Elasticsearch。

    输出示例

    Logstash处理示例输入,显示输出到命令窗口和Elasticsearch的结果。命令窗口结果:

    {    "@timestamp" => "2020-11-07T05:44:03.379Z",    "message" => "Hello Tom\r",    "host" => "LAPTOP-7PMRBJTK",    "@version" => "1"}

    Elasticsearch中数据将按日期索引存储,易于日后检索和分析。

    转载地址:http://ohsgz.baihongyu.com/

    你可能感兴趣的文章
    MySQL
    查看>>
    mysql
    查看>>
    MTK Android 如何获取系统权限
    查看>>
    MySQL - 4种基本索引、聚簇索引和非聚索引、索引失效情况、SQL 优化
    查看>>
    MySQL - ERROR 1406
    查看>>
    mysql - 视图
    查看>>
    MySQL - 解读MySQL事务与锁机制
    查看>>
    MTTR、MTBF、MTTF的大白话理解
    查看>>
    mt_rand
    查看>>
    mysql -存储过程
    查看>>
    mysql /*! 50100 ... */ 条件编译
    查看>>
    mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
    查看>>
    mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
    查看>>
    mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
    查看>>
    mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
    查看>>
    MySQL 8.0 恢复孤立文件每表ibd文件
    查看>>
    MySQL 8.0开始Group by不再排序
    查看>>
    mysql ansi nulls_SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON 什么意思
    查看>>
    multi swiper bug solution
    查看>>
    MySQL Binlog 日志监听与 Spring 集成实战
    查看>>