在Debian系统上,做Golang应用的日志轮转其实没那么复杂——logrotate这个老牌工具就能搞定。下面直接上步骤,跟着走就行。

如何设置Debian上Golang日志轮转

  1. 先确认机器上有没有装logrotate,如果没有,两行命令搞定:
sudo apt-get update
sudo apt-get install logrotate
  1. 给Golang应用写一个单独的轮转规则文件。在应用目录里创建一个叫golang-logrotate.conf的文件,把下面这段贴进去,不过记得把路径换成你自己的日志目录:
/path/to/your/golang/app/logs/*.log {
    daily
    rotate 7
    compress
    missingok
    notifempty
    create 0640 root root
}

别看这一堆,解释起来很简单:

  1. 把这个配置文件挂到logrotate的主配置目录下。打开/etc/logrotate.d/golang文件(如果不存在就新建),写入一行:
include /path/to/your/golang/app/golang-logrotate.conf

注意路径要写对,logrotate会读取这个include指向的文件。

  1. 验证配置是否生效,跑一个强制轮转测试:
sudo logrotate -f /etc/logrotate.d/golang

如果没有报错,说明配置没问题。这时候去你的日志目录下看看,应该已经生成了轮转后的压缩文件。

之后的事就不用操心了——logrotate默认会每天自动执行一次,触发机制在/etc/cron.daily/logrotate里。你的Golang应用日志就会按照你设定的策略乖乖轮转,再也不用担心日志文件撑爆磁盘了。

本文转载于:https://www.yisu.com/ask/49662834.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。