From f66344ed81c47df6cf4606469b8f4c5732f4b9db Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 4 May 2023 21:30:12 +0300 Subject: services: earlyoom: Rotate log files. * gnu/services/linux.scm (%earlyoom-log-rotation): New variable. (earlyoom-service-type): Add service-extension for log rotation. --- gnu/services/linux.scm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'gnu/services') diff --git a/gnu/services/linux.scm b/gnu/services/linux.scm index 4f28044112..d105c42850 100644 --- a/gnu/services/linux.scm +++ b/gnu/services/linux.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2020 Maxim Cournoyer ;;; Copyright © 2020 Brice Waegeneire -;;; Copyright © 2020 Efraim Flashner +;;; Copyright © 2020, 2023 Efraim Flashner ;;; Copyright © 2021 raid5atemyhomework ;;; Copyright © 2021 B. Wilson ;;; Copyright © 2022 Josselin Poiret @@ -30,6 +30,7 @@ #:use-module (guix i18n) #:use-module (guix ui) #:use-module (gnu services) + #:use-module (gnu services admin) #:use-module (gnu services base) #:use-module (gnu services configuration) #:use-module (gnu services mcron) @@ -155,13 +156,19 @@ representation." #:log-file "/var/log/earlyoom.log")) (stop #~(make-kill-destructor)))) +(define %earlyoom-log-rotation + (list (log-rotation + (files '("/var/log/earlyoom.log"))))) + (define earlyoom-service-type (service-type (name 'earlyoom) (default-value (earlyoom-configuration)) (extensions (list (service-extension shepherd-root-service-type - (compose list earlyoom-shepherd-service)))) + (compose list earlyoom-shepherd-service)) + (service-extension rottlog-service-type + (const %earlyoom-log-rotation)))) (description "Run @command{earlyoom}, the Early OOM daemon."))) -- cgit v1.2.3