Sql Agent Job Oluşturulurken Output file Oluşturmak

Bazen kullanıcılar herhangi bir index veya backup job’ı tanımladıktan sonra job’ın başarısız olduğunda command log tablosunda herhangi bir şey görülmez. Jobın çalışmasında bir sıkıntı varsa görünür ama kill veya sistemsel herhangi bir durumda görülmez. Aşağıdaki resim ola hallengren scriptleri sonucu oluşmuş command log tablosundan çalışmış olan index joblarımızda hatamızın sebebini göremeyiz.

Sql server error log’una baktığımızda sadece ilgili saat diliminde yaşanan sorunu görebiliriz. Ama job altında oluşturacağımız output file ile genel olarak sorunun neden kaynaklandığını kaydettiği txt içerisinde görmüş olacağız.

İlgili step’in advanced bölümünde output file kısmı ilgili jobın çalışma durumunu txt uzantısına yazmaktadır. Ola hallengrenn scriptlerin de de ilgili yapı mevcuttur. Ola hallengren scriptlerini çalıştırdıktan sonra Output File Cleanup adında oluşan txt’leri silmek için bir job da oluşmaktadır. Komutun başlangıç kısmına ilgili klasörün disk uzantısının yazılması gerekmektedir.

İlgili dizin: Sadece başlangıç kısmına dosya uzantısının(M:\YEDEK7\OlaOutput\) eklenmesi gerekmektedir. Diğer ifadeler default olan ifadeler.

M:\YEDEK7\OlaOutput\$(ESCAPE_SQUOTE(JOBNAME))_$(ESCAPE_SQUOTE(STEPID))_$(ESCAPE_SQUOTE(DATE))_$(ESCAPE_SQUOTE(TIME)).txt

Ola hallengren scriptlerinde Output File Cleanup adında job oluşur. Bu job ilgili klasördeki txt uzantılarını silmektedir. Bir zamanlayıcı ayarlanarak belirli aralıklarla silinebilir. Bu script default olarak gelmektedir. Sadece dosya uzantısının(M:\YEDEK7\OlaOutput) eklenmesi gerekmektedir. Scheduler ile her gün belirli bir anda çalıştırılabilir.

cmd /q /c "For /F "tokens=1 delims=" %v In ('ForFiles /P "M:\YEDEK7\OlaOutput" /m _.txt /d -30 2^>^&1') do if EXIST "M:\YEDEK7\OlaOutput"\%v echo del "M:\YEDEK7\OlaOutput"\%v& del "M:\YEDEK7\OlaOutput"\%v"

Bu işlemlerden sonra artık Output file etkilendirilmiş bir jobımızın kaydetmiş olduğu txt ifadeleri Output File Cleanup jobıyla belirli aralıklarla silinmektedir.

Ola Hallengren scriptlerini çalıştırmadan önce OutputFileDirectory kısmı manuel bir şekilde ayarlanabilir. Script create edilirken yapılmaktadır.

Herhangi bir path belirtilmezse sql server default olan sql server error log dosya uzantısına kaydetmektedir.

Yukarıda resimde görüldüğü gibi scriptimiz çalıştırılırsa bakım joblarının output file kısmı belirlediğimiz şekilde olmaktadır. Yeni bir job oluşturacağımız zaman değerler manuel verilmektedir. Ola hallengren bakım joblarında bu değer aktif olmaktadır.

Ola hallengren jobları dışında normal bir job oluşturursak boş bir şekilde gelmektedir.

Olahallengren scriptleriyle gelen Output File Cleanup jobı temizleme işlemini belirli aralıktan sonra ilgili dizin altında kontrol yapıldıktan sonra temizlenen txt’lerin silindiğini görmüş oluyoruz.

Bu makalede output file konusunu detaylı bir şekilde görmüş olduk.

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

Gündüzün iki tarafında ve gecenin (gündüze) yakın saatlerinde namazı kıl. Şüphesiz iyilikler, kötülükleri giderir. Bu, öğüt alanlara bir öğüttür. Hud Suresi, 114. Ayet

Author: Yunus YÜCEL

Bir yanıt yazın

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