区段(section)

Logstash 用{}来定义区域。区域内可以包括插件区域定义,你可以在一个区域定义多个插件,插件区域内则可以定义键值对设置。

数据类型

Logstash支持少量的数据值类型:

  • bool  debug => true
  • string  host => "localhost"
  • number  port => 80
  • array  match => ["hello","message"]
  • hash  options => {name => "xiaoming", age => 55}

注意:地域1.2.0的版本哈希语法跟数组一样。

字段引用

字段是 Logstash::Event 对象的属性。事件就像一个哈希一样,所以可以想想字段就像一个键值对。

如果想在Logstash配置中使用字段的值,只需要把字段的名字卸载中括号[]里就行了,这就较字段引用。对于潜逃字段,每层字段名都卸载[]里就可以。例:[object][field]

小贴士:

Logstash的数组也支持倒序下表,即[geoip][location][-1]可以获取数组最后一个元素的值;

Logstash还支持变量内插,在字符串里使用字段引用的方法是这样:"the logitude is %{[geoip][location][0]}"

条件判断(condition)

Logstash从1.3.0版开始支持条件判断和表达式,支持下面这些操作符:

  • == (等于), != (不等于), < (小于), > (大于), <= (小于等于), >= (大于等于)
  • =~ (匹配正则), !~ (不匹配正则)
  • in (包含), not in (不包含)
  • and (与), or (或), nand(非与), xor(非或)
  • () (复合表达式), !() (对复合表达式结果取反)

命令行参数

-e 执行,这个参数的默认值是:input{stdin{}}output{stdout{}}

--config 或 -f 配置文件,后跟参数类型可以是一个字符串的配置(像Hello World例子一样)或全路径文件名或全路径路径(如:/etc/logstash.d/,logstash会自动读取/etc/logstash.d/目录下所有*.conf 的文本文件,然后在自己内存里拼接成一个完整的大配置文件再去执行)

注意:logstash列出目录下所有文件时,是字母排序的,而logstash配置段的filter和output都是顺序执行,所以顺序非常重要。

采用多文件管理的用户,推荐采用数字编号方式命名配置文件,同时在配置中,严禁采用if判断限定不同日志的动作。

--configtest 或 -t 测试

--log 或 -l 日志。logstash默认输出日志到标准错误,生产环境下用此参数自定义

--pipeline-workers 或 -w 运行filter和output的pipeline线程数量,默认是CPU核数。

--pipeline-batch-size 或 -b
每个 Logstash pipeline 线程,在执行具体的 filter 和 output 函数之前,最多能累积
的日志条数。默认是 125 条。越大性能越好,同样也会消耗越多的 JVM 内存。
--pipeline-batch-delay 或 -u
每个 Logstash pipeline 线程,在打包批量日志的时候,最多等待几毫秒。默认是 5ms。
--pluginpath 或 -P
可以写自己的插件,然后用 bin/logstash --pluginpath/path/to/own/plugins 加载它们。
--verbose
输出一定的调试日志。
--debug
输出更多的调试日志。

设置文件

从 Logstash 5.0 开始,新增了 $LS_HOME/config/logstash.yml 文件,可以将
所有的命令行参数都通过 YAML 文件方式设置。同时为了反映命令行配置参数的层
级关系,参数也都改成用.而不是-了。

