Aracılığıyla paylaş


sp_add_alert (Transact-SQL)

Bir uyarıoluşturur.

Konu bağlantısı simgesiTransact-SQL sözdizimi kuralları

Sözdizimi

sp_add_alert [ @name = ] 'name' 
     [ , [ @message_id = ] message_id ] 
     [ , [ @severity = ] severity ] 
     [ , [ @enabled = ] enabled ]
     [ , [ @delay_between_responses = ] delay_between_responses ] 
     [ , [ @notification_message = ] 'notification_message' ] 
     [ , [ @include_event_description_in = ] include_event_description_in ] 
     [ , [ @database_name = ] 'database' ] 
     [ , [ @event_description_keyword = ] 'event_description_keyword_pattern' ] 
     [ , { [ @job_id = ] job_id | [ @job_name = ] 'job_name' } ] 
     [ , [ @raise_snmp_trap = ] raise_snmp_trap ] 
     [ , [ @performance_condition = ] 'performance_condition' ] 
     [ , [ @category_name = ] 'category' ] 
     [ , [ @wmi_namespace = ] 'wmi_namespace' ]
     [ , [ @wmi_query = ] 'wmi_query' ]

Bağımsız değişkenler

  • [ @name =] 'name'
    uyarıadı.uyarıyanıt gönderilen e-posta ya da çağrı iletisi adı görüntülenir.Benzersiz olmalıdır ve yüzde içerebilir (%) karakteri.nameİş sysname, ile hiçbir varsayılan.

  • [ @ message_id = ]message_id
    uyarıtanımlayan ileti hata numarası.(Genellikle bir hata numarası için karşılık sysmessages tablo.) message_id is int, with a default of 0.severity uyarıtanımlamak için kullanılan message_id olması 0 veya null.

    Not

    Yalnızca sysmessages Microsoft Windows Uygulama günlüğüne hata gönderilecek uyarı neden olabilir.

  • [ @ önem =] severity
    Önem düzey (dan 1 ile 25), uyarıtanımlar.Tüm SQL Server depolanmış ileti sysmessages gönderilentablo Microsoft gösterilen önem derecesi, Windows Uygulama günlüğüne gönderilecek uyarı neden oluyor. severityİş int, varsayılan değer 0.message_id uyarıtanımlamak için kullanılan severity olması 0.

  • [ @ Etkin =] enabled
    uyarıgeçerli durumunu gösterir.enabledİş tinyint, varsayılan değer 1 (etkin).0, uyarı etkin değildir ve yangın değil.

  • [ @ delay_between_responses =] delay_between_responses
    uyarıyanıtları arasındaki, saniye cinsinden bekleme süresi.delay_between_responsesİş int, varsayılan değer 0, yanıtları (geçtiği uyarı yanıt oluşturur) arasında hiçbir bekleme yok anlamına gelir.Yanıt biri veya ikisi birden bu formlar olabilir:

    • E-posta veya çağrı cihazı gönderilen bir veya daha fazla bildirim.

    • Bir iş yürütmek.

    Bu değer ayarlayarak, örneğin, uyarı tekrar tekrar saatoluştuğunda gönderilen istenmeyen e-posta iletilerinin önlemek mümkündür.

  • [ @ notification_message =] 'notification_message'
    İsteğe bağlı bir ek iletisi için işleç e-posta, bir parçası olarak gönderilen net send, veya çağrı cihazı bildirim.notification_messageİş nvarchar(512), varsayılan değer null.Belirtme notification_message yarar gibi özel notlar eklemek içinremedial yordamları.

  • [ @ include_event_description_in =] include_event_description_in
    Olduğu olup olmadığını açıklaması SQL Server hata olması gereken dahil parçası olarak bildirim iletisi.include_event_description_in* *İş tinyint, varsayılan değer 5 (e-posta ve net send) ve bir veya daha fazla bu değerleri birlikte bir or mantıksal işleç.

    Önemli notÖnemli

    Çağrı cihazı ve net send seçenekleri kaldırıldı dan SQL Server Aracısı, gelecekteki bir sürüm Microsoft SQL Server.Yeni geliştirme çalışması bu özellikleri kullanmaktan kaçının ve şu anda bu özellikleri kullanan uygulamaları değiştirmek plan.

    Değer

    Açıklama

    0 (varsayılan)

    Hiçbiri

    1

    E-posta

    2

    Çağrı cihazı

    4

    net send

  • [ @ veritabanı_adı =] 'database'
    Veritabanı hata yangın uyarı için gerçekleşmesi gerekir.databaseSağlanmayan, uyarı harekete hatanın oluştuğu olsun.databaseis sysname.Ayraç ([]) içine adları izin verilmez.Varsayılan değer null olur.

  • [ @ event_description_keyword =] 'event_description_keyword_pattern'
    Dizi karakterleri açıklaması SQL Server hata olması gibi.Transact-SQLifade desen eşleştirme karakterleri kullanılabilir gibi.event_description_keyword_patternİş nvarchar(100), varsayılan değer null.Bu parametre, nesne adları süzmek için yararlıdır (örneğin, % customer_table %).

  • [ @ job_id =] job_id
    Bu uyarıyanıt çalışmasını iş iş tanımlama numarası.job_idİş uniqueidentifier, varsayılan değer null.

  • [ @ job_name =] 'job_name'
    Bu uyarıyanıt yürütülecek iş adı.job_nameİş sysname, varsayılan değer null.

    Not

    Ya da job_id veya job_name belirtilmesi gerekir, ancak her ikisi de belirtilemez.

  • [ @ raise_snmp_trap =] raise_snmp_trap
    Uygulanan değil SQL Server sürüm 7.0.raise_snmp_trapİş tinyint, varsayılan değer 0.

  • [ @ performance_condition =] 'performance_condition'
    Biçiminde ifade edilen değer 'itemcomparatorvalue'.performance_conditionolan nvarchar(512) , null varsayılan değer ve oluşan bu öğeleri.

    Biçim öğesi

    Açıklama

    Item

    Performans nesnesi, performans sayaç veya sayaç adlandırılmış örnek

    Comparator

    Bu işleçlerden birini: >, <, or =

    Value

    Sayaç sayısal değer

  • [ @ category_name =] 'category'
    uyarı kategori adı.categoryİş sysname, varsayılan değer null.

  • [ @ wmi_namespace=] 'wmi_namespace'
    WMI ad alanı sorgulamak için olayları.wmi_namespaceİş sysname, varsayılan değer null.Yalnızca yerel sunucuda ad desteklenir.

  • [ @ wmi_query=] 'wmi_query'
    WMIolay uyarıbelirten sorgu. wmi_queryİş nvarchar(512), varsayılan değer null.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (başarısız)

