Aracılığıyla paylaş


Nasıl yapılır: Olayları genişletilmiş İzleyicisi Sistem etkinliğini kullanma

Bu yordam, nasıl genişletilmiş olayları olay izleme için Windows (etw ile) sistem etkinliğini izlemek için kullanılabileceğini göstermektedir.Yordam ayrıca olay oluşturma OTURUMU, alter olay OTURUMU ve drop olay OTURUMU ifadelerini nasıl kullanıldığını gösterir.

Bu görevlerin yerine getirilmesi ile ilgilidir, Query Editor kullanarak SQL Server Management Studio için yerine getirmesi gereken aşağıdaki yordamı.Yordam için etw komutları çalıştırmak için komut istemi istemini kullanarak da gerekir.

Genişletilmiş olayları kullanarak sistem etkinliğini izlemek için

  1. Sorgu Düzenleyicisi'nde, bir olay oturum oluşturmak ve iki olay eklemek için aşağıdaki deyimleri çıkış.Bu olaylar, checkpoint_begin ve checkpoint_end, başında ve sonunda bir veritabanı denetim noktası tetikleyin.

    CREATE EVENT SESSION test0
    ON SERVER
    ADD EVENT sqlserver.checkpoint_begin,
    ADD EVENT sqlserver.checkpoint_end
    WITH (MAX_DISPATCH_LATENCY = 1 SECONDS)
    go
    
  2. Veritabanı kimliği temel alınarak denetim noktalarının sayısını saymak için 32 demetleri ile bucketing hedef ekleme

    ALTER EVENT SESSION test0
    ON SERVER
    ADD TARGET package0.asynchronous_bucketizer
    (
          SET slots = 32, filtering_event_name = 'sqlserver.checkpoint_end', source_type = 0, source = 'database_id'
    )
    go
    
  3. etw hedef eklemek için aşağıdaki deyimleri çıkış.Bu, olayları, denetim noktası ne kadar sürer belirlemek için kullanılan bitiş ve başlangıç görmek olanak sağlar.

    ALTER EVENT SESSION test0
    ON SERVER
    ADD TARGET package0.etw_classic_sync_target
    go
    
  4. oturum başlatmak ve olay koleksiyon başlamak için aşağıdaki deyimleri çıkış.

    ALTER EVENT SESSION test0
    ON SERVER
    STATE = start
    go
    
  5. Üç olayları ateşlenmesine neden için aşağıdaki deyimleri çıkış.

    USE tempdb
          checkpoint
    go
    USE master
          checkpoint
          checkpoint
    go
    
  6. Olay sayımlarını görüntülemek için aşağıdaki deyimleri çıkış.

    SELECT CAST(xest.target_data AS xml) Bucketizer_Target_Data_in_XML
    FROM sys.dm_xe_session_targets xest
    JOIN sys.dm_xe_sessions xes ON xes.address = xest.event_session_address
    JOIN sys.server_event_sessions ses ON xes.name = ses.name
    WHERE xest.target_name = 'asynchronous_bucketizer' AND xes.name = 'test0'
    go
    
  7. komut istemi isteminde, aşağıdaki komutları etw verileri görüntülemek için çıkış.

    Not

    Yardım almak için tracerpt komut istemi istemine komutu girin tracerpt /?.

    logman query -ets --- List the ETW sessions. This is optional.
    logman update XE_DEFAULT_ETW_SESSION -fd -ets --- Flush the ETW log.
    tracerpt %temp%\xeetw.etl -o xeetw.txt --- Dump the events so they can be seen.
    
  8. Olay oturum durdurun ve sunucudan kaldırmak için aşağıdaki deyimleri çıkış.

    ALTER EVENT SESSION test0
    ON SERVER
    STATE = STOP
    go
     
    DROP EVENT SESSION test0
    ON SERVER
    go