关于MongoDB数据库的日志解析
MongoDB日志记录了数据库实例的健康状态、语句的执行状况、资源的消耗情况,所以日志对于分析数据库服务和性能优化很有帮助。
因此,很有必要花费一些时间来学习解析一下MongoDB的日志文件。
日志信息的格式
<日志时间> <严重级别> <信息所属分类> [<内容>] <消息>
例如 :
2014-11-03T18:28:32.450-0500 I NETWORK [initandlisten] waiting for connections on port 27017
日志信息严重级别
|
级别 |
级别描述 |
|
F |
Fatal |
|
E |
Error |
|
W |
Warning |
|
I |
Informational, for Verbosity Level of 0 |
|
D |
Debug, for All Verbosity Levels > 0 |
信息所属分类
|
日志分类 |
英文 |
分类描述 |
|
登入信息 |
ACCESS |
登入访问相关的信息,例如登录验证情况。 |
|
命令信息 |
COMMAND |
数据库执行命令相关信息,例如,查询。 |
|
控制管理信息 |
CONTROL |
记录控制管理相关的信息,例如数据库初始化。 |
|
FTDC信息 |
FTDC(full-time diagnostic data ) |
全程检测数据信息,例如Server的状态统计信息。 |
|
索引信息 |
INDEX |
索引相关信息,例如索引的创建过程信息。 |
|
网络信息 |
NETWORK |
网络相关信息,例如网络连接信息。 |
|
查询信息 |
QUERY |
查询相关信息,例如查询计划信息。 |
|
副本集信息 |
REPL |
副本集相关信息,例如副本集初始过程、心跳、回滚等信息 |
|
分片信息 |
SHARDING |
分片相关信息,例如mongos的启动信息 |
|
存储信息 |
STORAGE |
存储相关信息,例如将 storage 层的数据刷入磁盘的信息。 |
|
还原信息 |
RECOVERY |
还原活动相关的信息 |
|
日志信息 |
JOURNAL |
日志相关的信息 |
|
写操作信息 |
WRITE |
写操作相关的信息,例如更新(update)的命令。 |
查询日志详细等级
MongoDB将日志详细等级划分为0~5
1. 0 是MongoDB日志的的默认级别,会包含 Informational 类信息。
2. 1~5 是调试级别,会记录客户端所有的完整请求
查询日志详细等级的命令。
db.getLogComponents()
修改日志详细等级
修改日志详细等级的途径有两种。
第一种 设置logComponentVerbosity 参数来进行修改。
另外还需说明的一点是日志分类还可以进一步细化,
例如:将systemLog 整体设置为1,其中 query 子项 和storage子项 设置为2,而子项storage的子项设置journal再设置为1。
修改的具体命令为:
db.adminCommand( {
setParameter: 1,
logComponentVerbosity: {
verbosity: 1,
query: {
verbosity: 2
},
storage: {
verbosity: 2,
journal: {
verbosity: 1
}
}
}
} )
第二种方法,通过 db.setLogLevel()进行修改。
此种方法多是针对单一的日志类别进行修改。另外还有一点需要特别指出,我们有时候会通过db.getLogComponents() 看到级别日志级别为-1,其实-1,代表和其父类别的等级一样。
例如,我们将query类别的日志的详细级别设置为父类( systemLog)的日志详细级别,可以执行以下命令:
db.setLogLevel(-1, "query")
上面的两种方法都是修改,那么能否初始化是就配置呢?其实是可以的,我们只需要在初始配置文件中加入相应的参数就可以了,在此不再展开。
本文版权归作者所有,未经作者同意不得转载,谢谢配合!!!
关于MongoDB数据库的日志解析的更多相关文章
- canal 基于Mysql数据库增量日志解析
canal 基于Mysql数据库增量日志解析 1.前言 最近太多事情 工作的事情,以及终身大事等等 耽误更新,由于最近做项目需要同步监听 未来电视 mysql的变更了解到公司会用canal做增量监 ...
- 转载:阿里canal实现mysql binlog日志解析同步redis
from: http://www.cnblogs.com/duanxz/p/5062833.html 背景 早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求.不过早期的数 ...
- 数据库增量日志监听canal
概述 canal是阿里巴巴旗下的一款开源项目,纯Java开发.基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 起源:早期,阿里巴巴B2B公司 ...
- Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录
此为在网络上找来的,觉得很好! 实现目的: 对Mongodb数据库日志按天保存,并且只保留最近7天的日志记录. 具体操作: 使用Mongodb数据库自带的命令来切割日志 ps -def | grep ...
- CentOS 6.5_X64下安装MongoDB数据库
1.下载MongoDB 官网下载地址:https://www.mongodb.org/downloads 具体链接:https://fastdl.mongodb.org/linux/mongodb-l ...
- MongoDB数据库安装及配置环境终极教程(windows10系统)
本文是笔者花时间踩坑踩生气了写出来的!转载请注明出处@http://www.cnblogs.com/tim100/!请尊重我的劳动成果!谢谢! 今天,给大家说说在windows10系统下MongoDB ...
- Mongodb数据库学习
数据库 MongoDB (芒果数据库) 数据存储阶段 文件管理阶段 (.txt .doc .xls)优点 : 数据可以长期保存 可以存储大量的数据 使用简单 缺点 : 数据一致性差 数据查找修改不方便 ...
- MongoDB数据库安装及配置环境(windows10系统)
windows10系统下MongoDB的安装及环境配置: MongoDB的安装 下载地址: https://www.mongodb.com/download-center (这是windows10环境 ...
- python学习笔记——mongodb数据库
1 概述 1.1 文件管理阶段 优点:可以长期保存 能存储大量数据 缺点:没有结构化的组织 查找不方便 数据容易冗余 1.2 数据库管理阶段 有文件存储的优点,同时解决了文件存储的问题 缺点 : 操作 ...
随机推荐
- [树莓派]启用root账户
树莓派使用的linux是debian系统,所以树莓派启用root和debian是相同的. debian里root账户默认没有密码,但账户锁定. 当需要root权限时,由默认账户经由sudo执行,Ras ...
- Qt之自定义检索框
1.效果展示 今天这篇文章主要讲解的是自定义搜索框,不仅仅支持搜索,而且可以支持搜索预览,具体请看效果图1.网上也有一些比较简单明了的自定义搜索框,比如Qt之自定义搜索框,讲的也比较详细,不过本文的侧 ...
- C++中的to_string()函数[C++11支持]
C++ -> 字符串库 -> std::basic_string 定义于头文件 std::string to_string(int value); (1) (C++11起) std::st ...
- 华为oj之求int型正整数在内存中存储时1的个数
题目: 求int型正整数在内存中存储时1的个数 热度指数:4427 时间限制:1秒 空间限制:32768K 题目描述 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数. 输入描述: ...
- C#3.0 Lamdba表达式与表达式树
Lamdba表达式与表达式树 Lamdba表达式 C#2.0中的匿名方法使得创建委托变得简单起来,甚至想不到还有什么方式可以更加的简化,而C#3.0中的lamdba则给了我们答案. lamdba的行为 ...
- 微信公众号通过图片选取接口上传到阿里oss
前言 之前写过一篇微信JS-SDK的使用方法,可进行参考 https://www.cnblogs.com/fozero/p/10256862.html 配置并调用公众号接口权限 1.配置权限微信公众号 ...
- VisualStudio2017集成GitHub
1 概述 通过使用VisualStudio2017来编写C语言版本的helloworld程序,然后上传至GitHub 2 VisualStudio2017安装GitHub插件 前提条件: 必须完成Vi ...
- linux yum配置代理
yum里面可以单独设置代理就是yum源的参数加proxy=“http://ip:PORT”即在/etc/yum.conf中加入下面几句.proxy=http://210.45.72.XX:808pro ...
- IaaS,PaaS,SaaS 的区别
原文:http://www.ruanyifeng.com/blog/2017/07/iaas-paas-saas.html 越来越多的软件,开始采用云服务. 云服务只是一个统称,可以分成三大类. Ia ...
- java重写与重载的区别
override(重写) :即把改方法重新写一次,内部逻辑可变,外壳不变,核心重写 1. 方法名.参数.返回值相同. 2. 子类方法不能缩小父类方法的访问权限. 3. 子类方法不能抛出比父类方法更多的 ...