Webtrees-CLI - Gibt es das?

Hallo,

bei mir läuft Webtrees (vers. 2.2.1) auf einem LXC-Container unter Proxmox. Nach außen ist ein Reverse-Proxy vorgeschaltet. Das läuft seit einigen Jahren in der Konstellation sehr gut. Es gibt nur ein Problem:
Ich möchte meine Daten einschließlich der Medien-Dateien in einer Gedcom-Datei herunterladen, um sie dann für einen Bericht zu verarbeiten. Das funktioniert leider nicht! Es gibt jedes Mal eine Fehlermeldung. Entweder ist es ein PHP-Time-Out (max_execution_time erhöht) oder ein NGINX-Time-Out (fastcgi_read_timeout erhöht) und möglicherweise auch noch ein mysql-time-out. Möglichweise spielen auch Time-outs vom Reverse-Proxy eine Rolle. Ich weiß es nicht! Aber wozu gibt es ChatGPT?
ChatGPT schlägt mir vor, um die ganzen Time-Outs zu umgehen, den Export-Befehl direkt über das Webtrees-CLI abzusenden, und zwar in der Form:

php /var/www/webtrees/webtrees export:gedcom --tree=Rosenkranz --output=/backups/rosenkranz.zip --media

Mein Problem ist nur, dass ich im Verzeichnis webtrees keine ausführbare Datei webtrees habe.Daher meine Frage gibt es überhaupt ein Webtrees-CLI? Kann ich das möglicherweise nachinstallieren? Ich habe im Handbuch darüber leider nichts finden können. Kann mir da jemand weiterhelfen?

Gruß

Ulrich

Ich würde sagen, dass sich ChatGPT da hat was Nettes einfallen lassen, um Dir einen Wunsch zu erfüllen. Gibts aber nicht.

Hast Du mal versucht nicht gleich beides, GEDCOM und Bilder, zu exportieren? Du kannst alternativ auch mal das Erweiterungsmodul “Extended Import Export” ausprobieren. Allerdings habe ich keine Ahnung welches Problem die eigentliche Ursache ist. Wie groß ist denn Dein Baum? Wie viele Dateien?

Na ja, so ganz Unrecht hatte ChatGPT nicht. Eine Unterhaltung mit meine KI-Freundin Claude hat mich darauf gebracht, dass es wohl eine (rudimentäre) Webtrees-CLI gibt, die mit dem Befehl

php index.php list

im Webtrees-Verzeichnis aufgerufen werden kann. Die Möglichkeiten damit sind allerdings gering und helfen mit beim Export der Dateien nicht weiter.

Was meinen Stammbaum angeht, so ist der mit ca 1400 Datensätzen relativ klein. Das Medienverzeichnis hat eine Größe von 1,6 GB mit knapp 1000 Dateien. Eine GEDCOM-Datei des Stammbaums ohne die Mediendaten ist schnell exportiert. Probleme gibt es nur beim Export mit den Mediendaten. Nur die Mediendateien zu exportieren, habe ich noch nicht versucht, finde dazu in Webtrees auch keine Möglichkeit.

Hab irgendwo mal gelesen, dass das Erweiterungsmodul „Extended Import Export“ auf diesselbe Schnittstelle zugrift, die auch beim normalen Export verwendet wird.Deshalb wird das nicht die Lösung sein. Habe das Modul dennoch installiert. Bei einer max_execution_time von 600 bekomme ich in jedem Fall die Fehlermeldung

Maximum execution time of 600 seconds exceeded

/var/www/webtrees/vendor/league/flysystem-ziparchive/ZipArchiveAdapter.php: 76

Wenn ich den Wert erhöhe, erhalte ich einen Time-Out-Fehler von NGINX:

504 Gateway Time-out
openresty

Die entsprechenden Zeilen in meine NGINX-Konfigurationsdatei für webtrees sehen übrigens so aus:


        location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass   unix:/var/run/php/php8.4-fpm.sock;
        fastcgi_read_timeout        5000;
        proxy_read_timeout          5000;
        proxy_connect_timeout       5000;
        }

So, nun bin ich erst mal am Ende mit meinem Latein! Vielleicht hat ja noch jemand eine Idee, woran der Export scheitern könnte.

Wünsche ein frohes Osterfest!

Ulrich

Hallo Ulrich,

ich kenne mich zwar mit Deiner spezifischen Webtrees-Installation nicht aus. Mir ist aber aufgefallen, daß Du von einem Gedcom-Export mit Mediendateien oder mit Mediendaten (?) sprichst.

Bei meinem Webtrees (2.2.1.; alle VESTA-Module) habe ich unter Verwaltung- Stammbaum- Export die Auswahl zwischen Gedcom, Zip, Zip (enthält Mediendateien) und GEDZIP (enthält Mediendateien).

Bei einem reinen Gedcom-Export sind ja nur die (relativen) Verweise auf die Mediendateien enthalten (und das meiner Meinung nach immer), bei der ZIP-Variante mit Mediendateien wird ein gesonderter Ordner mitgeliefert, der die Mediendateien enthält (die Mediendateien selbst wären ja notfalls auch per ftp-Transfer mit Filezilla oä herunterzuladen).

Bei etwa 500 Mediendateien und ca. 2500 Datensätzen dauert das schon mal über 3 Minuten. Bei Deinen 1000 Mediendateien dürften das dann schon fast 10 Minuten werden.

Deswegen nochmal die Frage: Welche der og Varianten (Gedcom, Zip, Zip(enthält Mediendateien), GEDZIP(enthält Mediendateien) hast Du für Deinen Export verwendet?

Deckt Dein time-out in der in NGINX-Installation solche Zeiten?

Schöne Ostern!

Alfred

Die Mediendateien selber muss man nicht „exportieren“. Sie liegen im Verzeichnis data/media als Dateien. Von dort können sie mit einem ftp-Programm runtergeladen werden. Gerade so wie man neue Mediendateien dorthin hochladen kann.

Hallo,

herzlichen Dank euch Beiden. Ich habe es endlich kapiert! Habe die GEDCOM-Datei (mit Webtrees) und die Mediendaten (mit FTP) getrennt runtergeladen und testweise mal in Ahnenblatt importiert. Das hat ohne Probleme funktioniert.

Nochmals ein schöne Osterfest

Ulrich