centos

MongoDB日志管理在CentOS上怎么做

小樊
39
2025-08-14 15:29:52
栏目: 云计算

在CentOS上进行MongoDB日志管理,主要包括配置、轮转、清理及监控等操作,具体如下:

  1. 配置日志路径与级别

    • 编辑配置文件 /etc/mongod.conf,在 systemLog 部分设置:
      systemLog:  
        destination: file  
        path: /var/log/mongodb/mongod.log  # 日志路径,可自定义  
        logAppend: true  # 追加日志(避免重启覆盖)  
        verbosity: 2  # 日志级别(0-5,2为默认,记录关键信息)  
      
    • 重启服务生效:sudo systemctl restart mongod
  2. 日志轮转(自动切割)

    • 使用 logrotate 工具,创建配置文件 /etc/logrotate.d/mongodb
      /var/log/mongodb/mongod.log {  
        daily  
        rotate 7  
        compress  
        missingok  
        notifempty  
        copytruncate  # 避免重启服务  
        postrotate  
          kill -SIGUSR1 $(cat /var/run/mongodb.pid)  # 通知MongoDB重新打开日志文件  
        endscript  
      }  
      
    • 启用并测试:sudo chmod 644 /etc/logrotate.d/mongodbsudo logrotate -d /etc/logrotate.d/mongodb
  3. 手动清理旧日志

    • 使用命令删除指定天数前的日志(如30天):
      find /var/log/mongodb/ -name "mongod.log.*" -mtime +30 -delete
    • 或通过脚本归档日志(示例):
      #!/bin/bash  
      LOG_DIR="/var/log/mongodb"  
      ARCHIVE_DIR="/var/log/mongodb/archive"  
      mkdir -p $ARCHIVE_DIR  
      mv $LOG_DIR/mongod.log* $ARCHIVE_DIR/  
      sudo chown -R mongodb:mongodb $ARCHIVE_DIR  
      
  4. 监控与分析

    • 实时查看日志:tail -f /var/log/mongodb/mongod.log
    • 集中管理:可搭配ELK Stack(Elasticsearch+Logstash+Kibana)或Graylog进行日志分析。

说明

0
看了该问题的人还看了