其他分享
首页 > 其他分享> > Graylog 日志系统

Graylog 日志系统

作者:互联网

简介

Graylog 是一个开源的日志管理系统。能够通过不同 Input 接口接收日志,并为用户提供 Web 访问接口,它使用 Elasticsearch 索引和保存日志,使用 MongoDB 作为配置信息的存储。
 
大致工作流程是日志信息通过 Inputs 进入 Graylog,如果有设置日志字段提取的话经过 Extractor,之后到达 Streams 日志流中,最后就是根据Streams 日志流设置写入指定 Index,然后根据日志流中设置的匹配信息触发 Alters 报警。
 
与当前流行的 ELK 相比,它更容易上手使用,而且带流量控制,有报警功能。所以才使用了 Graylog,用它来收集各个 Web、DB 的日志,工作站上 puppet、crontab 的运行日志以及防火墙交换机的日志并设置日志报警。
 
目前我学习和工作中使用的版本是 Graylog 2.4,安装在 CentOS 7.2 上。

安装

Graylog 的安装很简单,直接可以参考官网的文档进行安装即可:
http://docs.graylog.org/en/2.4/pages/getting_started.html

Graylog 可以从插件市场通过插件和内容包来完善 Graylog 日志系统的功能使用:
https://marketplace.graylog.org

日志收集方式

Graylog 通过 Inputs 收集日志,收集日志的方式支持很多,支持的方式如下:

索引

Graylog 中可以手动创建自己的索引 Index,创建索引的选项中可以根据自己的需要设置索引的分片、复制、索引文件的切分与保留。
 
关于 Shards: 每个 Index 分多少片,每一片可以保存在 Elastic 集群中不同的机器上。日志存储和查询的瓶颈一般是磁盘 IO,通过分片可以将 IO压力分摊到多台机器。
 
关于 Replicas: 每个 Shard 额外保存多少个副本,当有机器出现故障,只要集群内能凑齐每个 Shard 中至少一个副本就不会有任何影响。当然可靠性是靠存储的冗余来实现的,需要消耗更多的磁盘空间。
 
过期策略主要根据日志量,磁盘空间,需要查询的时间跨度来决定,Graylog 提供了三种 Index 文件切割方案:按时间、按 Index 中日志数量、按 Index 的占用磁盘大小。

报警

创建报警条件,需要选择报警来自哪个 Stream 以及条件类型,默认自带的报警功能有点简单,如果不满足可以从 Graylog 的插件市场通过安装插件的方式来完善报警功能,例如安装 Aggregate 插件或者 graylog-plugin-zabbix 插件结合 Zabbix Server 的 trapper 方式进行日志报警。

总结

先记录到这里,后面用到了其他功能再继续完善。从初期使用的这段时间来说,Graylog 确实是一个非常容易部署使用,Web UI 比较友好的一个日志管理系统,而且它还支持 LDAP 的验证,并可以根据不同组设置默认的权限,以及创建不同的角色设置不同的权限等等。

标签:Index,报警,系统,graylog,索引,Graylog,日志
来源: https://blog.51cto.com/liubin0505star/2670959