MSSQL Server  Agent Error Log Dosyaları

Bu makalede Sql Server Agent Error Log dosyalarında gerekli bazı konfigürasyonları yapmamız gerekiyor. Error log dosyaları sql agent’ı analiz etmek için bize sunulan önemli bir sql server bileşenidir. Default olarak sql server agent  error log dosyaları minumum 1 maksimum 9 file den oluşmaktadır. Bunlardan current olan error log dosyası mevcutta aktif olan error log dosyasını göstermektedir. Geriye kalan  error log dosyaları arşiv olarak kullanılmaktadır.  Sql server database engine error logları gibi  default bir error log set edilemez. Sql Server Agent servisi her restart veya recycle olduğunda son sırada olan error log dosyası silinir yeni error log dosyası oluşmaktadır.

Sql agent error log genellikle sql agent durumunu ilgilendiren error’ları toplamaktadır. Job veya başka işlemlerle ilgili error toplamaz.

Bazen bu log klasörlerimiz aşırı derece dolduğu için okumamız zorlanır bunun için yeni bir error log dosyası oluşturma gereği duyarız. Bunun için sql server agent servisimizi restart veya recycle stored procedure ile bu işlemleri yapabiliriz.  Sql server agent servisini restart etmemiz başka joblarımızın çalışmasını engelleyebileceği için aşağıdaki stored procedure kullanırız.

EXEC msdb.dbo.sp_cycle_agent_errorlog;

Procedure çalıştırdığımızda yeni olan sql server agent error log dosyasının eklediğini görmüş oluyoruz.

Bu stored procedure kullanmayıp Error Logs klasörüne sağ tıklayıpda Recycle işlemi yapabiliriz.

Son olarak şunu belirtmek gerekirse sql agent loglarını sql server’ın kurulu olduğu klasör içinden görebiliriz. Aktif olarak çalışan current ifadesi SQLAGENT.OUT  olarak son sırada görülmektedir. Diğer klasörlerde agent olarak görülmektedir.

Sql agent log dosyasının komutunu iki yöntemle değiştirebiliriz. Birinci yöntem komut satırı ile değiştirebiliriz. İkinci yöntem ise Registery üzerinden değişim işlemi yapmış oluruz.

1.Yöntem

USE msdb;
GO

-- Mevcut ayarı kontrol et
EXEC dbo.sp_get_sqlagent_properties;
GO

-- Log dosya konumunu değiştir
EXEC msdb.dbo.sp_set_sqlagent_properties 
    @errorlog_file = N'E:\SQLAgentLogs\SQLAGENT.OUT';
GO

2.Yöntem

Ayrıca Configuration manager ekranından ilgili bölümün düzeltilmesi gerekmektedir.

Error log dosyasını okumak için bir başka kullanılacak komut aşağıda belirtilmiştir. Bu komut ile hangi ifade aranmak isteniyorsa tırnak içerisine yazılabilir.

exec sp_readerrorlog 0,2,N'Login Failed'

Yukarıdaki kod parçasında 0 = geçerli günlük dosyası 1= bir ilk arşiv dosyası 2= 2. Arşiv dosyasını okuyacağımızı belirtmekteyiz. Virgülden sonraki ikinci kısımda ise 1 = SQL Server error log, 2 = SQL Server Agent günlüğünü belirtmektedir.

Bu makalede Sql Server Agent servisi altında bulunan error logsları işleme almış olduk.

Başka bir makalede görüşmek dileğiyle..

“Hiçbir şey O’na denk ve benzer değildir.”İhlâs ﴾4﴿

Author: Yunus YÜCEL

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir