Ankündigung

Einklappen
Keine Ankündigung bisher.

Errorlog in Visu

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #31
    Ähhhmm... weiß nicht... aber süß, das ihr alle glaubt, ich könnte programmieren
    bin froh, das ich das soweit hinbekommen hab.. wenn das jemand besser (schlauer) machen kann bin ich gern für
    verbesserte Codezeilen offen...

    Gruß Martin
    Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

    Kommentar


      #32
      Ich flipp hier noch aus..

      was mach ich falsch.. eigentlich ganz einfach und wenn ich die Hilfe richtig deute, mache ich es auch richtig, aber
      es funktioniert nicht:

      Code:
                     if (strpos($teile[6],'ERROR') === true){
                      $error_found = 1;
                      } else {
                      $error_found = 2;
                      }
      ich will, wenn er im String ERROR findet, das er dann $error_found auf 1 setzt. das macht er aber nicht.
      $teile[6] sieht so aus "ERROR</td></tr>"

      kann doch nicht so schwer sein, oder ? (drecks PHP )
      Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

      Kommentar


        #33
        Versuch' mal das:

        PHP-Code:
          if (strpos($teile[6],'ERROR') !== false){    ... 
        strpos() gibt einen Wert zw. 0..oo zurück - oder eben false, wenn nix gefunden wurde.
        EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

        Kommentar


          #34
          Und was willst Du in Wirklichkeit machen? $teile[6] ist ja bei Dir auch nicht gleich ERROR, da ist ja noch ein bisschen mehr.

          Kommentar


            #35
            ich will wissen ob in dem String "Error" vorkommt.. gerade bei der Hilfe weitergelesen.. weiter unten gibts noch ne "Warning Box"..

            Code:
            if ($pos !== false){
            so gehts.. auch wenn ich den Sinn nicht verstanden hab, warum es mit meiner Version nicht gegangen ist..

            Gruß Martin

            EDIT: ohh.. gaert .. deins hab ich jetzt überlesen.. habs aber wie geschrieben, gerade auch in der Hilfe gefunden..
            ich versehe nur nicht wieso === true nicht geht, !==false aber schon ?? vor allem wenn
            im Beispiel doch genau das steht :

            Code:
            $meinString = 'abc';
            $findMich   = 'a';
            $pos = strpos($meinString, $findMich);
            
            if ($pos === false) {
            ...
            ...
            ​​​​​​​
            Zuletzt geändert von Brick; 07.04.2018, 09:54.
            Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

            Kommentar


              #36
              jetzt das gleiche Problem mit file_exists... könnt ihr mir da helfen ?

              ich will checken ob das gesuchte File überhaupt da ist (falls jemand das Log gelöscht hat)

              also:
              Code:
              if (!file_exists($path)){
                  $file_found = '1';
                  }
              findet das File nicht.. $path = 'http://192.168.178.100/data/log/ERRLOG_2018-04.htm'
              also das aktuelle Logfile..

              es kommt immer (egal ob vorhanden oder nicht) $file_found = 1 raus..

              Wieso ?

              alternativ, kann man evtl. den Fehler behandeln, der bei "$url = file($path);" kommt, wenn er
              dort keine Datei findet ?
              Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

              Kommentar


                #37
                Du musst den Filesystem Pfad angeben nicht eine URL

                also: /usr/local/edomi/www/data/log/<log-filename>

                Kommentar


                  #38
                  Du suchst ja auch nach "file not found" lass mal das "!" weg. Ich hatte ja vorhin nicht umsonst gefragt, was Du machen willst, jetzt wirds aber klarer. Ich würde das Webverzeichniss nach Dateien mit "errorlog" Durchsuchen, und mit filetime die jüngste suchen, und verwenden.

                  Kommentar


                    #39
                    jonofe ... in der Hilfe steht aber, das URLs auch gehen müssten.. hab es mit dem Pfad auch schon probiert und ging nicht..

                    vento66 .. #hüstel.. eigentlich nicht... .. und müsste er mir mit/ohne dem "!" nicht trotzdem unterschiedliche Ergebnisse liefern, wofern die Datei da ist, oder nicht ?
                    vorhin wollte ich einfach kucken ob im Errorlog der Wert "Error" oder "FatalError" kommt und daraufhin einen Ausgang beschalten.
                    Jetzt will ich überhaupt kucken ob die Datei (also die aktuelle Errorlogdatei bzw. die Systemlogdatei) überhaupt vorhanden ist. Sie könnte
                    ja vom User gelöscht sein, dann würde der LBS einen Fehler ausspucken (was zu einer Errorlogdatei führen würde )

                    also wie gesagt.. ganz einfach.. ich will wissen ob die Errorlogdatei da ist, oder nicht und nur wenn sie da ist, meinen LBS durchlaufen lassen.

                    Gruß Martin

                    P.S. ich versuch es jett noch mal mit dem Filesystempfad...nur um sicher zu gehen..
                    Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

                    Kommentar


                      #40
                      sehe gerade dass du not file_exists() abfragst und dann file found auf 1 setzt klingt widersprüchlich .

                      EDIT: sehe gerade dass auch Micha das schon angemerkt hatte. Eigentlich sollte es danach funktionieren.
                      Zuletzt geändert von jonofe; 07.04.2018, 10:28.

                      Kommentar


                        #41
                        hab das "!" schon weg.. hab auch noch ein else dahinter das $file_exists auf 0 setzt.. also sollte es je nach Fall zumindest
                        eine änderung geben.. hier nochmal was ich hab:
                        PHP-Code:

                        $path_filesystem 
                        '/usr/local/edomi/www/data/log/ERRLOG_2018-04.htm';

                        if (
                        file_exists($path_filesystem)){
                            
                        $file_found '1';
                            } else {
                            
                        $file_found '0';
                            }

                        if (
                        $file_found){

                        $url file($path);
                        unset(
                        $url[0]);
                        $url_rev array_reverse($url);
                        weiter im Code... 
                        hab als Pfad aber auch schon mal die URL angegeben.. wie vorhin geschrieben..
                        Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

                        Kommentar


                          #42
                          nimm mal true und false
                          bin mir fast sicher das 0 in Anführungszeichen true ist. Daher true false oder 0, 1 ohne Anführungszeichen.

                          Kommentar


                            #43
                            ja das wars.. mit True/False gehts... Ahhrrrggg...
                            vielen Dank !!

                            Gruß Martin
                            Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

                            Kommentar


                              #44
                              True/False ist in PHP etwas "merkwürdig" - je nach Sichtweise

                              0 ist zwar "nicht true", aber auch "nicht false" - zumindest nicht ===false

                              Oder anders ausgedrückt: strpos() liefert entweder false oder 0..x. Solange strpos() also !==false ist, wurde irgendwas zw. 0 und x gefunden.
                              EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

                              Kommentar


                                #45
                                php castet Typen ohne Vorwarnung. d.H. "0 == false" ist wahr. Immer wenn du Typsicher prüfen willst musst du === bzw. !== nutzen. Damit du weißt was eine Funktion zurück liefert konsultiere bitte das Manual unter http://php.net/docs.php. In die Suche kannst du einfach deinen gewünschten Funktionsnamen eintippen und bekommst eine brauchbare Dokumentation dafür
                                Grüße
                                Marcel

                                Kommentar

                                Lädt...
                                X