Top-Themen

Aktuelle Themen (A bis Z)

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

Ordner per Batch auf neue, nicht abgeholte Dateien überwachen

Mitglied: kugelschreiber

kugelschreiber (Level 1) - Jetzt verbinden

23.08.2010, aktualisiert 14:47 Uhr, 17686 Aufrufe

Vielleicht hilft es ja dem einen oder anderen in einer anderen oder ähnlichen Situation

Hallo Ihr Lieben,

Folgendes Szenario:

Wir haben einen BizTalk Server 2006 auf Windows 2003 32bit, der per Windows Service einen Eingangsordner (Receive Folder) auf neue Dateien überwacht (vorläufig XML Dateien) und dann entgegen nimmt. Dabei verschiebt (also löscht) der BizTalk Server die Datei aus dem Eingangsordner zur weiteren Verarbeitung (Orchestrierung usw.).
Nun haben wir mehrfach festgestellt, dass dies manchmal länger als 2 Minuten dauert. Im Normalfall sollte die Datei nicht länger als 1-2 Sekunden im Eingangsordner verweilen, bevor der Server sie abgreift.

Das Problem

Wie bekomme ich nun mit, wann ein sogenannter "Hänger im System" vorherrscht?

Die Lösung

Dazu habe ich mir ein Batch gebaut, welche im Abstand von 1 Minute per Windows Tasksplaner aufgerufen wird und mir im Falle, dass eine Datei länger als 1 Minute im Eingangsordner liegt, eine Email mit dem Dateinamen im Betreff schickt. Ich verwende dabei eigentlich drei Batchdateien:

  1. eingangs_ordner_pruefen.bat
  2. dateien_kopieren.bat
  3. email.bat

Wobei die eingangs_ordner_pruefen.bat die anderen beiden per call in zwei beinhaltenden Schleifen aufruft.
Als Programm zum Verschicken einer Email verwende ich blat, welches Ihr Euch alternativ hier besorgen könnt. Eine klitzekleine Anleitung zu blat findet Ihr hier

Aber nun zu den einzelnen Batch-Dateien.

Die Hauptdatei eingangs_ordner_pruefen.bat

@ECHO OFF 
REM VARIABLEN 
set server=mail.domain.de 
set empfaenger=xxx@domain.de 
set sender=yyy@domain.de 
set projectpfad="C:\test" 
set ordner1="C:\test\ordner1" 
set ordner2="C:\test\ordner2" 
 
