我正在运行一个守护进程,它必须无限期地运行(可以说是“服务”)并希望记录其输出。一个简单的解决方案,如:
./long-running-process > log.out &
Run Code Online (Sandbox Code Playgroud)
...作为文件失败log.out
:
emacs
或vi
为了保持日志文件的大小可管理,我可以使用split
bash 命令:
./long-running-process | split -l 30000
Run Code Online (Sandbox Code Playgroud)
此解决方案使它创建的日志文件的大小保持在可管理的范围内,但是它可能会用完后缀 ( split: output file suffixes exhausted
),或者,如果后缀空间很大,它也可能会耗尽文件系统空间。
因此,我正在寻找一种解决方案,该解决方案将生成许多日志文件,每个日志文件的大小都可以管理,并且还将在它们之间轮换,以便对总磁盘空间进行声明。
是否有这样的解决方案可用,或者我必须在应用程序级别实现它吗?