Announcement

Collapse
No announcement yet.

Fatal Error Handling

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Fatal Error Handling


    Hi leute ich habe auf meinem server ein skript laufen was auf bilder zugreift die über ftp hochgeladen werden verarbeitet.
    Die Bilder werden von verschiedenen leuten hochgeladen. Der service läuft eigenständig 24/7. manchmal werden defekte bilder oder zu grosse oder was auch immer hochgeladen die dann zu einem Fatal Error führen und das skript stopt.
    kennt jemand eine methode oder einen Trick um dieses zu verhindern und den skript weiterlaufen zu lassen?

    Server ist eine standard Linux-Maschine mit LAMP-Stack drauf.

  • #2
    Es empfiehlt sich natürlich, sein Script und die Aufrufe so robust wie möglich zu machen und alle Fehler zu loggen und den Nutzern verständliche Rückmeldung zu geben.

    Um zu garantieren, dass ein Prozess immer wieder neu startet, wird unter Linux z.B. systemd eingesetzt.
    Dazu legt man eine service configuration an und definiert dort, wie, unter welchen Bedingungen der Prozess laufen und neu gestartet werden soll.
    siehe https://www.freedesktop.org/software/systemd/man/

    Comment


    • #3
      defekte bilder oder zu grosse oder was auch immer hochgeladen
      Prüfen wo der Error entsteht und die Daten ggf. vorher analysieren
      Das ist tatsächlich FTP?
      Du hast einen FTP-Server dort laufen?
      Was genau macht dein Script?

      Wenn die Bilder nun schon per FTP im Dateisystem liegen, kannst du
      - die Größe prüfen
      - anhand der Dateisignatur die Art der Datei prüfen
      Zuletzt editiert von Christian Marquardt; 19.07.2019, 17:30.
      Christian

      Comment


      • #4
        Danke für die Vorschläge Systemd oder supervisord ist dabei eine sehr elegante lösung

        Comment


        • #5
          ist dabei eine sehr elegante lösung
          Eher nicht.
          Man beseitigt Fehler, prüft Daten und lässt sich nicht in eine Exception o.ä. fallen
          Christian

          Comment


          • #6
            Originally posted by odysseusdg View Post
            Danke für die Vorschläge Systemd oder supervisord ist dabei eine sehr elegante lösung
            Jein, es ist elegant, um einen automatischen Start und einen Neustart zu gewährleisten. Das ist vor allem administrativ eine schöne Sache, weil man nicht mitten in der Nacht ein Script neu starten muss.

            Es besteht halt die Gefahr, dass man sich darauf verlässt und sich sein System so zerstört oder lähmt, dass man selbst nicht mehr ran kommt. Ein Prozess der immer neu startet ist nur brauchbar, wenn nicht die Ursache auch immer wieder auftritt oder sogar in schneller Folge...

            Comment

            Working...
            X