Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Umlaufendes Logfile herunterladen und fortschreiben

Frage Entwicklung VB for Applications

Mitglied: Haegar75

Haegar75 (Level 1) - Jetzt verbinden

17.11.2010 um 22:21 Uhr, 2124 Aufrufe, 3 Kommentare

Hallo,
ich brauche mal wieder Hilfe.. Ich habe eine Reihe umlaufender Logfiles die über http herunterladbar sind. Um nun keine Informationen zu verlieren wenn zu viele neue Einträge reinkommen, möchte ich die Logfiles zyklisch herunterladen und in lokale Textdateien abspeichern. Allerdings möchte ich die "Momentaufnahmen" nicht einfach hintereinanderklatschen, sondern nur die neuen Zeilen hintendranhängen. Hat schon jemand sowas gemacht und ne Idee für mich? Kann gerne auch ne Batch-Lösung sein..
Vielen Dank im voraus.
Gruß Haegar
Mitglied: bastla
17.11.2010 um 22:51 Uhr
Hallo Haegar75!

Zum Herunterladen kannst Du "wget" oder zB
01.
Set Http = CreateObject("WinHttp.WinHttpRequest.5.1") 
02.
Http.Open "GET", "http://Log-File-URL", False 
03.
Http.Send 
04.
LogText = Http.ResponseText
verwenden.
Die Weiterverarbeitung ist mir dann nicht ganz klar - könntest Du das noch etwas konkretisieren und auch zB den Umfang der Logfiles (Zeilenanzahl, Dateigröße) angeben?

Grüße
bastla
Bitte warten ..
Mitglied: Haegar75
18.11.2010 um 19:13 Uhr
Danke! Mit wget konnte ich die Files schonmal einwandfrei herunterladen. Die Logfiles sind ca. 5-6kb groß.. Wenn ich die Files alle 3-4min herunterlade, sind je nachdem 2-30 Zeilen dazugekommen und die älteren Zeilen fehlen (umlaufend also..) Da oft identische Zeilen vorkommen kann ich nicht nach gleichen Zeilen im alten und neuen Logfile suchen und ab da aus dem neuen ans Ende des alten Files hängen. Ich bräuchte ne Mustererkennung oder so ähnlich um z.B. bei einer Übereinstimmung von ca. 10 Zeilen eine "Synchronisation" machen zu können. Sowas ähnliches wie der diff-Befehl unter Linux...
Bitte warten ..
Mitglied: bastla
18.11.2010 um 19:31 Uhr
Hallo Haegar75!

Meine Frage nach dem Umfang bezog sich auf die Möglichkeit, den gesamten Inhalt (bzw dessen größten Teil) in eine Variable (und damit den Arbeitsspeicher zu holen) - dann könnte nach diesem "Block" in der nächsten Datei gesucht und nur der darauf folgende Teil hinzugefügt werden - schematisch (und völlig ungetestet) also etwa (ausgehend davon, dass die heruntergeladenen Dateien als "Vorletzte.txt" und "Letzte.txt" gespeichert sind und die Zusammenfassung in "Gesamt.txt" erfolgen soll) so:
01.
Set fso = CreateObject("Scripting.FileSystemObject") 
02.
InhaltVorletzte = fso.OpenTextFile("D:\Vorletzte.txt").ReadAll 
03.
InhaltLetzte = fso.OpenTextFile("D:\Letzte.txt").ReadAll 
04.
 
05.
TeilAlt = Mid(InhaltVorletzte, 2001) 'erste 2000 Zeichen überspringen - sollten alle in der neuen Datei weggefallenen Zeilen enthalten 
06.
Pos = InStr(InhaltLetzte, TeilAlt) 
07.
If Pos > 0 Then 
08.
    TeilNeu = Right(InhaltLetzte, Len(InhaltLetzte) - Pos - Len(TeilAlt)) 
09.
    fso.OpenTextFile("D:\Gesamt.txt", 8, True).Write TeilNeu 
10.
End If
Danach die Datei "D:\Vorletzte.txt" durch "D:\Letzte.txt" ersetzen und "D:\Letzte.txt" neu herunterladen.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Windows Server

Exchange 2010 Active Directory und Windows Server 2016

(4)

Erfahrungsbericht von Herbrich19 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Internet
gelöst Mitarbeiter surft auf unerwünschter Seite - Wie damit umgehen? (52)

Frage von sabines zum Thema Internet ...

Netzwerke
LAN2LAN Verbindung sehr langsam flaschenhals gesucht (27)

Frage von PixL86 zum Thema Netzwerke ...

Router & Routing
PFsense - Netzverbindung steht, aber kein Internet vorhanden (24)

Frage von aschmid zum Thema Router & Routing ...

Windows Server
gelöst Windows 2016 Hyper-V und VHDS (19)

Frage von emeriks zum Thema Windows Server ...