2009-07-30 4 views
1

Ich muss eine Konsolenanwendung schreiben, um die Protokolldateien täglich in die Datenbank zu importieren. Die Protokolldateien und die Datenbank befinden sich auf verschiedenen Servern. Und dann wird eine Webanwendung diese Datenbank durchsuchen.Importieren Sie die Protokolldatei von einer Webanwendung, sollte ich tun?

Ich überlege mir, sollte ich importieren Anwendung in diese Web-App migrieren oder ich diese App als einen Job in SQL Server konfigurieren. (wie bereits erwähnt, muss der Import täglich zu einer bestimmten Zeit erfolgen).

Für den Fall, dass ich auf die Web-App migrieren sollte, wie kann ich dies effektiv planen? (Ich verwende C#)

Antwort

0

Verwendung log4net Ihre Log direkt

1

Server A-Datenbank zu schreiben hat die Protokolle. Server B wird sie

-Set von FTP auf Server B

-Write Batch-Datei auf dem Server A auf FTP-Protokolldatei auf Server B

-Set auf diese Batchdatei als eine geplante Aufgabe bearbeiten auf Server A

-Schreiben Sie die Konsolenanwendung, um nach dieser Datei im FTP-Verzeichnis zu suchen und in die DB zu importieren.

-Stellen Sie dies als eine geplante Aufgabe auf Server B (sagen wir 1 Stunde nach anderen Zeitplan).

0

Eine Technik besteht darin, einen Rückruf beim Start zu planen, indem ein [HttpContext] -Cache-Eintrag hinzugefügt wird, der zu jedem Zeitpunkt abläuft, an dem der nächste Lauf fällig ist. Dann kann man den Callback "Cache-Eintrag entfernt werden" abonnieren und den Import dann durchführen. Wenn Sie fertig sind, fügen Sie den Dummy-Eintrag wieder in den Cache ein.

Das Problem mit einem solchen Ansatz ist natürlich, wie man den Betreiber von Fehlern benachrichtigen und/oder verwalten kann, was passiert, wenn ein erneuter Versuch aus irgendeinem Grund benötigt wird.

0

Nicht sicher, um welche Art von "Logs" es sich handelt, aber MS Log Parser könnte Ihnen helfen. Sie können es herunterladen here

Verwandte Themen