AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 694935
Accepted
Pikk
Pikk
Asked: 2015-05-29 00:56:46 +0800 CST2015-05-29 00:56:46 +0800 CST 2015-05-29 00:56:46 +0800 CST

Logrotate - 如何更改它以使其永远不会删除日志并每 6 个月创建一个 .gz?

  • 772

我读了man logrotate,但我仍然不清楚。我的问题主要与 NGINX 网络服务器日志有关。

这是我当前的 logrotate.conf:

# rotate log files weekly
weekly

# keep 4 weeks worth of backlogs
rotate 4

# create new (empty) log files after rotating old ones
create

# use date as a suffix of the rotated file
dateext

# uncomment this if you want your log files compressed
#compress

# RPM packages drop log rotation information into this directory
include /etc/logrotate.d

# no packages own wtmp and btmp -- we'll rotate them here
/var/log/wtmp {
    monthly
    create 0664 root utmp
        minsize 1M
    rotate 1
}

/var/log/btmp {
    missingok
    monthly
    create 0600 root utmp
    rotate 1
}

在 /etc/logrotate.d 中,我还有:nginx:

/var/log/nginx/*log {
    create 0644 nginx nginx
    daily
    rotate 10
    missingok
    notifempty
    compress
    sharedscripts
    postrotate
        /bin/kill -USR1 `cat /run/nginx.pid 2>/dev/null` 2>/dev/null || true
    endscript
}

这些是我可以看到的一些.gz:

access.log-20150430.gz
access.log-20150509.gz (created after ~10 days)
access.log-20150524.gz (created after ~15 days)
access.log-20150528.gz (created after ~4 days)
  1. 为什么 .gz 日志如此频繁地在如此“随机”的时间范围内创建?
  2. 为了每 6 个月和/或在 .log 文件大于 100MB 之后创建新的 .gz,我应该更改什么?
  3. 旋转 10是否意味着如果我已经有 10 个 .gz 文件,那么当它压缩第 11 个时,它会自动删除最旧的 .gz 文件?如果是,我怎样才能避免删除日志文件?我必须保留它们,即使它们已经很老了。
  4. daily和rotate 10和有什么不一样?
  5. 这些文件的创建权限可以吗?
  6. 在我更改 logrotate.conf 上的某些内容后,我应该重新启动某些服务,还是应该立即应用更改?
nginx
  • 1 1 个回答
  • 2246 Views

1 个回答

  • Voted
  1. Best Answer
    Khaled
    2015-05-29T01:37:42+08:002015-05-29T01:37:42+08:00

    我认为 logrotate 手册对您的大部分观点都很清楚。以下是我的回答:

    1. 使用daily会导致每天发生日志轮换。因此,您需要检查为什么它没有每天发生。例如,notifempty如果日志文件空了几天,这可能是由其他选项引起的。
    2. 我找不到每 6 个月执行一次的选项,但您有monthly和yearly. 对于尺寸设置,您可以使用size 100M.
    3. 是的。要保留它们,您可以选择一个非常大的值。
    4. daily指定轮换的频率,同时rotate指定保留的日志文件数。
    5. 如果日志不包含敏感信息(其他人可以阅读),应该没问题。
    6. 不,你不需要重新启动任何东西。
    • 3

相关问题

  • Gzip 与反向代理缓存

  • nginx 作为代理的行为

  • Nginx 学习资源 [关闭]

  • 提供 70,000 个静态文件 (jpg) 的最佳方式?

  • 在 Apache、LightTPD 和 Nginx Web 服务器上提供 PHP 5.x 应用程序的现状?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve