myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Rund um die Programmierung » Server-Anwendung stürzt ohne erkennbaren Grund ab
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Server-Anwendung stürzt ohne erkennbaren Grund ab

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Palladin007 Palladin007 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.02.2012
Beiträge: 1.174
Entwicklungsumgebung: Visual Studio 2017
Herkunft: NRW


Palladin007 ist offline

Server-Anwendung stürzt ohne erkennbaren Grund ab

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Guten Vormittag,

folgende Situation:

Wir haben eine mit .NET entwickelte Server-Anwendung, die permanent irgendwelche Sachen tut.
Alles was die tut, wird genau überwacht und jeder Fehler wird gnadenlos abgefangen und in's Log geschrieben.
Oder in kurz: Das verdammte Ding darf nicht abstürzen und das tut's normalerweise auch nicht.

Nun hab ich aber einen Windows-Task (selber Windows-Server) getestet, der eben diesem Server per WCF eine Aufgabe schickt.
Dazu gehört 1. eine anstrengende Datenbank-Abfrage und 2. eine Email, die versendet wird.
Prinzipiell alles keine Aufgaben, die weh tun, gibt genug andere ähnliche Fälle.

Nun hab ich den Task gestartet und mir gleichzeitig am Server die Log-Ausgabe angeschaut um das Ergebnis zu sehen.
Just in dem Moment teilt mir Windows mit, dass das Programm - nicht der Task, sondern die Server-Anwendung - nicht mehr funktioniert.
Wenn ich mir mein Log anschaue, ist da aber kein Fehler erkennbar, die Aufgabe wurde korrekt ausgeführt. Ob die Mail auch wirklich angekommen ist, finde ich noch raus.

Nun bleibt die Frage: Warum?
Uns geht dabei ein bisschen der A**** auf Grundeis. Was ist, wenn der mal wieder abstürzt, dann aber nacht's und ich bin nicht gerade zufällig angemeldet?
Das darf nicht passieren, daher muss ich heraus finden, wo der Fehler her kam.

Ich hab nur die Problemsignatur, mehr konnte ich zu dem Fehler nicht finden:

Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
Problemsignatur
Problemereignisame:	CLR20r3
Problemsignatur 01:	MyCoolServer.exe
Problemsignatur 02:	1.2.3.4
Problemsignatur 03:	5a17de4c
Problemsignatur 04:	System
Problemsignatur 05:	4.7.2114.0
Problemsignatur 06:	59a63a25
Problemsignatur 07:	1787
Problemsignatur 08:	2b6
Problemsignatur 09:	JIQI25QQYH0510V2HICZDZZJ25D5L3DH
Betriebsystemversion:	6.3.9600.2.0.0.400.8
Gebietsschema-ID:	1031
Zusatzinformation 1:	5861
Zusatzinformation 2:	5861822e1919d7c014bbb064c64908b2
Zusatzinformation 3:	5f25
Zusatzinformation 4:	5f2531ae070278f893fa99352dadd49e

Weitere Informationen über das Problem
Bucket-ID:	a7f1d042cfba1108535fdf33692ff303 (1396079821409219331)

Kann mir jemand sagen, wie ich heraus finden kann, was das bedeutet?
Wenn möglich ohne irgendwas installieren zu müssen.
Im Idealfall, kann ich das anhand die Binaries auch auf meinem lokalen Rechner interpretieren.


Mir fallen auch nur zwei Möglichkeiten ein, wann ein catch nicht fangen kann:
StackOverflowException
OutOfMemoryException

Oder hat jemand noch eine andere Idee?

Besten Dank für die Hile

Gruß


PS:
Wenn das Unterforum hier nicht passt - kann ein freundlicher Moderator/Admin das Thema verschieben?
Für mich klang das am passendsten.

Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von Palladin007 am 28.11.2017 11:55.

28.11.2017 11:52 Beiträge des Benutzers | zu Buddylist hinzufügen
Palladin007 Palladin007 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.02.2012
Beiträge: 1.174
Entwicklungsumgebung: Visual Studio 2017
Herkunft: NRW

Themenstarter Thema begonnen von Palladin007

Palladin007 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Fehler Nr. 2:

Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
Problemsignatur
Problemereignisame:	CLR20r3
Problemsignatur 01:	MyCoolServer.exe
Problemsignatur 02:	1.2.3.4
Problemsignatur 03:	5a17de4c
Problemsignatur 04:	System
Problemsignatur 05:	4.7.2114.0
Problemsignatur 06:	59a63a25
Problemsignatur 07:	1787
Problemsignatur 08:	2b6
Problemsignatur 09:	JIQI25QQYH0510V2HICZDZZJ25D5L3DH
Betriebsystemversion:	6.3.9600.2.0.0.400.8
Gebietsschema-ID:	1031
Zusatzinformation 1:	5861
Zusatzinformation 2:	5861822e1919d7c014bbb064c64908b2
Zusatzinformation 3:	5f25
Zusatzinformation 4:	5f2531ae070278f893fa99352dadd49e

