Logrotate可以在C语言中使用吗?

问题描述

我是Linux上的新手,我打算使用logrotate,这样我的在无线电文件系统中生成的日志文件不会变得更大,并且不会引起任何内存问题。

但是从下面可以看到,此配置是在Linux中的logrotate.conf文件中设置的,所以我很困惑,想知道是否有可能在我的C文件添加这种东西作为“编码样式”,以便在我的运行Linux系统的收音机。

毕竟,无线电在/etc/logrotate.d路径下没有此logrotate东西。我也无法安装任何logrotate或执行命令“ man logroate”,它告诉您:没有手动输入“ logrotate”。

/var/logs/*.log {
    hourly
    missingok
    rotate 24
    compress
    create
}

是否可以像.C文件中的fclose()或fopen()之类的普通函数一样调用它?

如果可以在C文件中使用,配置参数的正确方法是什么?

解决方法

我认为您误解了logrotate的工作方式:它仅适用于主机上服务/应用程序创建的文件。

例如,在您的linux计算机上,您正在运行邮件服务器postfix(基于您发布的配置):

  1. Postfix服务填充日志文件/var/log/postfix.log
  2. Logrotate每小时花费一小时postfix.log并创建压缩文件postfix.1
  3. 增加现有归档文件的数量
  4. Logrotate保留24个压缩文件(= 1天)

在这种情况下,您必须设置应用程序日志记录以保存日志文件,然后才能对其应用logrotate。

可以找到here

Logrotate手册页

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...