美文网首页
logstash入门1

logstash入门1

作者: 安全的小飞飞 | 来源:发表于2020-04-09 19:30 被阅读0次

    1、安装

    这里是logstash7.3.1版本的。官方文档:https://www.elastic.co/guide/en/logstash/7.6/introduction.html
    下载ZIP连接:https://artifacts.elastic.co/downloads/logstash/logstash-7.3.1.zip
    需要Java环境,下载后解压。

    2、初步学习

    解压后目录。
    image.png

    config是放置配置文件。
    bin是二进制脚本,包括用来启动Logstash的logstash和用来安装插件的logstash-plugin。

    3、demo:

    初步了解后,这儿先测试下从文件读取后输出到控制台。打开config文件夹,复制logstash-sample.conf 一份重命名为logstash.conf。打开logstash.conf。写入配置:


    image.png

    文件路径为绝对路径。

    4、修改完后可以测试下配置文件:

    打开命令行,跳到bin目录下运行 ./logstash -f ../config/logstash.conf -t。

    image.png
    5、启动: ./logstash -f ../config/logstash.conf

    成功输出:

    image.png
    输出后结束进程就行。本来想着多试几次,但是第二次运行,半天也没有输出,还以为是出问题了。找到一篇文章知道了原因:https://blog.51cto.com/zhangtaoze/1917274。看来测试的时候,文件内容必须改变下,不然一时半会也输不出来。

    Logstash在输出内容中会给事件添加一些额外信息。比如@version、host、@timestamp都是新增的字段,而最重要的是@timestamp,用来标记事件的发生时间。由于这个字段涉及到Logstash内部流转,如果给一个字符串字段重命名为@timestamp的话,Logstash就会直接报错。另外,也不能删除这个字段。还有一个字段type,表示事件的唯一类型。tags,表示事件的某方面属性。

    6、过滤掉输出的多余字段:

    修改配置文件 如下:

    input {
      file {
        path => ["/xxx/1.txt"]
        type => "system"
        start_position => "beginning"
      }
    }
    
    filter {
        mutate {
         remove_field => ["@version","path","host","type","@timestamp"]
        }
    }
    output {
     stdout {}
    }
    
    

    结果:


    image.png

    相关文章

      网友评论

          本文标题:logstash入门1

          本文链接:https://www.haomeiwen.com/subject/wlkhmhtx.html