adjust logging for v15 changes

This commit is contained in:
trendless
2026-06-15 18:39:50 -06:00
parent 4f74409542
commit efee1e5c05
8 changed files with 49 additions and 37 deletions
+1
View File
@@ -0,0 +1 @@
0,15,30,45 0 * * * ln -sf $(ls -t /var/log/__APP__/dns/*.log | head -n 1) /var/log/__APP__/__APP__.log
+1 -1
View File
@@ -9,10 +9,10 @@ Group=__APP__
WorkingDirectory=__INSTALL_DIR__/sources/ WorkingDirectory=__INSTALL_DIR__/sources/
ExecStart=__INSTALL_DIR__/dotnet/dotnet __INSTALL_DIR__/sources/DnsServerApp.dll __DATA_DIR__ ExecStart=__INSTALL_DIR__/dotnet/dotnet __INSTALL_DIR__/sources/DnsServerApp.dll __DATA_DIR__
Restart=always Restart=always
# Restart service after 10 seconds if the dotnet service crashes:
RestartSec=10 RestartSec=10
KillSignal=SIGINT KillSignal=SIGINT
SyslogIdentifier=dns-server SyslogIdentifier=dns-server
Environment=DNS_SERVER_LOG_FOLDER_PATH=/var/log/__APP__/dns
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target
+1 -7
View File
@@ -11,30 +11,24 @@ ynh_print_info "Declaring files to be backed up..."
#================================================= #=================================================
# BACKUP THE APP MAIN DIR # BACKUP THE APP MAIN DIR
#================================================= #=================================================
ynh_backup "$install_dir" ynh_backup "$install_dir"
#================================================= #=================================================
# BACKUP THE DATA DIR # BACKUP THE DATA DIR
#================================================= #=================================================
ynh_backup "$data_dir" ynh_backup "$data_dir"
#================================================= #=================================================
# SYSTEM CONFIGURATION # SYSTEM CONFIGURATION
#================================================= #=================================================
ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf"
ynh_backup "/etc/logrotate.d/$app"
ynh_backup "/etc/systemd/system/$app.service" ynh_backup "/etc/systemd/system/$app.service"
#================================================= #=================================================
# BACKUP VARIOUS FILES # BACKUP VARIOUS FILES
#================================================= #=================================================
ynh_backup "/var/log/$app"
ynh_backup "/var/log/technitium/"
#================================================= #=================================================
# END OF SCRIPT # END OF SCRIPT
+2 -2
View File
@@ -11,7 +11,7 @@ source /usr/share/yunohost/helpers
#================================================= #=================================================
ynh_script_progression "Stopping $app's systemd service..." ynh_script_progression "Stopping $app's systemd service..."
ynh_systemctl --service="$app" --action="stop" --wait_until="was stopped successfully" ynh_systemctl --service="$app" --action="stop" --log_path=systemd --wait_until="was stopped successfully"
#================================================= #=================================================
# MODIFY URL IN NGINX CONF # MODIFY URL IN NGINX CONF
@@ -25,7 +25,7 @@ ynh_config_change_url_nginx
#================================================= #=================================================
ynh_script_progression "Starting $app's systemd service..." ynh_script_progression "Starting $app's systemd service..."
ynh_systemctl --service="$app" --action="start" --wait_until="in web browser to access web console." ynh_systemctl --service="$app" --action="start" --log_path=systemd --wait_until="was started successfully"
#================================================= #=================================================
# END OF SCRIPT # END OF SCRIPT
+16 -8
View File
@@ -11,7 +11,6 @@ source /usr/share/yunohost/helpers
#================================================= #=================================================
ynh_script_progression "Setting up source files..." ynh_script_progression "Setting up source files..."
# Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --source_id="prebuilt" --dest_dir="$install_dir/sources" ynh_setup_source --source_id="prebuilt" --dest_dir="$install_dir/sources"
ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet" ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet"
@@ -20,23 +19,32 @@ ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet"
#================================================= #=================================================
ynh_script_progression "Adding system configurations related to $app..." ynh_script_progression "Adding system configurations related to $app..."
# Create a dedicated NGINX config
ynh_config_add_nginx ynh_config_add_nginx
# Create a dedicated systemd config
ynh_config_add_systemd ynh_config_add_systemd
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/technitium/$app.log" --needs_exposed_ports="53"
# Use logrotate to manage application logfile(s) mkdir -p "/var/log/$app/dns"
ynh_config_add_logrotate /var/log/technitium/dns chown -R "$app:$app" "/var/log/$app"
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/$app/$app.log" --needs_exposed_ports="53"
#=================================================
# ADD A CRON JOB
#=================================================
ynh_config_add --template="logsymlink.cron" --destination="/etc/cron.d/$app"
chmod 644 "/etc/cron.d/$app"
#================================================= #=================================================
# START SYSTEMD SERVICE # START SYSTEMD SERVICE
#================================================= #=================================================
ynh_script_progression "Starting $app's systemd service..." ynh_script_progression "Starting $app's systemd service..."
# Start a systemd service ynh_systemctl --service="$app" --action="restart" --log_path=systemd --wait_until="was started successfully"
ynh_systemctl --service="$app" --action="start" --wait_until="^.*in web browser to access web console\\.$"
#=================================================
# LINK LOGS
#=================================================
ln -sf $(ls -t /var/log/$app/dns/*.log | head -n 1) /var/log/$app/$app.log
#================================================= #=================================================
# END OF SCRIPT # END OF SCRIPT
+3 -6
View File
@@ -16,16 +16,13 @@ if ynh_hide_warnings yunohost service status "$app" >/dev/null; then
yunohost service remove "$app" yunohost service remove "$app"
fi fi
# Remove the dedicated systemd config
ynh_config_remove_systemd ynh_config_remove_systemd
# Remove the app-specific logrotate config
ynh_config_remove_logrotate
# Remove the dedicated NGINX config
ynh_config_remove_nginx ynh_config_remove_nginx
# Remove the log files ynh_safe_rm "/var/log/$app"
ynh_safe_rm "/etc/cron.d/$app"
#================================================= #=================================================
# END OF SCRIPT # END OF SCRIPT
+9 -5
View File
@@ -27,20 +27,24 @@ ynh_script_progression "Restoring system configurations related to $app..."
ynh_restore "/etc/nginx/conf.d/$domain.d/$app.conf" ynh_restore "/etc/nginx/conf.d/$domain.d/$app.conf"
ynh_restore "/var/log/$app"
ynh_restore "/etc/systemd/system/$app.service" ynh_restore "/etc/systemd/system/$app.service"
systemctl enable "$app.service" --quiet systemctl enable "$app.service" --quiet
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/technitium/$app.log" --needs_exposed_ports=53 yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/$app/$app.log" --needs_exposed_ports=53
ynh_restore "/etc/logrotate.d/$app" #=================================================
mkdir -p /var/log/technitium/dns # ADD A CRON JOB
chown -R $app:$app /var/log/technitium #=================================================
ynh_config_add --template="logsymlink.cron" --destination="/etc/cron.d/$app"
chmod 644 "/etc/cron.d/$app"
#================================================= #=================================================
# START SYSTEMD SERVICE # START SYSTEMD SERVICE
#================================================= #=================================================
ynh_script_progression "Starting $app's systemd service..." ynh_script_progression "Starting $app's systemd service..."
ynh_systemctl --service="$app" --action="start" --wait_until="in web browser to access web console." ynh_systemctl --service="$app" --action="start" --log_path=systemd --wait_until="was started successfully"
#================================================= #=================================================
# RELOAD NGINX # RELOAD NGINX
+16 -8
View File
@@ -11,7 +11,7 @@ source /usr/share/yunohost/helpers
#================================================= #=================================================
ynh_script_progression "Stopping $app's systemd service..." ynh_script_progression "Stopping $app's systemd service..."
ynh_systemctl --service=$app --action="stop" --wait_until="was stopped successfully" ynh_systemctl --service="$app" --action="stop" --log_path=systemd --wait_until="was stopped successfully"
#================================================= #=================================================
# ENSURE DOWNWARD COMPATIBILITY # ENSURE DOWNWARD COMPATIBILITY
@@ -24,12 +24,19 @@ if [ ! -d "$install_dir/dotnet" ]; then
ynh_safe_rm "/usr/bin/dotnet" ynh_safe_rm "/usr/bin/dotnet"
fi fi
if ynh_app_upgrading_from_version_before_or_equal_to 14.3.0~ynh1; then
mkdir -p "/var/log/$app"
mv "$data_dir/logs" "/var/log/$app/dns"
chown -R "$app:$app" "/var/log/$app"
ln -sf "/var/log/$app/dns" "$data_dir/logs"
ln -sf $(ls -t /var/log/$app/dns/*.log | head -n 1) /var/log/$app/$app.log
fi
#================================================= #=================================================
# DOWNLOAD, CHECK AND UNPACK SOURCE # DOWNLOAD, CHECK AND UNPACK SOURCE
#================================================= #=================================================
ynh_script_progression "Upgrading source files..." ynh_script_progression "Upgrading source files..."
# Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --source_id="prebuilt" --dest_dir="$install_dir/sources" --full_replace ynh_setup_source --source_id="prebuilt" --dest_dir="$install_dir/sources" --full_replace
ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet" --full_replace ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet" --full_replace
@@ -38,22 +45,23 @@ ynh_setup_source --source_id="dotnet" --dest_dir="$install_dir/dotnet" --full_re
#================================================= #=================================================
ynh_script_progression "Upgrading system configurations related to $app..." ynh_script_progression "Upgrading system configurations related to $app..."
# Create a dedicated NGINX config
ynh_config_add_nginx ynh_config_add_nginx
# Create a dedicated systemd config
ynh_config_add_systemd ynh_config_add_systemd
yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/technitium/$app.log" --needs_exposed_ports=53 yunohost service add "$app" --description="Technitium DNS Server" --log="/var/log/$app/$app.log" --needs_exposed_ports=53
# Use logrotate to manage app-specific logfile(s) #=================================================
ynh_config_add_logrotate /var/log/technitium/dns # ADD A CRON JOB
#=================================================
ynh_config_add --template="logsymlink.cron" --destination="/etc/cron.d/$app"
chmod 644 "/etc/cron.d/$app"
#================================================= #=================================================
# START SYSTEMD SERVICE # START SYSTEMD SERVICE
#================================================= #=================================================
ynh_script_progression "Starting $app's systemd service..." ynh_script_progression "Starting $app's systemd service..."
ynh_systemctl --service="$app" --action="start" --wait_until="in web browser to access web console." ynh_systemctl --service="$app" --action="start" --log_path=systemd --wait_until="was started successfully"
#================================================= #=================================================
# END OF SCRIPT # END OF SCRIPT