Und wir sind immer noch ratlos ...

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Palladin007 am 28.11.2017 12:11.

28.11.2017 12:11 Beiträge des Benutzers | zu Buddylist hinzufügen
wcseller wcseller ist männlich
myCSharp.de-Mitglied

Dabei seit: 14.09.2008
Beiträge: 188


wcseller ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Ohne zu wissen, was und wie diese 'ServerAnwendung' genau macht, wird Dir hier wahrscheinlich keiner diese Fragen beantworten können.

Nur mal ganz grundsätzlich:
Ist die 'ServerAnwendung' ein Dienst? Wenn ja, kannst Du dort schon einiges einstellen, was passieren soll, wenn der Dienst 'abstürzt'. Ausserdem böte sich die Verwendung eines sog. WatchDogs an - ein zweiter Dienst, der nur nachschaut ob der erste bereits läuft und wenn nicht diesen startet. In einer perfekten Welt würde Dein ServerDienst dann auch noch den Watchdog überwachen, so dass beide sich gegenseitig ständig 'im Auge' haben...

Ist Deine ServerAnwendung kein Dienst, solltest Du das so handhaben, dass die Anwendung nur gestartet wird, wenn das abarbeiten notwendig ist - also starten, Aufgaben erledigen und danach wieder beenden. Müssen die Aufgaben regelmässig erledigt werden, kannst Du die ANwendung als geplanten Task starten (mit den Bordmitteln von Windows).

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von wcseller am 28.11.2017 12:43.

28.11.2017 12:42 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Palladin007 Palladin007 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.02.2012
Beiträge: 1.174
Entwicklungsumgebung: Visual Studio 2017
Herkunft: NRW

Themenstarter Thema begonnen von Palladin007

Palladin007 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Ist kein Dienst - leider, ist aber weit oben auf unserer ToDo-Liste, daraus einen Dienst zu machen.

Die Server-Anwendung tut prinzipiell nichts, bis ihm jemand was Anderes sagt.
Sie wartet auf Aufgaben von vielen verschiedenen Clients, die rund um die Uhr was haben wollen.
Nur starten, wenn notwendig, ist daher keine Option, der Server würde sowieso rund um die Uhr laufen.

An einem sehr rudimentären WatchDog arbeite ich gerade.
Nichts groß spannendes, nur dass ich sicher sein kann, dass der Server auch die Nacht überlebt :/
Bisher macht mir aber die Exception-Message von Windows noch Problem, mal schauen, wie ich mit bekomme, dass der Prozess nicht mehr läuft verwundert


Mir ging's mit meiner Frage auch mehr darum, heraus zu finden, was Windows mir mit der Problemsignatur sagen will. Das ist leider das Einzige, was wir bisher haben, irgendwas muss das doch bringen :/
28.11.2017 12:51 Beiträge des Benutzers | zu Buddylist hinzufügen
Th69
myCSharp.de-Poweruser/ Experte

avatar-2578.jpg


Dabei seit: 01.04.2008
Beiträge: 3.308
Entwicklungsumgebung: Visual Studio 2015/17


Th69 ist online

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Unter  Windows Error Reporting and CLR integration gibt es eine Beschreibung der einzelnen Felder.

Zitat:
Problemsignatur 09: JIQI25QQYH0510V2HICZDZZJ25D5L3DH

Dies ist wohl die Exception - aber ich weiß leider nicht, wie man diese wieder "unmangled".

Das beste wäre jedoch wenn du Dump Files erzeugen lassen würdest, wie in  Interpreting Windows Error Reporting ouput verlinkt:  Collecting User-Mode Dumps.
28.11.2017 12:52 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Palladin007 Palladin007 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.02.2012
Beiträge: 1.174
Entwicklungsumgebung: Visual Studio 2017
Herkunft: NRW

Themenstarter Thema begonnen von Palladin007

Palladin007 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Die Seite hab ich auch gesehen und ich bin bei ...

Zitat:
Dies ist wohl die Exception - aber ich weiß leider nicht, wie man diese wieder "unmangled".

... ebenfalls hängen geblieben.

Ob ich ein Dump bekommen kann oder sagen kann, dass er eins erstellen kann, muss ich schauen.
Bisher kenne ich mich damit kaum aus.
28.11.2017 12:57 Beiträge des Benutzers | zu Buddylist hinzufügen
HiGHteK HiGHteK ist männlich
myCSharp.de-Mitglied

