为了达到不会因为ELK中的某一项组件因为故障而导致整个ELK工作出问题,于是

将logstash收集到的数据存入到消息队列中如redis,rabbitMQ,activeMQ或者kafka,这里以redis为例进行操作

首先将需要收集的日志数据通过logstash收集到redis中,这里需要用到output的redis插件了:

1、安装redis,这里采用yum安装,存在于epel源

2、修改redis配置

[root@node3 ~]# egrep -v "^#|^$" /etc/redis.conf
bind 192.168.44.136
protected-mode yes
port 6379
tcp-backlog 511
timeout 0
tcp-keepalive 300
daemonize yes

开启redis服务:

[root@node3 ~]# /etc/init.d/redis start
启动 : [确定]

编写logstash配置文件,将日志数据写入到redis中:

[root@node3 conf.d]# cat redis_out.conf
input {
file {
path => ["/var/log/nginx/access.log"]
start_position => "beginning"
}
} output {
redis {
host => ["192.168.44.136"]
data_type => "list"
db => 1
key => "nginx"
}
}

然后logstash开始执行:

[root@node3 conf.d]# /usr/share/logstash/bin/logstash -f redis_out.conf
Sending Logstash's logs to /var/log/logstash which is now configured via log4j2.properties

登录redis进行查看是否已经有数据了:

[root@node3 ~]# redis-cli -h 192.168.44.136
192.168.44.136:6379> select 1
OK
192.168.44.136:6379[1]> llen nginx
(integer) 19

select 1:1就是上面logstash配置文件的db

llen nginx:nginx就是上面logstash配置文件的key

接下来将redis收集到的数据再通过logstash输出到es中:

[root@node3 conf.d]# cat redis_input.conf
input {
redis {
host => ["192.168.44.136"]
data_type => "list"
db => 1
key => "nginx"
}
} output {
elasticsearch {
hosts => ["192.168.44.134:9200"]
index => "redis-nginx"
}
}

开始执行:

[root@node3 conf.d]# /usr/share/logstash/bin/logstash -f redis_input.conf
Sending Logstash's logs to /var/log/logstash which is now configured via log4j2.properties

通过登录redis查看数据是否还存在:

[root@node3 ~]# redis-cli -h 192.168.44.136
192.168.44.136:6379> select 1
OK
192.168.44.136:6379[1]> llen nginx
(integer) 0
192.168.44.136:6379[1]>

可以看见redis中的数据已经被读取完了,现在查看es是否创建了相应的索引:

然后通过kibana将es的index添加进来:

于是整个流程就这样完成了,redis这个收集站可以换成其他消息队列服务

接下来通过操作kibana,使收集到的数据更加好看:

logstash运输器以及kibana的更多操作的更多相关文章

  1. python使用装饰器对文件进行读写操作'及遍历文件目录

    '''使用装饰器对文件进行读写操作''' # def check_permission(func): # '''演示嵌套函数定义及使用''' # def wrapper(*args,**kwargs) ...

  2. elk系列4之kibana图形化操作【转】

    preface 我们都搭建了ELK系统,且日志也能够正常收集的时候,那么就配置下kibana.我们可以通过kibana配置柱状图,趋势图,统计图,圆饼图等等各类图.下面就拿配置统计图和柱状图为例,结合 ...

  3. SQLAlchemy的使用---查询的更多操作

    # 查询更多操作 from create_table import User, engine from sqlalchemy.orm import sessionmaker Session = ses ...

  4. Django模型层之更多操作

    Django模型层之更多操作 一 .ORM字段 1.1 常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为 ...

  5. ELK(Logstash+Elasticsearch+Kibana)的原理和详细搭建

    一. Elastic Stack Elastic Stack是ELK的官方称呼,网址:https://www.elastic.co/cn/products ,其作用是“构建在开源基础之上, Elast ...

  6. 【jQuery】总结:筛选器、控制隐藏、操作元素style属性

    筛选器 -> http://blog.csdn.net/lijinwei112/article/details/6938134 常用到的: $("tr[id=ac_"+id+ ...

  7. 第三章 JQuery: HelloWorld--常见方法--css--选择器--筛选器--属性--效果--事件--数组操作--字符串操作--对象转换

    1.jQuery简介 为了简化JavaScript 的开发, 一些JavsScript 库诞生了. JavaScript库封装了很多预定义的对象和实用函数.能帮助使用者建立有高难度交互的页面, 并且兼 ...

  8. ELK日志系统之kibana的使用操作

    1.ELK日志系统打开后,打开kibana的操作界面,第一步创建索引模式: 第2步:创建日志索引 第3步:创建成功 第4步:查看30分钟时间段内的日志数据,也可以查今天的,今月的,今年的 放牛去

  9. Solr搜索器的特性及相关操作

    一.搜索处理器简介 所有的请求处理器都实现一个Java类,本例实现了solr.SearchHandler.在运行时,solr.SearchHandler被解析为内置的Solr类org.apache.s ...

随机推荐

  1. 【BZOJ1441】Min 拓展裴蜀定理

    [BZOJ1441]Min Description 给出n个数(A1...An)现求一组整数序列(X1...Xn)使得S=A1*X1+...An*Xn>0,且S的值最小 Input 第一行给出数 ...

  2. 【BZOJ3648】寝室管理 树分治

    [BZOJ3648]寝室管理 Description T64有一个好朋友,叫T128.T128是寄宿生,并且最近被老师叫过去当宿管了.宿管可不是一件很好做的工作,碰巧T128有一个工作上的问题想请T6 ...

  3. Java 调用并执行cmd命令

    cmd java 调用 执行 概要: Java 调用并执行cmd命令 Java | 复制 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2 ...

  4. 查看嵌入式设备的CPU频率

    对于有多个核心的CPU,查看CPU 频率的方法是: cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq 上面的这个是查看核心0的cpu的 ...

  5. [转载]Elasticsearch、MongoDB和Hadoop比较

    IT界在过去几年中出现了一个有趣的现象.很多新的技术出现并立即拥抱了“大数据”.稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化.假如你有诸如Elas ...

  6. XML External Entity attack

    解析外部xml给本地带来的安全隐患. https://en.wikipedia.org/wiki/XML_external_entity_attack An XML External Entity ( ...

  7. Python 线程(threading)

    Python 的thread模块是比较底层的模块,Python的threading模块是对thread做了一些包装,可以更加方便的 被使用; 1. 使用threading 模块 # 示例一: 单线程执 ...

  8. opencv 角点检测+相机标定+去畸变+重投影误差计算

    https://blog.csdn.net/u010128736/article/details/52875137 https://blog.csdn.net/h532600610/article/d ...

  9. ubuntu14下创建软件的快捷启动方式

    下载软件,使用softname/bin/softname.sh即可启动,但是很麻烦,每次都要打开terminal 为了方便,我们需要创建desktop文件指向这个启动软件的shell文件(以创建Pyc ...

  10. Linux(5)- MariaDB、mysql主从复制、初识redis

    一.MYSQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL ...