首页 » PHP教程 » ubuntuphplog技巧_阿里java第二面运用log4jmongodb实现分布式系统中日志统一治理

ubuntuphplog技巧_阿里java第二面运用log4jmongodb实现分布式系统中日志统一治理

访客 2024-12-02 0

扫一扫用手机浏览

文章目录 [+]

log4j与mongodb整合

1、首先安装mongodb数据库,详细安装方法请百度;

ubuntuphplog技巧_阿里java第二面运用log4jmongodb实现分布式系统中日志统一治理

2、在你的运用程序中引用以下类库:

ubuntuphplog技巧_阿里java第二面运用log4jmongodb实现分布式系统中日志统一治理
(图片来自网络侵删)

Mongo Java driver jar包 下载Log4J jar包 把稳版本,一定要1.2.16及以上。
下载log4mongo-java jar包 下载

3、在你的web项目中创建log4j.properties文件。

4、配置log4j.properties文件,使之整合mongodb:

log4j.rootLogger=INFO,stdout,MongoDB log4j.appender.MongoDB=org.log4mongo.MongoDbAppender log4j.appender.MongoDB.databaseName=logs log4j.appender.MongoDB.collectionName=log log4j.appender.MongoDB.hostname=ubuntu log4j.appender.MongoDB.port=27017 log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

5、配置运用的日志输出格式:

1: log4j.logger.com.cnblogs.leefreeman.servlet=INFO,action

2: log4j.appender.action.Threshold = INFO

3: log4j.appender.action=org.apache.log4j.DailyRollingFileAppender

4: log4j.appender.action.encoding=utf8

5: log4j.appender.action.File=/opt/logs/action.log

6: log4j.appender.action.DatePattern = '_'yyyy-MM-dd'.log'

7: log4j.appender.action.layout=org.apache.log4j.PatternLayout

8: log4j.appender.action.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

6、在运用程序中利用日志:

1: public class IndexServlet extends HttpServlet {

2: private static Logger logger = Logger.getLogger(IndexServlet.class);

3: private static final long serialVersionUID = -5244922269946905057L;

4:

5: @Override

6: protected void doGet(HttpServletRequest req, HttpServletResponse resp)

7: throws ServletException, IOException {

8: logger.info("hello log4j+mongodb");

9: PrintWriter out = resp.getWriter();

10: out.print("hello world");

11: out.flush();

12: out.close();

13: }

14: }

7、通过Mongodb客户端系统,查看日志情形:

日志成功写入mongdb数据库,可以看到在数据库中日志的构造相称清晰。

利用日志系统管理mongodb的日志

可以开拓一个日志系统连接mongodb数据库,进行日志数据的管理和剖析。
你也可以利用mongodb目前有的一些Web客户端来管理,下面先容两个mongodb常用的Web客户端:

mongovision:利用extjs作为前端,体验较好,但须要java7。

rock_mongo:基于php的MongoDB管理工具。

mongodb的支配办法

在我们数据量不是太大的情形下,并且日志数据的主要性不是太强的时候,我们可以快速搭建出最大略的mongodb单实例模式,来储存日志数据。
这种办法最大略最快速。

当我们考虑到安全、灾备等成分时,我们一样平常可以考虑主-从模式搭建mongodb做事器。

采取主-从模式后主节点挂掉了后从节点可以接替主机连续做事。
这种模式比单节点的高可用性要好很多。

如果有一天数据越来越多,你创造mongodb处理它们越来越吃力,你就得想办法怎么让它减压。
一样平常的做法是,支配多个从节点,来分担主节点压力。
在这里我们可以想到Mysql的读写方案,同样也适宜Mongodb。

你可以让主节点用于写入,而从节点用于读操作(根据你的运用读和写操作的比例来分配)。
这样读写分离,主从分担数据库操作压力。

把稳把稳:以上分享的mongodb各种模式的详细支配配置方法,如果你想要一起学习转发后关注我私信【资料】免费领取吧

相关文章

执业药师试卷代码解码药师职业发展之路

执业药师在药品质量管理、用药安全等方面发挥着越来越重要的作用。而执业药师考试,作为进入药师行业的重要门槛,其试卷代码更是成为了药师...

PHP教程 2025-02-18 阅读0 评论0

心灵代码主题曲唤醒灵魂深处的共鸣

音乐,作为一种独特的艺术形式,自古以来就承载着人类情感的表达与传递。心灵代码主题曲,以其独特的旋律和歌词,唤醒了无数人的灵魂深处,...

PHP教程 2025-02-18 阅读0 评论0

探寻福建各市车牌代码背后的文化内涵

福建省,地处我国东南沿海,拥有悠久的历史和丰富的文化底蕴。在这片充满魅力的土地上,诞生了许多具有代表性的城市,每个城市都有自己独特...

PHP教程 2025-02-18 阅读0 评论0

探寻河北唐山历史与现代交融的城市之光

河北省唐山市,一座地处渤海之滨,拥有悠久历史和独特文化的城市。这里既是古丝绸之路的起点,也是中国近代工业的发源地。如今,唐山正以崭...

PHP教程 2025-02-18 阅读0 评论0