From 3e2ee30334a5166138a4fd262f7a56f57f2417ad Mon Sep 17 00:00:00 2001 From: Greg Karekinian Date: Wed, 21 May 2025 11:24:15 +0200 Subject: [PATCH] Configure maximum size and timespan of journald logs Closes #506 --- site-cookbooks/kosmos-base/recipes/default.rb | 1 + .../kosmos-base/recipes/journald_conf.rb | 17 +++++++++++++++++ .../templates/default/journald.conf.erb | 6 ++++++ 3 files changed, 24 insertions(+) create mode 100644 site-cookbooks/kosmos-base/recipes/journald_conf.rb create mode 100644 site-cookbooks/kosmos-base/templates/default/journald.conf.erb diff --git a/site-cookbooks/kosmos-base/recipes/default.rb b/site-cookbooks/kosmos-base/recipes/default.rb index d5df463..0033a24 100644 --- a/site-cookbooks/kosmos-base/recipes/default.rb +++ b/site-cookbooks/kosmos-base/recipes/default.rb @@ -27,6 +27,7 @@ include_recipe 'apt' include_recipe 'timezone_iii' include_recipe 'ntp' +include_recipe 'kosmos-base::journald_conf' include_recipe 'kosmos-base::systemd_emails' node.override["apt"]["unattended_upgrades"]["allowed_origins"] = [ diff --git a/site-cookbooks/kosmos-base/recipes/journald_conf.rb b/site-cookbooks/kosmos-base/recipes/journald_conf.rb new file mode 100644 index 0000000..56ad111 --- /dev/null +++ b/site-cookbooks/kosmos-base/recipes/journald_conf.rb @@ -0,0 +1,17 @@ +# +# Cookbook Name:: kosmos-base +# Recipe:: journald_conf +# + +template "/etc/systemd/journald.conf" do + source "journald.conf.erb" + variables system_max_use: "256M", + max_retention_sec: "7d" + # Restarting journald is required + notifies :run, "execute[systemctl restart systemd-journald.service]", :delayed +end + +execute "systemctl restart systemd-journald.service" do + command "systemctl restart systemd-journald.service" + action :nothing +end diff --git a/site-cookbooks/kosmos-base/templates/default/journald.conf.erb b/site-cookbooks/kosmos-base/templates/default/journald.conf.erb new file mode 100644 index 0000000..d39e2d2 --- /dev/null +++ b/site-cookbooks/kosmos-base/templates/default/journald.conf.erb @@ -0,0 +1,6 @@ +[Journal] +# Set the maximum size of the journal logs in bytes +SystemMaxUse=<%= @system_max_use %> + +# Set the number of days after which logs will be deleted +MaxRetentionSec=<%= @max_retention_sec %>