Dabei seit: 28.03.2007
Beiträge: 109
Entwicklungsumgebung: VS 2015 .NET FW 4.x


HiGHteK ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo Palladin007,

hast du schon mal in den Event Log (via EventViewer bzw. Ereignisanzeige) vom Betriebssystem selber nachgeschaut? Bisher hab ich da immer einen Hinweise auf die Ursache gefunden, wenn sich eine .NET Anwendung scheinbar grundlos verabschiedet hat.

Grüße, HiGHteK
28.11.2017 13:03 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Palladin007 Palladin007 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.02.2012
Beiträge: 1.174
Entwicklungsumgebung: Visual Studio 2017
Herkunft: NRW

Themenstarter Thema begonnen von Palladin007

Palladin007 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Da steht auch nicht mehr drin, zumindest nichts, womit ich groß was anfangen kann:

Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
- System 

  - Provider 

   [ Name]  Application Error 
 
  - EventID 1000 

   [ Qualifiers]  0 
 
   Level 2 
 
   Task 100 
 
   Keywords 0x80000000000000 
 
  - TimeCreated 

   [ SystemTime]  2017-11-28T11:00:40.000000000Z 
 
   EventRecordID 74986 
 
   Channel Application 
 
   Computer MyCoolServer
 
   Security 
 

- EventData 

   MyCoolServer.exe 
   1.2.3.4
   5a17de4c 
   KERNELBASE.dll 
   6.3.9600.18666 
   58f32841 
   e0434352 
   00015608 
   1d0c 
   01d36827941c8f41 
   c:\path\MyCoolServer.exe 
   C:\Windows\SYSTEM32\KERNELBASE.dll 
   5e649dee-d42b-11e7-80d3-00155d0a0101

Wegen der Dumps:
Legt Windows nicht selber Dumps irgendwo an?
Weiß jemand, wo die liegen?



PS:
Wir haben jetzt erst mal etwas umfangreicheres Logging drum rum gebaut.
Die Logs, die wir hauptsächlich nutzen, betrifft die Commands, deren Start, Ausführung und Ende.
Der Kram, der die ausführt, wird jetzt etwas umfangreicher geloggt.

Blöd wäre natürlich, wenn's jetzt nicht mehr abstürzt, immerhin lief der seit dem letzten Update tagelang rund um die Uhr ohne einen Fehler.

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Palladin007 am 28.11.2017 13:17.

28.11.2017 13:12 Beiträge des Benutzers | zu Buddylist hinzufügen
Palladin007 Palladin007 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.02.2012
Beiträge: 1.174
Entwicklungsumgebung: Visual Studio 2017
Herkunft: NRW

Themenstarter Thema begonnen von Palladin007

Palladin007 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Ok, ich hab eine Exception cool

Fehlermeldung:
System.Net.Mail.SmtpFailedRecipientsException

Das gibt Sinn, denn das Mail senden ist das einzige, worauf nicht gewartet wird.
Das läuft in einem eigenen Task eigenständig weiter.
28.11.2017 13:39 Beiträge des Benutzers | zu Buddylist hinzufügen
BhaaL BhaaL ist männlich
myCSharp.de-Mitglied

Dabei seit: 14.02.2008
Beiträge: 618
Entwicklungsumgebung: VS2017


BhaaL ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat von Palladin007:
Da steht auch nicht mehr drin, zumindest nichts, womit ich groß was anfangen kann: [...]

Nur um hier noch kurz einzuhaken; üblicherweise finden sich in dem Fall drei (oder zumindest zwei) Einträge im Event Viewer unter "Windows Logs" > "Application": Eins von "Windows Error Reporting" (was du hier gepostet hast, was leider auch sinnlos ist; und üblicherweise auch nur das Level "Information" hat), eins von "Application Error" (mit Level "Error" wo zumindest der Pfad zur Datei stehen sollte) und bei .NET Programme von ".NET Runtime" (auch "Error") wo dann oft ein Stacktrace drinsteht. Letzterer ist der interessante (sofern es sie gibt).
28.11.2017 15:02 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Palladin007 Palladin007 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.02.2012
Beiträge: 1.174
Entwicklungsumgebung: Visual Studio 2017
Herkunft: NRW

Themenstarter Thema begonnen von Palladin007

Palladin007 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Stimmt, Du hast recht
Wusste ich bis dato nicht verwundert


Danke für den Tipp, sowas ist immer gut zu wissen ^^
28.11.2017 15:43 Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als ein Jahr.
Der letzte Beitrag ist älter als ein Jahr.
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 17.08.2019 14:39