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数据库的安装步骤
Jun 18 MongoDB
MongoDB orm框架的注意事项及简单使用
Jun 20 MongoDB
详解MongoDB的条件查询和排序
Jun 23 MongoDB
阿里云服务器部署mongodb的详细过程
Sep 04 MongoDB
mongodb清除连接和日志的正确方法分享
Sep 15 MongoDB
关于CentOS 8 搭建MongoDB4.4分片集群的问题
Oct 24 MongoDB
springboot + mongodb 通过经纬度坐标匹配平面区域的方法
Nov 01 MongoDB
MongoDB使用场景总结
Feb 24 MongoDB
剖析后OpLog订阅MongoDB的数据变更就没那么难了
Feb 24 MongoDB
MongoDB误操作后使用oplog恢复数据
Apr 11 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
AM/FM收音机的安装与调试
2021/03/02 无线电
php环境套包 dedeampz 伪静态设置示例
2014/03/26 PHP
ThinkPHP中where()使用方法详解
2016/04/19 PHP
JavaScript Eval 函数使用
2010/03/23 Javascript
jquery 模拟雅虎首页的点击对话框效果
2010/04/11 Javascript
JS实现随机数生成算法示例代码
2013/08/08 Javascript
js实现单行文本向上滚动效果实例代码
2013/11/28 Javascript
Javascript获取当前日期的农历日期代码
2014/10/08 Javascript
jQuery中replaceAll()方法用法实例
2015/01/16 Javascript
微信jssdk用法汇总
2016/07/16 Javascript
全面了解JavaScript对象进阶
2016/07/19 Javascript
jQuery扩展+xml实现表单验证功能的方法
2016/12/25 Javascript
微信小程序左滑删除效果的实现代码
2017/02/20 Javascript
bootstrap如何让dropdown menu按钮式下拉框长度一致
2017/04/10 Javascript
Vuex之理解state的用法实例
2017/04/19 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
Node.js如何实现注册邮箱激活功能 (常见)
2017/07/23 Javascript
浅谈Vue-cli 命令行工具分析
2017/11/22 Javascript
vue-devtools的安装和使用步骤详解
2019/10/17 Javascript
vue项目启动出现cannot GET /服务错误的解决方法
2020/04/26 Javascript
详解Python中的__init__和__new__
2014/03/12 Python
python实现多线程暴力破解登陆路由器功能代码分享
2015/01/04 Python
python3新特性函数注释Function Annotations用法分析
2016/07/28 Python
Python实现删除排序数组中重复项的两种方法示例
2019/01/31 Python
英国第一的购买便宜玩具和游戏的在线购物网站:Bargain Max
2018/01/24 全球购物
美国在线面料商店:Online Fabric Store
2018/07/26 全球购物
Ancheer官方户外和运动商店:销售电动自行车
2019/08/07 全球购物
WINDOWS域的具体实现方式是什么
2014/02/20 面试题
法雷奥SQA(electric)面试问题
2016/01/23 面试题
材料加工硕士生求职信
2013/10/10 职场文书
领导干部“四风”问题批评与自我批评材料
2014/09/24 职场文书
水电施工员岗位职责
2015/04/11 职场文书
2015双创工作总结
2015/07/24 职场文书
学校标语口号大全
2015/12/26 职场文书
四年级作文之说明文作文
2019/10/14 职场文书
MySQL学习必备条件查询数据
2022/03/25 MySQL