Logrotate可以在C中使用吗?

Logrotate可以在C中使用吗?,c,linux,logging,logrotate,C,Linux,Logging,Logrotate,我是linux的新手,我计划使用logrotate,这样我在无线电文件系统中生成的日志文件就不会变大并导致内存问题 但从下面可以看到,这个配置是在linux中的logrotate.conf文件中设置的,然后我感到困惑,想知道是否可以在我的C文件中添加这个东西作为“编码风格”,以便它在运行linux系统的收音机上工作 毕竟,收音机在/etc/logrotate.d路径下没有logrotate这个东西。我也无法安装任何logrotate或执行命令“man logroate”,它告诉我:没有手动输入“

我是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机器上,您正在运行邮件服务器后缀(基于您发布的配置):

  • 后缀服务填充日志文件/var/log/Postfix.log
  • Logrotate每小时读取一次postfix.log并创建压缩文件postfix.1
  • 已存在存档文件的增量数量
  • Logrotate保留24个压缩文件(=1天)
  • 在这种情况下,必须设置应用程序日志以保存日志文件,然后才能对其应用logrotate


    可以找到Logrotate手册页

    我认为您误解了Logrotate的工作原理:它只适用于主机上服务/应用程序创建的文件

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

  • 后缀服务填充日志文件/var/log/Postfix.log
  • Logrotate每小时读取一次postfix.log并创建压缩文件postfix.1
  • 已存在存档文件的增量数量
  • Logrotate保留24个压缩文件(=1天)
  • 在这种情况下,必须设置应用程序日志以保存日志文件,然后才能对其应用logrotate


    Logrotate手册页可以找到

    Logrotate是一个单独的程序,它为不旋转自己日志的程序旋转日志。你必须使用logrotate还是想知道如何让你的程序旋转它自己的日志?@user253751 ya我想知道如何让我的程序旋转它自己的日志。我发现这个logrotate的函数正是我想要的,这就是为什么我问如何实现他的logrotate,但在我的C文件中似乎没有帮助当你认为日志文件太大或太旧时,你关闭日志文件,然后打开一个新的。您还可以使用
    rename
    重命名文件。Logrotate是一个单独的程序,它为不旋转自己日志的程序旋转日志。你必须使用logrotate还是想知道如何让你的程序旋转它自己的日志?@user253751 ya我想知道如何让我的程序旋转它自己的日志。我发现这个logrotate的函数正是我想要的,这就是为什么我问如何实现他的logrotate,但在我的C文件中似乎没有帮助当你认为日志文件太大或太旧时,你关闭日志文件,然后打开一个新的。您还可以使用
    重命名
    重命名文件。