2013-04-23 50 views
1

我需要在用戶登錄和註銷SQL SERVER時監控應用程序,因爲有時應用程序會意外記錄日誌,我需要知道是因爲我審覈了登錄和註銷。 當我使用SQL Server Profiler時,EventClass列出現「Audit Login」和「Audit Logout」。有沒有辦法在C#中獲得這些SQL Server Profiler事件?在c#中檢測EventClass審覈登錄/註銷

感謝和問候。

+0

sql server的哪個版本? – StrayCatDBA 2013-04-24 02:36:26

+0

SQL SERVER 2005,但後來將遷移到SQL SERVER 2012.所以我認爲它應該適用於任何版本的SQL SERVER。 – 2013-04-24 16:46:08

+0

我問的原因是因爲sql 2008引入了比探查器或服務器端跟蹤更高性能的擴展事件。當你到SQL 2012時,重寫這個以使用擴展事件可能是值得的。 – StrayCatDBA 2013-04-25 01:51:59

回答

0

您需要創建一個捕獲感興趣的事件和列的服務器端跟蹤。您可以將其創建爲探查器並將其另存爲創建腳本。

您的c#程序可以使用fn_trace_gettable()系統函數查詢跟蹤。

您需要特別注意跟蹤定義中的翻轉文件的設置。填充磁盤驅動器通常不是好事。