Sonuç Kümeleri

Hiçbiri

Açıklamalar

sp_add_alert dan çalıştırılması gereken msdb veritabanı.

Tarafından oluşturulan hatalar/iletileri koşullarda bunlar SQL Server ve SQL Server uygulamalar Windows Uygulama günlüğüne gönderilir ve bu nedenle uyarıları yükseltebilirsiniz:

  • 19 Veya daha yüksek önem sys.messages hataları

  • BİRLİKTE günlük sözdizimi ile çağrılan herhangi RAISERROR deyim

  • Tüm sys.messages hata kullanılarak oluşturulan veya değiştirilme sp_altermessage

  • Kullanarak oturum açmış herhangi bir olay xp_logevent

SQL Server Management Studiouyarı alt yapısını yapılandırmak için önerilen yoldur ve tüm alerting sistemini yönetmek için kolay ve grafiksel bir yol sağlar.

uyarı düzgün çalışmıyorsa, denetimi olup olmadığını:

  • SQL Server , Aracısı hizmet çalışıyor.

  • Windows Uygulama günlüğüne olay göründü.

  • uyarı etkindir.

  • İle oluşturulan olayları xp_logevent asıl veritabanıoluşur.Bu nedenle, xp_logevent bir uyarı sürece tetiklemez @ veritabanı_adı uyarı için 'ana' veya null.

İzinler

Varsayılan olarak, yalnızca üyeleri sysadmin sabit sunucu rolü için yürütmek sp_add_alert.

Örnekler

Aşağıdaki örnek, çalışan bir uyarı (Test uyarı) ekler Back up the AdventureWorks2008R2 Databaseharekete zamaniş .

Not

Bu örnek varsayar 55001 ileti ve Back up the AdventureWorks2008R2 Database iş zaten mevcut.Amaçlarla yalnızca örnek gösterilmiştir.

USE msdb ;
GO

EXEC dbo.sp_add_alert
    @name = N'Test Alert',
    @message_id = 55001, 
   @severity = 0, 
   @notification_message = N'Error 55001 has occurred. The database will be backed up...', 
   @job_name = N'Back up the AdventureWorks2008R2 Database' ;
GO