Logstash学习-配置语法
区段(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学习-配置语法的更多相关文章
- 学习nginx从入门到实践(四) 基础知识之nginx基本配置语法
nginx基本配置语法 1.http相关 展示每次请求的请求头: curl -v http://www.baidu.com 2.nginx日志类型 error.log. access.log log_ ...
- logstash 学习小记
logstash 学习小记 标签(空格分隔): 日志收集 Introduce Logstash is a tool for managing events and logs. You can use ...
- 程序员带你学习安卓开发,十天快速入-对比C#学习java语法
关注今日头条-做全栈攻城狮,学代码也要读书,爱全栈,更爱生活.提供程序员技术及生活指导干货. 如果你真想学习,请评论学过的每篇文章,记录学习的痕迹. 请把所有教程文章中所提及的代码,最少敲写三遍,达到 ...
- Logstash学习系列之基础介绍
Logstash功能特性 能集中处理各种类型的数据 能标准化不同模式和格式的数据 能快速的扩展自定义日志的格式 它具有收集,分析和转发数据流的功能 Logstash运行参数 -f 指定配置文件 -e ...
- nginx目录及配置语法
一.Nginx安装目录 1.查看安装目录. 采用yum的方式安装,其实都是安装的一个一个的 pm 包,故可采用如下命令查看 rpm -ql nginx 遵循了 rpm 包管理规范. 2.安装目录详解 ...
- 工作效率-十五分钟让你快速学习Markdown语法到精通排版实践备忘
关注「WeiyiGeek」公众号 设为「特别关注」每天带你玩转网络安全运维.应用开发.物联网IOT学习! 希望各位看友[关注.点赞.评论.收藏.投币],助力每一个梦想. 文章目录: 0x00 前言简述 ...
- ios -- 教你如何轻松学习Swift语法(一)
目前随着公司开发模式的变更,swift也显得越发重要,相对来说,swift语言更加简洁,严谨.但对于我来说,感觉swift细节的处理很繁琐,可能是还没适应的缘故吧.基本每写一句代码,都要对变量的数据类 ...
- Git 中 .gitignore 的配置语法
一.前言 在日常的开发中,当我们需要将一个项目提交到 Git 时,并不是所有的文件都需要提交,比如一些自动生成的文件,类似于 .idea 文件.class 文件等,这时候就可以使用.gitignore ...
- Nginx详解八:Nginx基础篇之Nginx请求限制的配置语法与原理
Nginx的请求限制: 连接频率的限制:limit_conn_module 配置语法:limit_conn_zone key zone=name:size;默认状态:-配置方法:http 配置语法:l ...
随机推荐
- Redhat 一则关于路由及DNS配置的实例
安装了Redhat 7.2, 配置路由, 但发现路由重启之后,不能生效. 配置路由: touch /etc/sysconfig/static-router, 然后编辑路由信息如下. any defau ...
- window系统下,简单的FTP上传和下载操作
先假设有一FTP服务器,FTP服务器:qint.ithot.net,用户名:username 密码:user1234.在本地电脑D:盘创建一个文件夹"qint".将要上传的文件 ...
- HTTPS 进阶
参考 一.中间人攻击 概念:攻击者插入到原本直接通信的双方,让双方以为还在直接跟对方通讯,但是实际上双方的通信对方已经变成中间人,信息已经被中间人获取或篡改. HTTPS 的攻击分为两类:SSL 连接 ...
- vue.js 学习笔记
/*属性*/ 标签内的属性都用 :attr="xxx" 的形式 /*模板*/ {{ msg }} -> 绑定数据 {{ *msg }} -> 数据只绑定一次 {{{ m ...
- HTTP缓存&代理
一.与缓存有关的Header 1.Request If-Modified-Since: 缓存文件的最后修改时间 If-None-Match: ...
- shell脚本嵌套expect脚本
#!/bin/sh echo "helo" password='xxxx' ###不能在下面的expect脚本段设置成 set password xxxx否则获取不到变量,单独的e ...
- C语言一维数组、二维数组、结构体的初始化
C语言数组的初始化表示方法 一.C语言一维数组初始化: (1)在定义数组时对数组元素赋以初值.如: static int a[10]={0,1,2,3,4,5,6,7,8,9}; 经过上面的定义和初始 ...
- 在Eclipse中使用Git提交到远程仓库
- ios监听键盘弹出 频幕位置改变
- 优化phpstorm运行卡顿问题!
在PHPSTORM中点击导航菜单:Help -> Edit Custom VM Options 如果是第一次点击,会提示是否新建配置文件,点击“是” 在弹出的编辑框末尾加上以下配置 -Dawt. ...