博客
关于我
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 自增id和UUID做主键性能分析,及最优方案
    查看>>
    Mysql 自定义函数
    查看>>
    mysql 行转列 列转行
    查看>>
    Mysql 表分区
    查看>>
    mysql 表的操作
    查看>>
    mysql 视图,视图更新删除
    查看>>
    MySQL 触发器
    查看>>
    mysql 让所有IP访问数据库
    查看>>
    mysql 记录的增删改查
    查看>>
    MySQL 设置数据库的隔离级别
    查看>>
    MySQL 证明为什么用limit时,offset很大会影响性能
    查看>>
    Mysql 语句操作索引SQL语句
    查看>>
    MySQL 误操作后数据恢复(update,delete忘加where条件)
    查看>>
    MySQL 调优/优化的 101 个建议!
    查看>>
    mysql 转义字符用法_MySql 转义字符的使用说明
    查看>>
    mysql 输入密码秒退
    查看>>
    mysql 递归查找父节点_MySQL递归查询树状表的子节点、父节点具体实现
    查看>>
    mysql 通过查看mysql 配置参数、状态来优化你的mysql
    查看>>
    mysql 里对root及普通用户赋权及更改密码的一些命令
    查看>>
    Mysql 重置自增列的开始序号
    查看>>