REM Prüfen, ob im ordner1 noch daten drin sind, die bereits schon in ordner1 drin sind (Dann hat BizTalk versagt -> Email an xxx@) 
CD %ordner2% 
FOR %%A IN ("*.*") DO ( 
	if exist %ordner1%\%%A call C:\test\email.bat "%%A" 
 
REM Prüfen, ob im ordner1 Dateien enthalten sind, die noch nicht im ordner2 enthalten sind (also neue Dateien -> kopieren in ordner2) 
CD %ordner1% 
FOR %%B IN ("*.*") DO ( 
	if not exist "%ordner2%"\"%%B" call C:\test\dateien_kopieren.bat "%%B" 
 
REM Prüfen, ob im ordner2 Dateien enthalten sind, die nicht mehr in ordner1 enthalten sind (BizTalk hat funktioniert -> also alte Dateien -> löschen in ordner2) 
CD %ordner2% 
FOR %%C IN ("*.*") DO ( 
	if not exist "%ordner1%"\"%%C" del "%ordner2%"\"%%C" 
)
Die Datei dateien_kopieren.bat

@echo off 
REM Kopiert alle Dateien von ordner1 in ordner2 
copy %ordner1%\%1 %ordner2%\%1
Die Datei email.bat

cd %projektordner% 
blat.exe c:\Test\body.txt -server %server% -to %empfaenger% -f %sender% -s %1
Projekt Testen

Zum Testen des Projektes führt bitte folgende Schritte durch

  1. Legt Euch einen Ordner namens "test" auf "C:\" an
  2. Erstellt im Ordner "C:\test" einen Ordner namens "ordner1" und einen weiteren Ordner namens "ordner2"
  3. Erstellt nun die Batchdateien wie oben beschrieben (Diese sollten dann auch unter "C:\test" liegen)
  4. Kopiert Euch die "blat.exe" von der oben angegebenen Webseite ebenfalls ins Verzeichnis "C:\test"
  5. Erstellt Euch eine Datei namens "body.txt" und schreibt einen beliebigen Inhalt hinein (Das ist dann Euer Inhalt in der Email)
  6. Passt die Hauptdatei eingangs_ordner_pruefen.bat an Eure Einstellungen an (Emailserver und Adressen)
  7. Gehe nun in den "ordner1" und erstelle dort eine beliebige Testdatei (zum Beispiel ein leeres Textdokument namens "test.txt")
  8. Doppelklicke nun auf die Hauptdatei eingangs_ordner_pruefen.bat unter "c:\test" (Deine Testdatei "test.txt" in "ordner1" sollte im Anschluss nun in "ordner2" kopiert worden sein)
  9. Doppelklicke wieder auf die Hauptdatei eingangs_ordner_pruefen.bat unter "c:\test" (Nun liegt die Datei immer noch in "ordner1" -> also wirst Du per Email benachrichtigt, das eine Datei (Dateiname steht im Betreff der Email) schon länger im "ordner1" liegt. (Der Biztalkserver hat Sie also noch nicht abgeholt)
  10. Lösche nun die Datei aus "ordner1" (Simulation als ob der Biztalkserver die Datei schon abgeholt hat)
  11. Doppelklicke wieder auf die Hauptdatei eingangs_ordner_pruefen.bat unter "c:\test" (Nun wird die Testdatei "test.txt" aus ordner2 gelöscht, da Sie sich nicht mehr im "ordner1" befindet (Der BizTalk Server hat sie also schon abgeholt)

NACHTRAG

Dies ist keine Lösung des Problems, aber wir haben rausgefunden wann es aufgetren ist und haben festgesetllt, dass andere Prozesse zu dieser Zeit eine enorm hohe Auslastung hatten und somit der BizTalk Service die Dateien nicht entgegennehmen konnte.

Wer das o.g. Beispiel als Dateien haben möchte, kann mir eine private Nachricht mit seiner Emailadresse schicken, ich bemühe mich die Daten so schnell wie möglich zu versenden.

Wahrscheinlich entgegen jeder Regel, bitte ich Euch mir Verbesserungen, Anregungen oder gar Kritik per privater Nachricht zu schicken, damit ich es in diesem Artikel ver/ausbessern kann. Ihr werdet namentlich erwähnt, wenn dies gewünscht ist.
Somit bekommt der interessierte Leser nur einen Artikel und muss sich am Ende nicht durch 20 Anpassungen/Beiträgen den gesamten Code selber zusammensuchen.

Vielen Dank für Euer Verständnis

Gruß Kuli

PS: Vielen Dank an Johannes Dobler, der mich dabei unterstützt hat
Ähnliche Inhalte
Off Topic

Arbeitgeber dürfen Mitarbeiterchats nicht einfach überwachen

Information von transoceanOff Topic6 Kommentare

Moin, das hat der Europäische Gerichtshof für Menschenrechte geurteilt. Hier das Original Dokument (englisch) vom Europäische Gerichtshof für Menschenrechte ...

Papierkorb

Gelöscht1234

Tipp von 126139Papierkorb4 Kommentare

asdgelöscht1234gelöscht1234gelöscht1234gelöscht1234gelöscht1234

Windows Server

Windows Server und Windows 7 Software RAID überwachen

Anleitung von hijacker99Windows Server1 Kommentar

Microsoft bietet von Haus aus leider keine Überwachung von Software-RAIDs, die mit der Datenträgerverwaltung erstellt wurden. Abhilfe schafft ein ...

Administrator.de Feedback

Das neue Benachrichtigungssystem

Information von admtechAdministrator.de Feedback38 Kommentare

Gestern Nacht habe ich das Release 4.5 von Administrator.de veröffentlicht. Die größte Änderung ist das neue Benachrichtigungssystem. Leider konnte ...

Neue Wissensbeiträge
Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 21 StundenWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 1 TagSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 1 TagMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Hardware

Feueralarm killt Festplatten in Rechenzentrum - führt zu größerem Ausfall

Information von kgborn vor 1 TagHardware12 Kommentare

Noch ein kleiner Beitrag für Administratoren, die in Rechenzentren aktiv sind - so als Fingerzeig. Denn es gibt Szenarien, ...

Heiß diskutierte Inhalte
Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux27 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++24 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

LAN, WAN, Wireless
Watchguard T15 VPN Einrichtung
gelöst Frage von thomasjayLAN, WAN, Wireless22 Kommentare

Hallo zusammen, wir möchten gerne über unsere Watchguard T15 einen VPN-Tunnel (Mobile VPN with IPSec) einrichten! Als Client nutzen ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL19 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...