alter olay SESSION (Transact-sql)
Başlatır veya durdurur olay oturumu veya bir olay oturum yapılandırmasını değiştirir.
Transact-SQL Sözdizim Kuralları
Sözdizimi
ALTER EVENT SESSION event_session_name
ON SERVER
{
[ [ { <add_drop_event> [ ,...n] }
| { <add_drop_event_target> [ ,...n ] } ]
[ WITH ( <event_session_options> [ ,...n ] ) ]
]
| [ STATE = { START | STOP } ]
}
<add_drop_event>::=
{
[ ADD EVENT <event_specifier>
[ ( {
[ SET { event_customizable_attribute = <value> [ ,...n ] } ]
[ ACTION ( { [event_module_guid].event_package_name.action_name [ ,...n ] } ) ]
[ WHERE <predicate_expression> ]
} ) ]
]
| DROP EVENT <event_specifier> }
<event_specifier> ::=
{
[event_module_guid].event_package_name.event_name
}
<predicate_expression> ::=
{
[ NOT ] <predicate_factor> | {( <predicate_expression> ) }
[ { AND | OR } [ NOT ] { <predicate_factor> | ( <predicate_expression> ) } ]
[ ,...n ]
}
<predicate_factor>::=
{
<predicate_leaf> | ( <predicate_expression> )
}
<predicate_leaf>::=
{
<predicate_source_declaration> { = | < > | ! = | > | > = | < | < = } <value>
| [event_module_guid].event_package_name.predicate_compare_name ( <predicate_source_declaration>, <value> )
}
<predicate_source_declaration>::=
{
event_field_name | ( [event_module_guid].event_package_name.predicate_source_name )
}
<value>::=
{
number | 'string'
}
<add_drop_event_target>::=
{
ADD TARGET <event_target_specifier>
[ ( SET { target_parameter_name = <value> [ ,...n] } ) ]
| DROP TARGET <event_target_specifier>
}
<event_target_specifier>::=
{
[event_module_guid].event_package_name.target_name
}
<event_session_options>::=
{
[ MAX_MEMORY = size [ KB | MB ] ]
[ [,] EVENT_RETENTION_MODE = { ALLOW_SINGLE_EVENT_LOSS | ALLOW_MULTIPLE_EVENT_LOSS | NO_EVENT_LOSS } ]
[ [,] MAX_DISPATCH_LATENCY = { seconds SECONDS | INFINITE } ]
[ [,] MAX_EVENT_SIZE = size [ KB | MB ] ]
[ [,] MEMORY_PARTITION_MODE = { NONE | PER_NODE | PER_CPU } ]
[ [,] TRACK_CAUSALITY = { ON | OFF } ]
[ [,] STARTUP_STATE = { ON | OFF } ]
}
Bağımsız değişkenler
Terim |
Tanım |
event_session_name |
Varolan olay oturumu addır. |
Devlet = Başlat | DURDUR |
Başlatır veya durdurur olay oturumu. alter olay SESSION olay oturumu nesneye uygulandığında bu bağımsız değişken yalnızca geçerli olur. |
OLAY ekleme <event_specifier> |
Tarafından tanımlanan olay ilişkilendirir <event_specifier>olay oturumu ile. |
[event_module_guid].event_package_name.event_name |
Olay bir olay paket adı burada:
Olaylar görünür sys.dm_xe_objectsgörünüm olarak object_type'olay'. |
SET { event_customizable_attribute = <value>,...n] } |
Olay için özelleştirilebilir özniteliklerini belirtir. Özelleştirilebilir öznitelikleri görünür sys.dm_xe_object_columnsgörünüm olarak column_type'özelleştirilebilir' and object_name = event_name. |
ACTION ( {event_module_guid.event_package_name.action_name,...n] } ) |
Olay oturumu ile ilişkilendirmek için eylem nerede:
Eylemler görünür sys.dm_xe_objectsgörünüm olarak object_type'eylem'. |
Burada <predicate_expression> |
Olay işleneceğini belirlemekte kullanılan Koşul ifadesi belirtir. Eğer <predicate_expression> olayı işlenir doğru eylem ve hedefleri oturumu tarafından. Eğer <predicate_expression> olay bırakılan oturum için eylem ve hedefleri tarafından işlenen önce oturumu tarafından yanlıştır. Doğrulama deyimleri dizesi değişkenleri sınırlar 3000 karakter ile sınırlıdır. |
event_field_name |
Koşul kaynağını tanımlayan olay alan adıdır. |
[event_module_guid].event_package_name.predicate_source_name |
Genel koşul kaynak adı burada:
|
[event_module_guid].event_package_name.predicate_compare_name |
Olayla ilişkilendirmek yüklem nesnenin adıdır nerede:
|
DROP ekleme <event_specifier> |
Tarafından tanımlanan olay damla <event_specifier>. <event_specifier> olay oturumu geçerli olması gerekir. |
Hedef Ekle <event_target_specifier> |
Tanımlanan hedef associates <event_target_specifier>olay oturumu ile. |
[event_module_guid].event_package_name.target_name |
Olay oturumu hedef addır nerede:
|
SET { target_parameter_name = <value>, ...n] } |
Bir hedef parametresini ayarlar. Hedef parametreleri görünür sys.dm_xe_object_columnsgörünüm olarak column_type'özelleştirilebilir' and object_name = target_name.
Önemli
Halka arabelleği hedef kullanıyorsanız, size ayarlamanızı öneririz max_memoryparametresi için 2048 kilobayt (kb) olası veri kesilmesi xml çıkışı önlemek için hedef.Farklı hedef türleri kullanma hakkında daha fazla bilgi için bkz: SQL Server Genişletilmiş olayları hedefleri.
|
Hedef Ekle <event_target_specifier> |
Tanımlanan hedef damla <event_target_specifier>. <event_target_specifier> olay oturumu geçerli olması gerekir. |
EVENT_RETENTION_MODE = { ALLOW_SINGLE_EVENT_LOSS | ALLOW_MULTIPLE_EVENT_LOSS | NO_EVENT_LOSS} |
Olay kaybı işlemek için kullanılacak olay bekletme modu belirtir.
|
MAX_DISPATCH_LATENCY = { secondssaniye | Sonsuz } |
Olaylarını arabelleğe süreyi, olay oturum hedefleri için dağıtılan önce bellekte belirtir. Düşük gecikme süresi değerini 1 saniyedir. Ancak, 0 sonsuz gecikmeyi belirtmek için kullanılır. Varsayılan olarak bu değer 30 saniyeye ayarlanmıştır.
|
MAX_EVENT_SIZE = sizekb |MB |
Olaylara izin verilen boyut üst sınırını belirtir. MAX_EVENT_SIZE yalnızca tek olaylar max_memory daha büyük izin ayarlamanız gerekir; Bunun için max_memory bir hata yükseltmek daha az ayarlama. sizetam sayı ve kilobayt (kb) veya megabayt (mb) değeri olabilir. Eğer sizebelirtilen kilobayt cinsinden en az izin verilen boyutu 64 KB'dir. MAX_EVENT_SIZE ayarlandığında, iki arabellekleri sizemax_memory yanı sıra oluşturulur. Bu olay arabelleğe alma için kullanılan toplam bellek max_memory + 2 demektir * MAX_EVENT_SIZE. |
MEMORY_PARTITION_MODE = { yok | PER_NODE | PER_CPU} |
Olay arabellekleri oluşturulduğu konumu belirtir.
PER_NODEArabellekleri kümesi, her numa düğüm için oluşturulur.
PER_CPUArabellekleri kümesi her cpu için oluşturulur.
|
TRACK_CAUSALITY = {on | OFF } |
Nedensellik izlenir olup olmadığını belirtir. Etkinleştirilirse, nedensellik ilgili olayları birbirine korelasyon için farklı bir sunucu bağlantıları sağlar. |
startup_state = {on | OFF } |
Bu olay oturumu otomatik olarak başladığında olup olmadığını belirtir SQL Serverbaşlar.
Not
Eğer startup_state = on, olay oturumu olacak sadece başlangıç, SQL Serverdurdurulur ve yeniden başlatılır.
TerimTanım
ONBaşlangıçta olay oturum başlatılır.
OFFBaşlangıçta olay oturum başlamadı.
|
Açıklamalar
add ve drop bağımsız değişkenleri aynı deyiminde kullanılamaz.
İzinler
alter any event oturum izni gerektirir.
Örnekler
Aşağıdaki örnek olay oturumu başlatır, bazı canlı oturum istatistikleri ve sonra iki olay varolan oturuma ekler.
-- Start the event session
ALTER EVENT SESSION test_session
ON SERVER
STATE = start
GO
-- Obtain live session statistics
SELECT * FROM sys.dm_xe_sessions
SELECT * FROM sys.dm_xe_session_events
GO
-- Add new events to the session
ALTER EVENT SESSION test_session ON SERVER
ADD EVENT sqlserver.database_transaction_begin,
ADD EVENT sqlserver.database_transaction_end
GO
-- Start the event session
ALTER EVENT SESSION test_session
ON SERVER
STATE = start
GO
-- Obtain live session statistics
SELECT * FROM sys.dm_xe_sessions
SELECT * FROM sys.dm_xe_session_events
GO
-- Add new events to the session
ALTER EVENT SESSION test_session ON SERVER
ADD EVENT sqlserver.database_transaction_begin,
ADD EVENT sqlserver.database_transaction_end
GO
Ayrıca bkz.
Başvuru
OLAY SESSION (Transact-sql) oluştur
drop olay SESSION (Transact-sql)
sys.server_event_sessions (Transact-sql)
sys.dm_xe_objects (Transact-sql)
sys.dm_xe_object_columnsWHERE (Transact-sql)