in reply to Hiker

Das Problem hatte ich vor zwei Wochen auch plötzlich, siehe hier.
Kurzfristige "Lösung": von PHP 7.4 auf PHP 7.3 switchen. Da aber 7.3 meines Wissens nicht mehr supportet wird, keine wirkliche Lösung.
Andere "Lösung": hinten an den cron-Job "> /dev/null 2>&1" anhängen, das sendet alle Fehlermeldungen ins Nirvana. Besser als alle paar Minuten eine Mail zu bekommen, aber Du erfährst nichts mehr von Fehlern, die evt wirklich etwas bedeuten.
This entry was edited (3 years ago)
in reply to Hiker

@Hiker ist das eine bestehende Installation oder eine neue? Mit welcher Quelle hast du die Installation durchgeführt? Per GIT oder per stable Archiv unter files.friendi.ca/friendica-ful… ? Hast du manuell installiert oder automatisch? Sind irgendwelche Addons aktiv?

Der Fehler kann aus meiner Sicht nur auftreten, wenn die Datenbank "frisch" initialisiert wird bei einer Durchführung (= Start des Cronjobs) und er dabei vorher nicht die NullLogger Instanz erzeugt hat .. Aber mir ist derzeit schleierhaft, wie diese Situation überhaupt enststehen kann, da Dice genau das verhindern sollte.

Unknown parent

friendica - Link to source

Schaf (fka Bionk)

@Paulo da Silva Vollkommen klar, das es keine Lösung ist, daher die "..". Aber es verschafft etwas Ruhe für weitere Nachforschungen.
Hier den Link noch einmal ohne redir, dann sollte er lesbar sein. Er zeigt auf eine ähnliche Fehlerbeschreibung von mir samt dem PHP-Hinweis. Zwei Wochen alt, da gab es keine weiteren Diskussionen.
Ich wollte nur auf das mehrfache "spontane" Auftreten de Fehlers hinweisen und einen mutmaßlichen Zusammenhang mit der PHP-Version herstellen, denn er trat meines Wissens nach einem Update auf PHP 7.4.27 beim Hoster auf.
Nun steht die nächste Friendica stable an, ich werde also updaten und dann auf PHP 7.4 zurück switchen und wenn der Fehler dann immer noch Auftritt, dann lohnt sich eine eingehendere Untersuchung.
Unknown parent

friendica - Link to source

Schaf (fka Bionk)

Ich habe habe/dev/nul selbst aus diesen Gründen auch nicht gesetzt. Es hilft halt akut, wenn alle paar Minuten eine Mail kommt.
Verständnisfrage: beim Betrieb als Daemon müssten doch die gleichen Fehlermeldungen ausgeworfen werden. Kommen die Mails durch den Aufruf via cron und ich finde die Fehler sonst nur im log?
Unknown parent

friendica - Link to source

Philipp Holzer

@Roland Häder das ist das Archiv, mit dem ich auch das Dockerfile befülle & strukturell identisch auch mit den laufenden DEV-Snapshots, die ich bei opensocial.at als auch bei friendica.philipp.info verwende.

Hab auch eben das stable nochmal ausgecheckt und per composer erneut installiert --> ich bekomme keinen Fehler 😕

@Hiker interessant wäre, ob du mit dem neuesten 2021.12-rc Archiv noch immer diese Probleme hast, weil der Release Candidat ist kurz vor der Release.

in reply to Hiker

Bin gerade dabei. Vor zwei Minuten (19:30 Uhr) ist der erste /bin/worker.php nach dem Update gelaufen und es sieht soweit gut aus.
Ich bin noch auf PHP 7.3 und es kam keine Mail vom CronJob.
Mit "uberspace tools version use php 7.3" solltest Du auch auf diese Version switchen können und bräuchtest dann /dev/null nicht.
Ich probiere gleich mal die PHP 7.4 und melde mich dann noch einmal.
in reply to Schaf (fka Bionk)

Update auf 2022.02 erfolgreich durchgeführt, das Datenbankupdate auf 1449 ist inzwischen auch durch.
Ich arbeite mit den Archiven und ohne git.

@Michael Vogel Autsch, beim testweise Umschalten auf PHP 7.4 kommt nun ein 500 Internal Server Error 🙁

Nach dem Zurücksetzen auf PHP 7.3 funktioniert alles wieder wie es soll.

@Hiker Versuche es mal mit
"uberspace tools version use php 7.3"

in reply to Hiker

Das ist total seltsam. Grob gesagt:

  • Friendica kann keine Instanz für \Psr\Log\NullLogger erstellen
  • Darum nimmt es die LoggerFactory
  • Aber die LoggerFactory kann erst aufgerufen werden, wenn die Datenbank da ist --> darum auch initial der NullLogger


Kannst du mal schauen, ob du die Datei findest mit PHP 7.4:
vendor/psr/log/Psr/Log/NullLogger.php

Die müsste er eigentlich laden .. und die ist eigentlich auch nicht unbedingt sehr komplex 😁

in reply to Philipp Holzer

@Philipp Holzer Bin nicht ganz sicher, was Du meinst.
Die Datei vendor/psr/log/Psr/Log/NullLogger.php ist vorhanden und hat die Rechte 644 (rw-r--r--).

Ich vermute, dass ich sie mit

php vendor/psr/log/Psr/Log/NullLogger.php


aufrufen soll.

In PHP 7.3 kommt diese Meldung

[16-Feb-2022 00:15:22 Europe/Berlin] PHP Fatal error: Uncaught Error: Class 'Psr\Log\AbstractLogger' not found in /var/www/virtual/snila/html/vendor/psr/log/Psr/Log/NullLogger.php:13


In PHP 7.4 kommt dagegen diese Meldung

[16-Feb-2022 00:17:49 Europe/Berlin] PHP Fatal error: Cannot declare class Psr\Log\NullLogger, because the name is already in use in /var/www/virtual/snila/html/vendor/psr/log/Psr/Log/NullLogger.php on line 0