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 相关文章推荐
mongodb数据库迁移变更的解决方案
Sep 04 MongoDB
关于CentOS 8 搭建MongoDB4.4分片集群的问题
Oct 24 MongoDB
剖析后OpLog订阅MongoDB的数据变更就没那么难了
Feb 24 MongoDB
一次线上mongo慢查询问题排查处理记录
Mar 18 MongoDB
MongoDB支持的索引类型
Apr 11 MongoDB
Centos系统通过Docker安装并搭建MongoDB数据库
Apr 12 MongoDB
SpringBoot集成MongoDB实现文件上传的步骤
Apr 18 MongoDB
Mongodb 迁移数据块的流程介绍分析
Apr 18 MongoDB
MongoDB数据库之添删改查
Apr 26 MongoDB
NoSQL优缺点与MongoDB数据库简介
Jun 05 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
用PHP ob_start()控制浏览器cache、生成html实现代码
2010/02/16 PHP
php缓冲 output_buffering的使用详解
2013/06/13 PHP
php中0,null,empty,空,false,字符串关系的详细介绍
2013/06/20 PHP
CI框架在CLI下执行占用内存过大问题的解决方法
2014/06/17 PHP
PHP 读取和编写 XML
2014/11/19 PHP
PHP常见错误提示含义解释(实用!值得收藏)
2016/04/25 PHP
phpQuery采集网页实现代码实例
2020/04/02 PHP
Laravel框架集合用法实例浅析
2020/05/14 PHP
php获取小程序码的实现代码(B类接口)
2020/06/13 PHP
分页栏的web标准实现
2011/11/01 Javascript
SpringMVC返回json数据的三种方式
2015/12/10 Javascript
简单的jQuery拖拽排序效果的实现(增强动态)
2017/02/09 Javascript
jQuery 表单序列化实例代码
2017/06/11 jQuery
浅谈在Vue-cli里基于axios封装复用请求
2017/11/06 Javascript
微信小程序如何修改本地缓存key中单个数据的详解
2019/04/26 Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
2019/09/13 Javascript
封装 axios+promise通用请求函数操作
2020/08/11 Javascript
[00:36]DOTA2上海特级锦标赛 LGD战队宣传片
2016/03/04 DOTA
[44:04]OG vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python ORM框架SQLAlchemy学习笔记之映射类使用实例和Session会话介绍
2014/06/10 Python
浅谈scrapy 的基本命令介绍
2017/06/13 Python
在Python中使用AOP实现Redis缓存示例
2017/07/11 Python
浅谈Scrapy框架普通反爬虫机制的应对策略
2017/12/28 Python
opencv实现图片模糊和锐化操作
2018/11/19 Python
用python实现刷点击率的示例代码
2019/02/21 Python
python+opencv像素的加减和加权操作的实现
2019/07/14 Python
Django模板Templates使用方法详解
2019/07/19 Python
python requests模拟登陆github的实现方法
2019/12/26 Python
python 链接sqlserver 写接口实例
2020/03/11 Python
详解用python -m http.server搭一个简易的本地局域网
2020/09/24 Python
详解三种方式实现平滑滚动页面到顶部的功能
2019/04/23 HTML / CSS
产品工艺师的岗位职责
2013/11/15 职场文书
人力资源总监工作说明
2014/03/03 职场文书
美德少年事迹材料1000字
2014/08/21 职场文书
中考学习决心书
2015/02/04 职场文书
未婚证明格式
2015/06/15 职场文书