zoukankan      html  css  js  c++  java
  • 【Beats】Filebeat介绍及使用(十六)

    Beats介绍

      Beats 是轻量型数据采集器,Beats 是一个免费且开放的平台,集合了多种单一用途数据采集器。它们从成百上千或成千上万台机器和系统向 Logstash 或 Elasticsearch 发送数据。

      官网:https://www.elastic.co/cn/beats/

      文档:https://www.elastic.co/guide/en/beats/libbeat/current/index.html

      架构图

      

    Filebeat介绍

      FileBeat 是一款轻量型日志采集器,当您要面对成百上千、甚至成千上万的服务器、虚拟机和容器生成的日志时,请告别 SSH 吧。Filebeat 将为您提供一种轻量型方法,用于转发和汇总日志与文件,让简单的事情不再繁杂。

    Filebeat使用

    使用准备:

      系统:CentOS 7.4

      本例使用的是ES 7.6.1版,Filebeat也是7.6.1版

      ES安装参考:【ElasticSearch】 ElasticSearch安装(一)

    使用步骤

      1、下载Filebeat,filebeat-7.6.1-linux-x86_64.tar.gz

      2、解压到指定目录

        命令:tar -zxvf filebeat-7.6.1-linux-x86_64.tar.gz /data/soft/

        Filebeat目录结构如下:

           

        目录布局

    类型 描述 默认位置 配置选项
    home Filebeat安装的主目录。   path.home
    bin 二进制文件的位置。 {path.home}/bin  
    config 配置文件的位置。 {path.home} path.config
    data 永久数据文件的位置。 {path.home}/data path.data
    logs Filebeat创建的日志的位置。 {path.home}/logs path.logs

      3、在主目录中,自定义一个测试配置文件test.yml,内容如下:

     1 # 输入
     2 filebeat.inputs:
     3   # 标准输入    
     4 - type: stdin
     5   enabled: true
     6 
     7 # 输出
     8 # 输出到控制台
     9 output.console:
    10   pretty: true
    11   enable: true 

      4、启动filebeat,指定配置文件运行filebeat

        命令:./filebeat -e -c test.yml

      5、在控制台输入hello,效果如下:

        

      6、命令说明

        命令:./filebeat -e -c filebeat.yml

      • -c:配置文件位置
      • -path.logs:日志位置
      • -path.data:数据位置
      • -path.home:家位置
      • -e:关闭日志输出
      • -d 选择器:启用对指定选择器的调试。 对于选择器,可以指定逗号分隔的组件列表,也可以使用-d“*”为所有组件启用调试.例如,-d“publish”显示所有“publish”相关的消息。

        后台启动filebeat

      • nohup ./filebeat -e -c filebeat.yml >/dev/null 2>&1 & 将所有标准输出及标准错误输出到/dev/null空设备,即没有任何输出
      • nohup ./filebeat -e -c filebeat.yml > filebeat.log &

         关闭命令:

      • 查看filebeat进程:ps -ef|grep filebeat
      • 杀死进程:kill pid

    读取文件

      filebeat读取文件示例

      1、自定义一个测试配置文件test-log.yml,内容如下:

     1 # 自定义测试配置文件test-log.yml
     2 
     3 # 输入
     4 filebeat.inputs:
     5 - type: log
     6   enabled: true
     7   paths:
     8     - /data/logs/*.log
     9 # 输出
    10 output.console:
    11   pretty: true
    12   enable: true

      2、指定配置文件运行filebeat

        命令:./filebeat -e -c test-log.yml

      3、增加日志文件,并添加内容到日志文件中

        命令:echo "hello" >> /data/logs/test.log

        命令:echo "world" >> /data/logs/test.log

      4、查看filebeat控制台输出内容,如下:

        

    输出到Elasticsearch

      1、自定义一个测试配置文件test-log.yml,内容如下:

     1 # 自定义测试配置文件test-log.yml
     2 
     3 # 输入
     4 filebeat.inputs:
     5 - type: log
     6   enabled: true
     7   paths:
     8     - /data/logs/*.log
     9 
    10 # 指定索引的分区数
    11 setup.template.settings:
    12   index.number_of_shards: 3
    13 
    14 # 输出到指定ES的配置
    15 output.elasticsearch:
    16   hosts: ["127.0.0.1:9200"]
    17   username: "elastic"
    18   password: "123456"

      2、指定配置文件运行filebeat

        命令:./filebeat -e -c test-log.yml

      3、增加日志文件,并添加内容到日志文件中

        命令:echo "abc" >> /data/logs/test.log

        命令:echo "123" >> /data/logs/test.log

      4、查看ES索引数据,如下:

        增加了2个索引

        

        索引数据

        

  • 相关阅读:
    C++编译器详解(二)常见precompiling 指令介绍
    C++编译器详解(一)
    Music
    jQuery语法
    Freedom DownTime
    A
    Map类
    伤不起:File.toPath() & Paths.get()
    在不同浏览器中空格显示的效果不一致的问题(主要是宽度不一致)
    关于xmlhttp会使用ie的缓存的问题及解决
  • 原文地址:https://www.cnblogs.com/h--d/p/13172062.html
Copyright © 2011-2022 走看看