Zum Hauptinhalt springen

Admin-Oberfläche

Die edulution Moodle Admin-Oberfläche bietet eine zentrale Verwaltung für Synchronisation, Plugins, Backups und System-Status.

Zugriff

Die Admin-UI ist unter folgendem Pfad erreichbar:

https://ihre-moodle-url.de/moodle-admin

Authentifizierung

Der Zugang ist passwortgeschützt:

ADMIN_UI_USERNAME=admin
ADMIN_UI_PASSWORD=ihr-sicheres-passwort

:::warning Sicherheit Ändern Sie das Standard-Passwort vor dem ersten Produktivbetrieb! :::

Dashboard

Das Dashboard zeigt eine Übersicht aller wichtigen Systemkomponenten:

System-Status

IndikatorBeschreibung
MoodleStatus des Moodle-Webservers
DatenbankMariaDB-Verbindungsstatus
RedisCache-Verbindungsstatus
SyncStatus des Sync-Services

Schnellaktionen

  • Sync starten: Sofortige Synchronisation auslösen
  • Caches leeren: Alle Moodle-Caches purgen
  • Backup erstellen: Manuelles Backup starten
  • Wartungsmodus: Moodle in Wartung versetzen

Synchronisation

Sync-Status

Zeigt den aktuellen Status der Keycloak-Synchronisation:

  • Letzter Sync: Zeitpunkt des letzten Sync-Laufs
  • Nächster Sync: Geplanter nächster Sync
  • Status: idle, running, error
  • Letzte Ergebnisse: Statistiken des letzten Syncs

Sync-Statistiken

MetrikBeschreibung
Benutzer erstelltNeue Benutzer angelegt
Benutzer aktualisiertBestehende Benutzer geändert
Benutzer deaktiviertAls gelöscht markiert
Gruppen erstelltNeue Kurse erstellt
Einschreibungen hinzugefügtNeue Kurseinschreibungen
Einschreibungen entferntAusschreibungen

Manueller Sync

  1. Klicken Sie auf "Sync jetzt starten"
  2. Wählen Sie den Sync-Typ:
    • Vollständig: Benutzer und Gruppen
    • Nur Benutzer: Nur Benutzerdaten
    • Nur Gruppen: Nur Gruppen/Kurse
  3. Optional: Dry-Run aktivieren (keine Änderungen)
  4. Bestätigen Sie den Vorgang

Sync-Logs

Zeigt die letzten Sync-Ereignisse:

2024-01-15 10:30:00 [INFO] Starting sync...
2024-01-15 10:30:05 [INFO] Fetched 150 users from Keycloak
2024-01-15 10:30:10 [INFO] Created 5 new users
2024-01-15 10:30:15 [INFO] Updated 12 existing users
2024-01-15 10:30:20 [INFO] Sync completed successfully

Plugin-Verwaltung

Plugin-Liste

Zeigt alle konfigurierten und installierten Plugins:

SpalteBeschreibung
NamePlugin-Anzeigename
KomponenteTechnischer Name (z.B. mod_attendance)
StatusInstalled / Missing / Error
VersionInstallierte Version
ErforderlichJa / Nein

Plugin-Aktionen

  • Plugins synchronisieren: Alle Plugins mit Konfiguration abgleichen
  • Force-Sync: Alle Plugins neu installieren
  • Report generieren: Status-Report erstellen

Plugin-Status

StatusFarbeBeschreibung
InstalledGrünPlugin ist installiert
MissingGelbPlugin fehlt, wird bei nächstem Sync installiert
ErrorRotInstallation fehlgeschlagen
Dev-OnlyGrauNur in Development verfügbar

Backup-Management

Backup-Übersicht

Zeigt vorhandene Backups:

SpalteBeschreibung
DatumErstellungszeitpunkt
TypAutomatisch / Manuell
GrößeBackup-Größe
InhaltDB / Data / Beide
StatusErfolgreich / Fehlgeschlagen

Backup erstellen

  1. Klicken Sie auf "Backup erstellen"
  2. Wählen Sie den Backup-Typ:
    • Vollständig: Datenbank + Moodledata
    • Nur Datenbank: Nur MySQL-Dump
    • Nur Dateien: Nur Moodledata
  3. Bestätigen Sie

