(1)logstash介绍

Logstash是一个开源的数据收集引擎,可以水平伸缩,而且logstash是整个ELK当中拥有最多插件的一个组件,其可以接收来自不同源的数据并统一输入到指定的且可以是不同目的地。
logstash收集日志基本流程: input-->codec-->filter-->codec-->output
input:从哪里收集日志。
filter:发出去前进行过滤
output:输出至Elasticsearch或Redis消息队列
codec:输出至前台,方便边实践边测试
数据量不大日志按照月来进行收集
```
#(2)安装和配置logstash
1.安装logstash
```
wget https://artifacts.elastic.co/downloads/logstash/logstash-6.0.0.rpm
yum install -y logstash-6.0.0.rpm
ln -sv /usr/share/logstash/bin/logstash /bin/ //创建一个软连接,每次执行命令的时候不用在写安装路劲(默认安装在/usr/share下)
chown -R logstash.logstash /etc/logstash/conf.d/
ll /etc/logstash/conf.d/ //logstash的主配置目录
```
2.logstash基本语法
```
input {
指定输入
}
output {
指定输出
}
```
3.测试标准输入输出
```
logstash -e 'input { stdin { } } output { stdout { } }'
```
![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173113622-1012856198.png)
4.测试标准输入输出-更详细信息
```
logstash -e 'input { stdin { } } output { stdout { codec => rubydebug } }'
```
![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173124967-1292362824.png)
5.测试输出到elasticsearch和屏幕上
```
logstash -e 'input { stdin { } } output { elasticsearch { hosts => ["192.168.1.31:9200"] } stdout { codec => rubydebug } }'
```
![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173142440-85335088.png)
![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173221263-278466291.png)
6.测试使用配置文件
```
#vim /etc/logstash/conf.d/elk.conf
input { stdin { } }
output {
elasticsearch {
hosts => ["192.168.1.31"]
index => "logstash-%{+YYYY.MM.dd}"
}
stdout { codec => rubydebug }
}
#logstash -f /etc/logstash/conf.d/elk.conf //启动
```
![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173250260-117202887.png)
7.测试使用file插件
```
#vim /etc/logstash/conf.d/elk.conf
input {
file {
path => "/var/log/messages"
type => "system"
start_position => "beginning"
}
} output {
elasticsearch {
hosts => ["192.168.1.31"]
index => "system-%{+YYYY.MM.dd}"
}
}
```
![](https://images2018.cnblogs.com/blog/1195071/201805/1195071-20180528173300317-228288530.png)

最新文章

  1. JSON学习笔记一 —— 一些与移动端交互产生JSON数据的方法
  2. Cocos2d-x3.x塔防游戏(保卫萝卜)从零开始(三)
  3. Python 读书系列
  4. linux工具之dracut
  5. CentOS构造SNMP
  6. 关于<超文本>定义
  7. Java消息队列--ActiveMq 初体验
  8. 近日测试发现所有Excel相关功能均会抛异常,查后发现与福昕阅读器不兼容
  9. sqlalchemy和flask-sqlalchemy的几种分页方法
  10. HEOI2019 游记——240秒处的起死回生
  11. 3-hive、sqoop
  12. 获取TypeError:__init __()缺少1个需要的位置参数:'on_delete'当试图添加父表后面的子表
  13. 安装SourceTree遇到的一个个坑
  14. 记开发个人图书收藏清单小程序开发(六)Web开发
  15. 加固apk的开发者最常面对的十种问题
  16. push到github报错解决方法
  17. MySQL数据源驱动报错
  18. 4,临界区 之 synchronized
  19. Leetcode 944. Delete Columns to Make Sorted
  20. LongAdder源码学习

热门文章

  1. oracle导入提示IMP-00013: 只有 DBA 才能导入由其他 DBA 导出的文件
  2. Tensorflow实现学习率衰减
  3. github访问很慢的问题
  4. eclipse常用快捷键大全 (转)
  5. js实现数组排序
  6. SSM框架使用-wrong
  7. js javascript变量提升
  8. Flexbox兼容性
  9. 实用的 Node.js 教程,工具和资源
  10. Tool1—安装配置Windows Live Writer