gpt4 book ai didi

linux - logrotate 会删除 .gz 文件吗?也就是说,带 * 路径的 logrotate 是否会旋转现有的 .gz 文件?

转载 作者:行者123 更新时间:2023-11-28 23:57:16 29 4
gpt4 key购买 nike

//, 这个问题有点模棱两可。

场景如下:

我有以下三个扩展名的日志,但我当前的规则仅适用于 *.log 文件:

.1
.log
.txt

另外,因为 Tomcat 正在轮换日志,所以我有以下内容:

.gz

我想旋转所有这些文件,但我不想以任何 .gz.gz 文件结束。我该怎么做?

Tomcat 的 Logrotate 规则

目前,我对 Tomcat 日志有以下规则:

% sudo cat /etc/logrotate.d/tomcat
# THIS FILE IS AUTOMATICALLY DISTRIBUTED BY PUPPET. ANY CHANGES WILL BE
# OVERWRITTEN.

/opt/apache-tomcat_1/logs/*.log {
compress
daily
delaycompress
maxage 60
maxsize 500M
minsize 1k
rotate 20
size 100k
}

为了尝试解决这个问题,我可以将 /opt/apache-tomcat_1/logs/*.log 路径更改为类似 /opt/apache-tomcat_1/logs/*,但我想知道这是否会以与 .log.txt 相同的方式重新压缩或处理 .gz 文件> 文件。

logrotate 是否有某种方法知道如何单独保留现有的 .gz 文件?

其他文件

上次 /etc/cron.daily/logrotate 获得更新是在大约 12 天前:

% sudo ls -lanh /etc/cron.daily/logrotate
-r-xr-xr-x 1 0 0 313 Jun 29 21:48 /etc/cron.daily/logrotate

其内容如下:

#!/bin/sh
# THIS FILE IS AUTOMATICALLY DISTRIBUTED BY PUPPET. ANY CHANGES WILL BE
# OVERWRITTEN.

OUTPUT=$(/usr/sbin/logrotate /etc/logrotate.conf 2>&1)
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
echo "${OUTPUT}"
fi
exit $EXITVALUE

并且,如果它是相关的:

% cat /etc/logrotate.conf
# THIS FILE IS AUTOMATICALLY DISTRIBUTED BY PUPPET.
# ANY CHANGES WILL BE OVERWRITTEN.

create
weekly
rotate 4

# configurable file rotations
include /etc/logrotate.d

我做了一个quick search online为此,found some results . askubuntu.com 的答案最接近,但我仍然不确定 logrotate 是否会“旋转”由其他服务(如 Tomcat)创建的 .gz 文件。

当在 logrotate 路径中使用 * globbing 时,这些结果中没有任何内容可以回答有关由其他服务(例如 Tomcat)创建的预先存在的 .gz 文件的特定问题。

现在我只是用多个路径/规则来解决这个问题:https://v.gd/yNfAAu

但是我很好奇。什么脚本行为智能地使 logrotate 忽略现有的 .gz 文件,或者以不同的方式处理它们,同时仍然删除足够旧或足够大的文件? Logrotate 是否已经有办法做到这一点?

最佳答案

来自“man logrotate”

您可以使用变量“tabooext”来指定您希望 logrotate 忽略的文件扩展名。

关于linux - logrotate 会删除 .gz 文件吗?也就是说,带 * 路径的 logrotate 是否会旋转现有的 .gz 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45020654/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com