日志存储系统常用技术方案介绍
2017-05-10 18:20
513 查看
日志存储系统常用技术方案有两种:一是log4j/logback+mongodb的方式,一种是基于ELK的日志存储系统。
日志一般存储在数据库和文件系统中。日志数据要和生产正式库分开存储,否则会影响正式库的运行,带来隐患。另外,为了防止日志存储性能问题,后期可以考虑采用异步的消息队列形式进行存储。
下面详细讲解。
1.便捷的日志存储方式log4j+mongodb
1)安装和配置简介
需要引入的jar包有:Mongo Java driver、Log4J(1.2.16以上版本)、log4mongo-java,通过log4j.properties属性文件配置,整合log4j和mongodb。log4j可直接写数据到mongodb中。
2)日志分析和查看
可通过mongovision这个web客户端进行日志的查看和分析。mongovision,使用extjs作为前端,体验较好,需要java7及以上版本。
2.基于ELK的日志系统
ELK=ElasticSearch+LogStash+Kibana
日志数据流如下:应用将日志落地在本地文件,部署在每台服务器上的FileBeat负责收集日志,然后将日志发送给LogStash;LogStash对日志进行处理解析等操作;然后将处理后的Json对象传递给ElasticSearch,进行落地并进行索引处理;最后通过Kibana来提供web界面,来查看日志等。
对于日志数据流特别大的情况,LogStash会造成拥堵,这个时候可以使用消息队列来进行缓冲,比如kafka。新的流程如下:
--------------------------------------------------------------------
PS: 欢迎关注公众号"Devin说",会不定期更新Java相关技术知识。
--------------------------------------------------------------------
日志一般存储在数据库和文件系统中。日志数据要和生产正式库分开存储,否则会影响正式库的运行,带来隐患。另外,为了防止日志存储性能问题,后期可以考虑采用异步的消息队列形式进行存储。
下面详细讲解。
1.便捷的日志存储方式log4j+mongodb
1)安装和配置简介
需要引入的jar包有:Mongo Java driver、Log4J(1.2.16以上版本)、log4mongo-java,通过log4j.properties属性文件配置,整合log4j和mongodb。log4j可直接写数据到mongodb中。
2)日志分析和查看
可通过mongovision这个web客户端进行日志的查看和分析。mongovision,使用extjs作为前端,体验较好,需要java7及以上版本。
2.基于ELK的日志系统
ELK=ElasticSearch+LogStash+Kibana
日志数据流如下:应用将日志落地在本地文件,部署在每台服务器上的FileBeat负责收集日志,然后将日志发送给LogStash;LogStash对日志进行处理解析等操作;然后将处理后的Json对象传递给ElasticSearch,进行落地并进行索引处理;最后通过Kibana来提供web界面,来查看日志等。
对于日志数据流特别大的情况,LogStash会造成拥堵,这个时候可以使用消息队列来进行缓冲,比如kafka。新的流程如下:
--------------------------------------------------------------------
PS: 欢迎关注公众号"Devin说",会不定期更新Java相关技术知识。
--------------------------------------------------------------------
相关文章推荐
- 【线上直播】测试环境自动部署系统技术的整体方案、技术架构及功能介绍
- 万亿级日志与行为数据存储查询技术剖析——Hbase系预聚合方案、Dremel系parquet列存储、预聚合系、Lucene系
- 【对比分析一】常用的浏览器本地存储方案介绍和对比
- linux系统各种日志存储路径和详细介绍
- 两个常用的系统存储过程sp_help与sp_pkeys
- Mysql常用存储引擎介绍
- 集群存储系统介绍
- 阅读郭林《第一行代码》的笔记——第6章 数据存储全方案,详解持久化技术
- 微信游戏《全民炫舞》公司的引擎开发和布料系统技术介绍
- 分布式锁 Java常用技术方案
- 用Ethereal协议分析系统介绍 && Ethereal支持的常用协议端口号
- 存储系统科普——分布式存储系统解决方案介绍
- android 摘要----数据存储全方案,详解持久化技术
- 架构设计:系统存储(11)——MySQL主从方案业务连接透明化(上)
- 一些常用的系统存储过程
- 常用的系统存储过程
- Memcache技术分享:介绍、使用、存储、算法、优化、命中率
- 分布式锁:Java常用技术方案
- Docker 最常用的监控方案 - 每天5分钟玩转 Docker 容器技术(78)
- 日志系统之HBase日志存储设计优化