MongoDB日志切割的三种方式总结


Posted in MongoDB onSeptember 15, 2021

前言

线上运行的服务会产生大量的运行及访问日志,日志里会包含一些错误、警告及用户行为等信息。通常服务会以文本的形式记录日志信息,这样可读性强,方便于日常定位问题。但当产生大量的日志之后,要想从大量日志里挖掘出有价值的内容,则需要对数据进行进一步的存储和分析。

任何一种数据库都有各种各样的日志,MongoDB也不例外。MongoDB中有4种日志,分别是系统日志、Journal日志、oplog主从日志、慢查询日志等。这些日志记录着MongoDB数据库不同方面的踪迹

MongoDB 默认是不会进行切割日志的,除非我们配置了 logRotate = rename,并且重启 MongoDB 服务,才会进行切割日志的,那么为了避免实际中我们一个日志文件过大,我们需要对日志进行切割,有两个办法:

方法如下

1. 通过 MongoDB 管理命令进行切割

使用该命令时需要在 MongoDB 运行时指定日志文件路径。--logpath [file] ,或者在配置文件中指定。

use admin
db.runCommand({logRotate:1})

2. 通过 Linux 系统自带的服务 logrotate 进行切割

首先我们需要配置 MongoDB 参数 logRotate = reopen, logappend = true,然后通过 Linux 系统自带的 logrotate。配置文件放置在 /etc/logrotate.d/, 切割配置文件示例:

/opt/mongodb/log/mongodb.log {
rotate 180  
daily
size 100M
olddir /opt/mongodb/log/oldlog
copytruncate
dateext
compress
notifempty
missingok
}

3. 通过向进程发送 SIGUSR1 信号来切割日志

如果我们的进程 id 是19555,那么我们可以通过以下命令来切割日志的。只要我们执行了该命令,日志就会立即进行切割。

kill -SIGUSR1   19555

总结

到此这篇关于MongoDB日志切割的三种方式的文章就介绍到这了,更多相关MongoDB日志切割内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MongoDB 相关文章推荐
SpringBoot整合MongoDB的实现步骤
Jun 23 MongoDB
阿里云服务器部署mongodb的详细过程
Sep 04 MongoDB
mongodb清除连接和日志的正确方法分享
Sep 15 MongoDB
MongoDB日志切割的三种方式总结
Sep 15 MongoDB
关于CentOS 8 搭建MongoDB4.4分片集群的问题
Oct 24 MongoDB
MongoDB使用场景总结
Feb 24 MongoDB
剖析后OpLog订阅MongoDB的数据变更就没那么难了
Feb 24 MongoDB
MongoDB数据库部署环境准备及使用介绍
Mar 21 MongoDB
Centos系统通过Docker安装并搭建MongoDB数据库
Apr 12 MongoDB
MongoDB数据库之添删改查
Apr 26 MongoDB
详解MongoDB排序时内存大小限制与创建索引的注意事项
May 06 MongoDB
mongodb清除连接和日志的正确方法分享
Sep 15 #MongoDB
阿里云服务器部署mongodb的详细过程
Sep 04 #MongoDB
mongodb数据库迁移变更的解决方案
Sep 04 #MongoDB
mongodb的安装和开机自启动详细讲解
Aug 02 #MongoDB
常用的MongoDB查询语句的示例代码
Jul 25 #MongoDB
Mongo服务重启异常问题的处理方法
Jul 01 #MongoDB
MongoDB安装使用并实现Python操作数据库
You might like
MySQL数据源表结构图示
2008/06/05 PHP
php采集文章中的图片获取替换到本地(实现代码)
2013/07/08 PHP
PHP基于cookie与session统计网站访问量并输出显示的方法
2016/01/15 PHP
php+mysql开发中的经验与常识小结
2019/03/25 PHP
说明你的Javascript技术很烂的五个原因
2011/04/26 Javascript
基于jQuery选择器的整理集合
2013/04/26 Javascript
javascript获取隐藏dom的宽高 具体实现
2013/07/14 Javascript
jQuery时间轴插件使用详解
2015/07/16 Javascript
onclick和onblur冲突问题的快速解决方法
2016/04/28 Javascript
轻松理解JavaScript之AJAX
2017/03/15 Javascript
JS实现动态添加DOM节点和事件的方法示例
2017/04/28 Javascript
微信小程序实现slideUp、slideDown滑动效果及点击空白隐藏功能示例
2018/12/11 Javascript
关于Vue源码vm.$watch()内部原理详解
2019/04/26 Javascript
手写Vue弹窗Modal的实现代码
2019/09/11 Javascript
Vue 通过公共字段,拼接两个对象数组的实例
2019/11/07 Javascript
JS前端面试必备——基本排序算法原理与实现方法详解【插入/选择/归并/冒泡/快速排序】
2020/02/24 Javascript
vue项目配置 webpack-obfuscator 进行代码加密混淆的实现
2021/02/26 Vue.js
自动化Nginx服务器的反向代理的配置方法
2015/06/28 Python
python 异常处理总结
2016/10/18 Python
Django实现快速分页的方法实例
2017/10/22 Python
python的scikit-learn将特征转成one-hot特征的方法
2018/07/10 Python
Mac在python3环境下安装virtualwrapper遇到的问题及解决方法
2019/07/09 Python
如何在Django项目中引入静态文件
2019/07/26 Python
python给图像加上mask,并提取mask区域实例
2020/01/19 Python
Python控制台输出时刷新当前行内容而不是输出新行的实现
2020/02/21 Python
Python matplotlib绘制图形实例(包括点,曲线,注释和箭头)
2020/04/17 Python
HTML5新特性之type=file文件上传功能
2018/02/02 HTML / CSS
美国非常受欢迎的Spa品牌:Bliss必列斯
2018/04/10 全球购物
阿玛尼美妆俄罗斯官网:Giorgio Armani Beauty RU
2020/07/19 全球购物
10条PHP编程习惯
2014/05/26 面试题
this关键字的含义
2015/04/08 面试题
请假条怎么写
2014/04/10 职场文书
关于护士节的演讲稿
2014/05/26 职场文书
化学专业大学生职业生涯规划范文
2014/09/13 职场文书
打架赔偿协议书范本
2014/10/26 职场文书
中小学教师继续教育心得体会
2016/01/19 职场文书