LogFile Auswerten mit VBS und Access

  • Allgemein

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Unknown.

    LogFile Auswerten mit VBS und Access

    Hallo

    ich habe vor 4 tagen mit VBS angefanngen und soll nun eine Logfile.txt üver VBS ind eine Access bringen und auswerten das habe ich auch schon soweit geschafft nur mein Porbelm besteht darin das der mir alles in die Access schreibt.

    Ich möchte das so haben das der Computername dort steht , die IP , der Anfangszeitraum, Das ende der Session und dann die gesammte Zeit des Log´s.

    den VBS und die LOG habe ich als Dateianhang abgelegt damit ihr euch das mal anschauen Könnt ich hoffe auf eure Hilfe :-)



    Liebe grüsse Zanzi

    Logfile auswerten.vbs.txtlog.txt

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „XxZanZarahxX“ ()

    Hier eine kleine Funktion zum auswerten deiner
    Logdaten. Die Funktion gibt die Werte in einem
    Array zurück - und zwar sortiert in der Reihenfolge,
    in der die Schlüsselwörter übergeben worden sind.
    Beachte, dass das erste Schlüsselwort als Schlüssel
    dient:

    VB.NET-Quellcode

    1. Function DateiAuswerten(ByVal vDateiname, _
    2. ByRef vSchluesselwoerter(), _
    3. ByRef vWerte())
    4. Const ForReading = 1
    5. Dim objFSO
    6. Dim objDatei
    7. Dim vTexzeile
    8. Dim vWert
    9. Dim vAnzahlWerte
    10. Dim vIndexWert
    11. Dim i
    12. Set objFSO = CreateObject("Scripting.FileSystemObject")
    13. Set objDatei = objFSO.OpenTextFile(vDateiname, ForReading, False)
    14. ReDim vWerte(0)
    15. While Not objDatei.AtEndOfStream
    16. vTextzeile = objDatei.ReadLine()
    17. If Len(vTextzeile) > 0 Then
    18. For i = 0 To UBound(vSchluesselwoerter)
    19. If InStr(1, vTextzeile, vSchluesselwoerter(i)) <> 0 Then
    20. vWert = Mid(vTextzeile, _
    21. InStr(1, vTextzeile, vSchluesselwoerter(i)) + _
    22. Len(vSchluesselwoerter(i)))
    23. If i = 0 Then
    24. ReDim Preserve vWerte(vAnzahlWerte + UBound(vSchluesselwoerter))
    25. vIndexWert = vAnzahlWerte
    26. vAnzahlWerte = vAnzahlWerte + UBound(vSchluesselwoerter) + 1
    27. End If
    28. vWerte(vIndexWert + i) = vWert
    29. End If
    30. Next
    31. End If
    32. Wend
    33. If vAnzahlWerte = 0 Then Erase vWerte
    34. DateiAuswerten = (vAnzahlWerte > 0)
    35. End Function


    Wenn die Funktion keine Werte findet, gibt sie False
    zurück. Benutzten kannst du sie z.B. so:

    VB.NET-Quellcode

    1. If Not DateiAuswerten("log.txt", _
    2. Array(" Schluessel: ", " Wert1: ", " Wert2: "), _
    3. vWerte) Then
    4. MsgBox "Keine Werte im Logfile gefunden"
    5. WScript.Quit
    6. End If
    7. For i = 0 To UBound(vWerte)
    8. MsgBox vWerte(i)
    9. Next


    Um eine Logdatei die so aussieht:

    Quellcode

    1. UHRZEIT; Schluessel: Name1
    2. UHRZEIT; Wert1: TestWert1
    3. UHRZEIT; Wert2: TestWert2
    4. UHRZEIT; <Andere Nachricht>
    5. UHRZEIT; <Andere Nachricht>
    6. UHRZEIT; Schluessel: Name2
    7. UHRZEIT; Wert2: TestWert4
    8. UHRZEIT; Wert1: TestWert3


    auszuwerten und folgende Ausgabe zu erhalten:

    Quellcode

    1. Name1
    2. TestWert1
    3. TestWert2
    4. Name2
    5. TestWert3
    6. TestWert4