Logstash学习-配置语法的更多相关文章

  1. 学习nginx从入门到实践(四) 基础知识之nginx基本配置语法

    nginx基本配置语法 1.http相关 展示每次请求的请求头: curl -v http://www.baidu.com 2.nginx日志类型 error.log. access.log log_ ...

  2. logstash 学习小记

    logstash 学习小记 标签(空格分隔): 日志收集 Introduce Logstash is a tool for managing events and logs. You can use ...

  3. 程序员带你学习安卓开发,十天快速入-对比C#学习java语法

    关注今日头条-做全栈攻城狮,学代码也要读书,爱全栈,更爱生活.提供程序员技术及生活指导干货. 如果你真想学习,请评论学过的每篇文章,记录学习的痕迹. 请把所有教程文章中所提及的代码,最少敲写三遍,达到 ...

  4. Logstash学习系列之基础介绍

    Logstash功能特性 能集中处理各种类型的数据 能标准化不同模式和格式的数据 能快速的扩展自定义日志的格式 它具有收集,分析和转发数据流的功能 Logstash运行参数 -f 指定配置文件 -e ...

  5. nginx目录及配置语法

    一.Nginx安装目录 1.查看安装目录. 采用yum的方式安装,其实都是安装的一个一个的 pm 包,故可采用如下命令查看 rpm -ql nginx 遵循了 rpm 包管理规范. 2.安装目录详解 ...

  6. 工作效率-十五分钟让你快速学习Markdown语法到精通排版实践备忘

    关注「WeiyiGeek」公众号 设为「特别关注」每天带你玩转网络安全运维.应用开发.物联网IOT学习! 希望各位看友[关注.点赞.评论.收藏.投币],助力每一个梦想. 文章目录: 0x00 前言简述 ...

  7. ios -- 教你如何轻松学习Swift语法(一)

    目前随着公司开发模式的变更,swift也显得越发重要,相对来说,swift语言更加简洁,严谨.但对于我来说,感觉swift细节的处理很繁琐,可能是还没适应的缘故吧.基本每写一句代码,都要对变量的数据类 ...

  8. Git 中 .gitignore 的配置语法

    一.前言 在日常的开发中,当我们需要将一个项目提交到 Git 时,并不是所有的文件都需要提交,比如一些自动生成的文件,类似于 .idea 文件.class 文件等,这时候就可以使用.gitignore ...

  9. Nginx详解八:Nginx基础篇之Nginx请求限制的配置语法与原理

    Nginx的请求限制: 连接频率的限制:limit_conn_module 配置语法:limit_conn_zone key zone=name:size;默认状态:-配置方法:http 配置语法:l ...

随机推荐

  1. openwrt的配置

    1,参考:http://www.cnblogs.com/gnuhpc/archive/2013/08/31/3293643.html(此人的博客还是挺不错的) http://www.cnblogs.c ...

  2. cache-coherent nonuniform memory access

    COMPUTER OR GANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION

  3. php usort 按照数组中的某个键值排序

    //php usort 按照数组中的某个键值排序 如果第一个参数小于第二个参数 -> 返回小于0的整数如果第一个参数等于于第二个参数 -> 返回等于0的整数如果第一个参数大于于第二个参数 ...

  4. 关于apache做301的问题

    http://www.internetmarketingninjas.com/blog/search-engine-optimization/301-redirects/ RedirectMatch ...

  5. (js) 输入框只能输入中文、英文、数字、@符号和.符号

    只能输入中文.英文.数字.@符号和.符号<input type="text" onkeyup="value=value.replace(/[^\a-\z\A-\Z0 ...

  6. ubuntu 更改时区

    更改/etc/timezone Asia/Chongqing sudo dpkg-reconfigure tzdata

  7. 在使用Intelligencia.UrlRewriter过程中 中文乱码问题

    由于业务需求,最近将项目部分模块修改为伪静态,使用到了Intelligencia.UrlRewriter.dll组件. 网上对使用Intelligencia.UrlRewriter.dll的配置讲解很 ...

  8. LeetCode Find the Celebrity

    原题链接在这里:https://leetcode.com/problems/find-the-celebrity/ 题目: Suppose you are at a party with n peop ...

  9. Apache本地配置多域名

    第一步:打开本地系统安装目录,进入目录C:\Windows\System32\drivers\etc找到一个叫hosts文件,用记事本打开,在文件结尾加入以下代码: 127.0.0.1 www.tes ...

  10. Python--While循环语句

    Python While循环语句 Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务.其基本形式为: while 判断条件: 执行语句 ...