SQL Agent bildirimlerini Kullanarak Job’larınızı Güvende Tutun

SQL Agent bildirimlerini Kullanarak Job’larınızı Güvende Tutun SQL Server Agent, SQL Server içinde çok çeşitli görevleri çalıştırmanıza izin verir. built-in notification system, operatörleri tanımlamanıza ve bir iş başarısız olduğunda onlarla iletişim kurmanıza olanak tanır. Bir Agent job başarısız olduğunda bunu hızlı bir şekilde çözebilmek, başka birinin size başarısız olduğunu bildirmesinden daha iyidir. Bildirim olmadan tüm…

May 5, 2021 by Aryasoft IT

SQL Agent bildirimlerini Kullanarak Job’larınızı Güvende Tutun

SQL Server Agent, SQL Server içinde çok çeşitli görevleri çalıştırmanıza izin verir.

built-in notification system, operatörleri tanımlamanıza ve bir iş başarısız olduğunda onlarla iletişim kurmanıza olanak tanır.

Bir Agent job başarısız olduğunda bunu hızlı bir şekilde çözebilmek, başka birinin size başarısız olduğunu bildirmesinden daha iyidir.

Bildirim olmadan tüm Agent jobları nasıl listelenir?

İş adı listesini almak için aşağıdaki TSQL kodunu kullanabilirsiniz.

 

SELECT j.[name] AS [JobName]

FROM [msdb].[dbo].[sysjobs] j

LEFT JOIN [msdb].[dbo].[sysoperators] o

ON (j.[notify_email_operator_id] = o.[id])

WHERE j.[enabled] = 1

AND j.[notify_level_email] NOT IN (1, 2, 3)

Sorun nasıl çözülür?

Öncelikle, Veritabanı postasını ve bir operatörü yapılandırdığınızdan emin olun.

Ardından, iş hatası bildirimini etkinleştirmek için SQL Server Agent işini güncelleyin:

  1. SQL Server Management Studio’yu (SSMS) açın.
  2. SQL Server Agent’a tıklayın, jobları genişletin ve sağ tıklayın.
  3. Bildirimler sekmesine gidin ve E-postayı etkinleştirmek için tıklayın.
  4. Doğru Operatörü seçin ve “job failed olduğunda” öğesini seçin.

E-posta bildirimi olmayan tüm işler için değişiklik komut dosyası oluşturmak üzere aşağıdaki TSQL komut dosyasını da kullanabilirsiniz. @notify_email_operator_name öğesini yalnızca gerektiği şekilde değiştirin.

USE MSDB

GO

SELECT

‘EXEC msdb.dbo.sp_update_job @job_name=[‘ + name + ‘],

@notify_level_email=2,

@notify_email_operator_name=N”DBA Alerts”;

‘ Command_to_execute

FROM MSDB.dbo.sysjobs

WHERE [Notify_Level_Email] = 0

AND [Enabled] = 1

Komut dosyasının örnek olarak üreteceği çıktı:

EXEC msdb.dbo.sp_update_job @job_name=[JOBNAME1],

@notify_level_email=2,

@notify_email_operator_name=N’DBA Alerts’;

 

EXEC msdb.dbo.sp_update_job @job_name=[JOBNAME2],

@notify_level_email=2,

@notify_email_operator_name=N’DBA Alerts’;

 

EXEC msdb.dbo.sp_update_job @job_name=[JOBNAME3],

@notify_level_email=2,

@notify_email_operator_name=N’DBA Alerts’;

Değişikliği uygulamak için çıktı betiğini gözden geçirin ve çalıştırın.

Size ve Veritabanlarınıza Yardımcı Olmak İçin Bekliyoruz!