Mongodb日志类型以及日志轮转

Mongodb日志类型以及日志轮转

1.Mongodb日志类型

系统日志:启动、关闭、错误、警告等。

Journal 日志:保证崩溃恢复的数据完整性。

Oplog:副本集复制操作记录。

慢查询日志:超过 slowms 阈值的操作,包含执行计划、锁等待、CPU 时间等。

优化建议:

开启慢查询日志:db.setProfilingLevel(1, 200)

定期日志轮转:logRotate: rename

敏感数据脱敏:redactClientLogData: true

结合监控工具(如 MongoDB Cloud Manager、Prometheus+Grafana)进行可视化分析。

说明:

db.setProfilingLevel(level,) 0=off 1=slow 2=all

第一个参数是指定级别,不同的级别代表不同的意义,0表示关闭,1表示默认记录耗时大于100毫秒的操作,2表示记录所有操作。第二个参数则是自定义"耗时过长"标准,比如记录所有耗时操作200ms的操作

2.Mongodb日志轮转

1.MongoDB自带机制,执行如下命令可以切换日志文件,不需要重启服务

db.runCommand({logRotate:1})

参考链接:https://mongodb.ac.cn/docs/manual/reference/command/logRotate/

建议配置

复制代码
systemLog:
  quiet: false
  destination: file
  logAppend: true
  logRotate: reopen
  path: /var/log/mongodb/mongod.log

quiet的不同值的含义:

quiet: true:如果将quiet设置为true,MongoDB 会显著减少日志输出量。只有非常重要的日志消息,如严重错误(例如数据库无法启动、关键组件故障等)才会被记录。这种设置在生产环境中可能用于减少日志文件的大小和降低 I/O 负载,但同时也会导致可用于故障排查和系统监控的信息大幅减少。例如,在日常操作过程中,常规的连接建立、查询执行等信息将不会被记录。

quiet: false: 当设置为false时,你会得到更详细的日志,有助于调试和监控 MongoDB 的运行状况。例如,你可以看到每个客户端连接的详细信息、执行的查询语句(如果开启了查询日志记录相关配置)、副本集状态变化等信息,这些对于诊断性能问题、排查连接故障以及了解数据库整体运行情况非常有帮助。例如,在排查某个慢查询问题时,详细的日志可能记录了查询执行的时间、涉及的集合以及查询条件等关键信息。

·destination:定义日志存在哪里,可以设置为file、syslog

·path:日志文件的位置和名称。缺省是:/var/log/mongodb/mongod.log。如果设置了destination: file,就必须配置path

·verbosity:定义日志级别

·quiet:如果设置为true,mongodb会运行在quite模式,限制写入日志的量。生产环境通常建议设置为false

·traceAllExceptions:如果设置为true,会打印verbose信息,提供用于调试的额外信息

·syslogFacility:默认是user,与操作系统的syslog设置有关

·logAppend:如果设置为 true,重启后将日志条目追加到已经存在日志文件;如果设置为 false,重启后将创建新的日志文件,并将老的日志文件做备份。

·logRotate:设置日志文件rotation,可以设置成rename、reopen。rename会在老的日志文件后面加上时间戳,并打开新的日志文件;reopen会关闭原来的日志文件并重新打开它。

相关推荐
一次旅行2 小时前
接口自动化测试模板
数据库·python·pytest
想睡hhh2 小时前
redis的高效工作方式
数据库·redis·缓存
、BeYourself2 小时前
PostgreSQL 安装中文全文检索插件zhparser扩展
数据库·postgresql·全文检索
dishugj2 小时前
【Oracle】Oracle rac1 节点ora.chad offline解决方案
数据库·oracle
木子02042 小时前
oracle里面inner join 和left join 的区别
数据库·oracle
数据库人生2 小时前
Oracle RANGE分区表 HIGH_VALUE 获取
数据库·oracle·dbms_xmlgen·high_value
他们叫我技术总监2 小时前
Oracle 11g 实战进阶:LONG类型字段超长模糊查询终极方案(附表空间GB级监控优化)
数据库·oracle
华章酱2 小时前
MySQL EXPLAIN 完全解读:从执行计划到索引优化
android·数据库·mysql
木子02042 小时前
sql 计算年龄
数据库·sql