Как разбить файл "mongod.log" на ежедневную основу? - PullRequest
0 голосов
/ 14 января 2019

Здесь я использую базу данных mongodb для своего приложения для хранения данных. Но журналы, созданные mongodb в папке /var/log/mongodb/logFileName с именем файла mongod.log, имеют очень большой размер. Это не легко читать. Потому что он имеет размер 989 mb. Я искал это и нашел способ сделать это logRotate, и после этого я нашел, как применить это в документации mongodb, есть тема о rotate журнала. Я применил решение, но оно не создаст новый файл и не сохранит старый. Эта ссылка - я следую за этим. Но сегодня я проверяю, что мой файл журнала mongodb пуст, и он будет в последний раз изменен ночью 23:55:01. Но вчера я ничего не буду делать и не работал с приложением.

Второе решение, и я также разместил его на слабом канале mongodb ссылка : -

Я тоже пробовал это решение. Я изменил в моем конфигурационном файле /etc/mongod.conf

systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log
  logRotate: reopen

Я также изменяю в файле /etc/logrotate.d/mongod вставляю некоторые данные вроде

/var/log/mongodb/*.log {
   daily
   rotate 30
   size 50M
   compress
   dateext
   missingok
   notifempty
   sharedscripts
   postrotate
   /bin/kill -SIGUSR1 `cat /var/lib/mongodb/mongod.lock 2> /dev/null` 2> /dev/null || true
  endscript
}

но он не будет создавать журналы ежедневно. Почему?

Теперь, пожалуйста, не могли бы вы сказать мне, как я буду ежедневно разбивать огромный файл на части?

1 Ответ

0 голосов
/ 14 января 2019

Прежде всего, вы указали параметры, такие как dateext, и оставили их пустыми. Сохраняйте вашу конфигурацию простой, сначала сделайте так, чтобы она работала самым простым способом, затем вы можете оптимизировать ее.

Например

/var/log/mongodb/*.log {
   daily
   rotate 50
   size 50M
   postrotate
   /bin/kill -SIGUSR1 `cat /var/lib/mongodb/mongod.lock 2> /dev/null` 2> /dev/null || true
  endscript
}

Обратите внимание, что здесь важен параметр вращения. Мы держим его на высоком уровне, чтобы он не удалял логи после достижения предела вращения.

...