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, 17558 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 ...

Windows 10

Windows 10 - Mit Batch Datei Privacy Settings anpassen

Tipp von MarcoG88Windows 104 Kommentare

Hallo, ich habe eine Batch veröffentlicht mit der die WIndows 10 Enterprise Datenschutzeinstellungen einfach deaktiviert werden können. Die batch ...

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 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 3 StundenWindows 102 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 6 StundenAdministrator.de Feedback10 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 23 StundenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 1 TagGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Server-Hardware
Welche Rolle spielt Design bei Enterprise IT Hardware?
Frage von ApolloXServer-Hardware17 Kommentare

Ich arbeite für einen internationalen Elektronikhersteller in der Forschung und meine Aufgabe ist es, Feedback von Nutzern in Hinsicht ...

Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Switche und Hubs
Cisco SG350X-48 AdminIP in anderes VLAN
Frage von lcer00Switche und Hubs14 Kommentare

Hallo zusammen, ich habe ein Problem mir einem Cisco SG350X-48 bei der Erstinstallation wurde eine IP 192.168.0.254 (Default VLAN ...