10. november 2011 - 18:45Der er
9 kommentarer og 1 løsning
Periodisk fejl, hvordan fejlfinder jeg?
Jeg har nogle ASP-sider der kører på en IIS7 på en Server 2008 op mod en MS SQL Server 2005 Standard 32-bit server (kører også Server 2008).
IIS'en og Databasen kører på hver sin fysiske server, og er forbundet via LAN.
Engang imellem får jeg følgende fejl når min ASP-side forsøger at forbinde til databasen: Named Pipes Provider: Could not open a connection to SQL Server [5]
Hvis jeg trykker F5 i browseren, indlæses siden fint. Det er ret sjældent jeg opdager det, men efter jeg er begyndt at overvåge serveren mere systematisk, ser jeg at det nok sker mindst 5-6 gange om ugen, hvis jeg indlæser siden hvert 5. minut. DVS. ud af ca. 2000 tests om ugen, fejler 5-6 stykker.
Der er ikke umiddelbart noget mønster i hvornår på dagen der sker. Og nogle gange sker det 3 gange inden for en time, andre gange er der mange dage imellem at det sker.
Derfor føler jeg mig ret sikker på at servernes opsætning som sådan er ok - det går trods alt godt ca. 99,7 % af de gange jeg tester - nogle uger 100 %...
Det jeg er ude efter, er hvordan jeg kan fejlfinde på det. Hvordan kan jeg finde årsagen?
Jeg har lige kigget event-loggen igennem for nogle af de tidspunkter hvor jeg ved at fejlen er sket, men der var ikke noget at se i hverken application, system eller security - ikke på nogen af de to servere.
Jeg har ikke nogen log over hvordan RAM/CPU-forbruget var på disse tidspunkter, jeg ved dog at der var relativt højt RAM-forbrug på DB-serveren på et tidspunkt hvor fejlen opstod, men ikke noget nær kritisk - og nuher er det lige sket mens kun 1/10 del af den samme mængde RAM var i brug på DB-serveren, så umiddeåbart tror jeg ikke det er dér det går galt. I hvert fald ikke på DB-serveren.
Jeg kører noget DB-backup hver nat, og det er nok det tidspunkt hvor fejlen oftests opstår, men som sagt, fejlen sker også på mange andre tidspunkter, eksempelvis er det sket 3 gange i dag i løbet af dagtimerne. Det er det eneste der er scheduled, udover en IIS-reset en gang om ugen på web-serveren, men fordi IIS jo er nede på det tidspunkt, kan jeg ikke teste for fejl imens.
Fejlen opstår ikke altid samme sted i koden, det virker tilfældigt hvilket DB-kald den fejler ved. Jeg har lige kigget 10 fejl igennem, og der var kun 2 af dem der skete i samme fil, på samme linje. (Og så voldsomt mange opkald sker der heller ikke på et side-load, så det måtte jo ske to ens steder på et tidspunkt...)
Har du eventuelt mulighed for at se om der er konstant forbindelse mellem de 2 servere? Kunne ske at det var et switch problem, siden der ikke bliver logget andre ting.
Sagt på en anden måde ... ping konstant og se om timeout kommer på samme tidspunkt som de DB fejl.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.