Skip to content

Server Diagnostics Troubleshooting

Peter Bieringer edited this page Jun 6, 2024 · 16 revisions

(work-in-progress, feel free to contribute)

Assumptions

  • the system user is named "radicale"
  • the system user "radicale" owns the the configured storage location

Storage verification

Since 3.0.0 a special command option exists to verify the storage of the collections:

# add optional for watching the progress: --logging-level debug
sudo -u radicale /usr/bin/radicale --verify-storage

It should not report any errors, otherwise particular VCF or ICS files have to be fixed manually.

Storage verification reports: "Invalid item"

Upload reported file to https://icalendar.org/validator.html and run validation.

Storage verification reports: "Invalid collection '$NAME': '$TYPE' must not have child collections

Background: "radicale" do not support a nested storage hierachy.

Solution: check for any folder in which itself is a collection and move it on same level as $NAME. Check also content of related ".Radicale.props" file

Verification of start

Manual start

# including optional for watching the progress: --logging-level debug
# Terminate with CTRL-C to finish test
sudo -u radicale /usr/bin/radicale --logging-level debug

Start by systemd

  • terminal#1 / watch logs: journalctl -f -u radicale
  • terminal#2 / start "radicale" service: systemctl start radicale

Listen Status

Radicale started, it's listen on configured IP/ports

  • config section: [server]
  • config option: hosts

Example:

netstat -nlpt |grep ":5232 "
tcp        0      0 127.0.0.1:5232          0.0.0.0:*               LISTEN      4117/python3        
tcp6       0      0 ::1:5232                :::*                    LISTEN      4117/python3       

Connection tests

Connection test to internal web server (if enabled)

  • config section: [web]
  • config option: type

Example:

curl http://localhost:5232/.web/

Connection test to any existing calendar

Successful result depends on auth and permission

  • config section: [auth]
  • config option: type
  • config section: [rights]
  • config option: type + file

Example:

curl http://localhost:5232/testcalendar/