Backup herunterladen

Klicken Sie auf das Download-Symbol neben einem Backup.

:::note Große Backups Bei großen Backups (>1GB) kann der Download einige Zeit dauern. :::

Backup wiederherstellen

:::danger Achtung Die Wiederherstellung überschreibt alle aktuellen Daten! :::

  1. Wählen Sie ein Backup
  2. Klicken Sie auf "Wiederherstellen"
  3. Bestätigen Sie die Warnung
  4. Warten Sie auf den Abschluss

Benutzer-Verwaltung

Benutzer-Liste

Zeigt synchronisierte Benutzer mit Filter-Optionen:

  • Alle Benutzer
  • Aktive Benutzer
  • Suspendierte Benutzer
  • Zur Löschung markiert

Benutzer-Details

FeldBeschreibung
BenutzernameMoodle-Benutzername
E-MailE-Mail-Adresse
Keycloak-IDVerknüpfte Keycloak-ID
RollenZugewiesene Rollen
KurseEingeschriebene Kurse
StatusAktiv / Suspendiert
Sync-StatusLetzter Sync-Zeitpunkt

Benutzer-Aktionen

  • Passwort zurücksetzen: Setzt das lokale Passwort zurück
  • Suspendieren: Benutzer vorübergehend sperren
  • OAuth2 verknüpfen: Manuelle Keycloak-Verknüpfung

Log-Viewer

Log-Typen

LogBeschreibung
Sync-LogSynchronisations-Ereignisse
Plugin-LogPlugin-Installation/Updates
Error-LogFehler und Warnungen
Access-LogZugriffsprotokolle

Filter

  • Zeitraum: Heute, Letzte 7 Tage, Letzte 30 Tage
  • Level: Debug, Info, Warning, Error
  • Suche: Freitext-Suche

Export

Logs können als JSON oder CSV exportiert werden.

System-Einstellungen

Allgemeine Einstellungen

EinstellungBeschreibung
Site-NameName der Moodle-Instanz
ZeitzoneSystem-Zeitzone
SpracheStandard-Sprache

Sync-Einstellungen

EinstellungBeschreibung
Sync aktiviertAutomatischen Sync an/aus
Sync-IntervallZeit zwischen Syncs
Gruppen-PräfixFilter für Gruppen

Backup-Einstellungen

EinstellungBeschreibung
Auto-BackupAutomatische Backups an/aus
Backup-ZeitTäglicher Backup-Zeitpunkt
AufbewahrungTage bis zur Löschung

API-Endpunkte

Die Admin-UI stellt auch eine REST-API bereit:

Authentifizierung

# Basic Auth
curl -u admin:password https://moodle.de/moodle-admin/api/status

Endpunkte

MethodePfadBeschreibung
GET/api/statusSystem-Status
GET/api/sync/statusSync-Status
POST/api/syncSync starten
GET/api/pluginsPlugin-Liste
POST/api/plugins/syncPlugins synchronisieren
GET/api/backupsBackup-Liste
POST/api/backupsBackup erstellen
GET/api/logsLogs abrufen

Beispiele

# System-Status
curl -u admin:pass https://moodle.de/moodle-admin/api/status

# Sync starten
curl -X POST -u admin:pass https://moodle.de/moodle-admin/api/sync

# Backup erstellen
curl -X POST -u admin:pass \
-H "Content-Type: application/json" \
-d '{"type": "full"}' \
https://moodle.de/moodle-admin/api/backups

Fehlerbehebung

Admin-UI nicht erreichbar

  1. Container prüfen:

    docker compose ps
  2. Logs prüfen:

    docker compose logs moodle | grep -i admin
  3. Port prüfen:

    docker compose exec moodle netstat -tlnp | grep 8081

Login fehlgeschlagen

  1. Credentials prüfen in .env
  2. Container neustarten:
    docker compose restart moodle

API-Fehler

Prüfen Sie die API-Logs:

docker compose logs moodle | grep -i api