Could you hire me? Contact me if you like what I’ve done in this article and think I can create value for your company with my skills.

February 16, 2011 / by Zsolt Soczó

SQL Server Profilerben TSQL hibák vizsgálata

SQL tanfolyamot tartok egy cégnél (.NET 4-et és Design Patternst meg egy másiknál :). Az oktatások arra jók, hogy mindig rájövök mit nem tudok, így aztán van módom újat tanulni. Azt meg általában szeretek. :)

Na szóval, ha a szerver oldalon történik egy exception valamilyen sql parancs végrehajtási hiba következtében, akkor ez szépen látszik a profilerben, csak az nem, mi váltotta ezt ki.
Most lapozgattam az Inside Microsoft SQL Server 2005: Query Tuning and Optimization könyvet, és ott belefutottam a megoldásba.
Nem csak az Errors And Warnings: Exception eseményt kell bekapcsolni, hanem a User Error Message-et is.
.
A képen látható, az EventSequenceből szépen összerakható az események egymásutánisága.
Ez megint egy olyan apró kérdés volt, amit 5 perc guglizás megold, de hát nem ilyenekkel van tele az ember feje?

Could you hire me? Contact me if you like what I’ve done in this article and think I can create value for your company with my skills.

LEAVE A COMMENT

2 COMMENTS

  • Morzel February 16, 2011

    Ezt nem értem. Elvileg a Transact SQL scriptnek az errorjának nem ugyanezt kellene kiírnia?

    Mi vaolt a hibaüzenet az adott esetben?

    Vagy alapból nem logolták a hibákat és utólag jutott az eszükbe indítani a profilert?

    Mindenesetre amint lesz időm, kipróbálom. De nekem akkor is úgy rémlik hogy egy ilyen hibánál ugyanez a hibaüzenet fogad sql oldalon is.
    Vagy olyan architektúrájuk volt hogy a C# oldal elnyelte az sql hibaüzenetet?

    Morzel

  • Soczó Zsolt February 18, 2011

    Arra kell gondolni, hogy fut sok app ami használja az SQL Servert, többé-kevésbé értelmes hibakezeléssel. Tisztán szerveroldalon traceelve szeretnénk pontosan felderíteni mi okoz hibát, amit persze a kliens úgyis megél valamilyen exceptionként, csak max. lenyelik.
    Amit a profilerben látunk az nyilván ugyanaz az infó, mint ami az SqlExeptionben látszik mondjuk .netből.