SQL Server User Log...
 
Bildirimler
Hepsini Temizle

SQL Server User Login & Logout Time Log Problemi  

  RSS
conqueror
(@conqueror)
Üye

Merhaba kolay gelsin ben sql serverda kullanıcının login ve logout olduğu zamanları kendi oluşturduğum bir tabloda tutmak istiyorum.

Login olduğu zamanı sysprocess tablosundan veya kullandığım programdan direk alabiliyorum fakat kullanıcının logout olma durumunu sysprocess'ten alamıyorum çünkü o kayıt silinmiş oluyor. sysprocesses'e trigger da eklenemiyor bildiğiniz gibi system nesnesi olduğu için. Kullandığım programda kapanırken alma şansım vardı onda da kullanıcı görev yöneticisinden işlemi sonlandırdığında işlem yarım kalmakta dolayısıyla ordan da alamıyorum.

 SQL üzerinde bu bilgileri alma şansımız nedir daha önce benzer bi uygulama yapan oldu mu ? 

Alıntı
Gönderildi : 07/05/2012 15:23
Mehmet GÜZEL
(@mehmetguzel)
Üye

Merhaba,

Logon işlemini Logon trigger ile halledebilirsiniz. Logon trigger kodlarken ve üretim ortamına alırken dikkat etmenizi tavsiye ederim(Olası kötü senaryolara karşı DAC ı açmak, açık connection bırakmak, yetkili yedek bir kullanıcı bulundurmak bunlardan sadece birkaçı).

Hem logon hem logout işlemlerini Trace ile yakalayabilirsiniz. Server side trace açıp istediğiniz filtreye göre olan kayıtları bir tabloda yada bir dosyada tutabilirsiniz.

CevapAlıntı
Gönderildi : 08/05/2012 14:37
conqueror
(@conqueror)
Üye

İlginize teşekkür ederim Mehmet Bey fakat şöyle bir durum söz konusu aslında benim yapmaya çalıştığım şey bir kullanıcının programımı ne zaman açtığı ve ne zaman kapattığını bilmek. Ne zaman açtığında problem yok fakat kullanıcı programı görev yöneticisinden kestiğinde ne zaman kapandı bilgisini alamıyorum. Hal böyle olunca trace file ve service broker yöntemleri her kurulum yapılan yerde yapılması gereken işlem haline dönüyor. 

DDL trigger ları ile alakalı olarak da logoff işlemine ait herhangi bir bilgiye rastlayamadım. Logon için hazır örneklerim bile mevcut fakat logoff olayı için event notification yordamını araştırdım ordada sanırım ben yetersiz kaldım. Bu arada yanlış bilmiyor isem SQL 2000 DDL triggerlarını desteklemiyor.

CevapAlıntı
Gönderildi : 08/05/2012 16:43
Mehmet YAYLA
(@mehmetyayla)
Üye

Bu arada hatırlatmakta fayda var ; Mehmet GÜZEL Türkiye'deki SQL üstadlarından biridir 🙂

CevapAlıntı
Gönderildi : 08/05/2012 18:10
Mehmet GÜZEL
(@mehmetguzel)
Üye

Logon trigger bildiğim kadarıyla SQL Server 2005 SP2 ile birlikte geldi, SQL Server 2000 de yoktu.

Uygulamanızın logout event'ında bu istediğinizi yapamıyor musunuz?

CevapAlıntı
Gönderildi : 08/05/2012 18:15
Mehmet GÜZEL
(@mehmetguzel)
Üye

[quote user="MehmetYAYLA"]Bu arada hatırlatmakta fayda var ; Mehmet GÜZEL Türkiye'deki SQL üstadlarından biridir :)[/quote]

Est. üstadlık nerde biz nerde; biz olsa olsa talep eden oluruz yani her daim talebeyiz:)

CevapAlıntı
Gönderildi : 08/05/2012 18:18
conqueror
(@conqueror)
Üye

hocam uygulama task manager'dan sonlandırıldığında event falan hak getire 🙂

CevapAlıntı
Gönderildi : 08/05/2012 19:44
Paylaş: