Bagikan melalui


Memantau Analysis Services dengan SQL Server Extended Events

Berlaku untuk: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Extended Events (xEvents) adalah sistem pelacakan ringan dan pemantauan performa yang menggunakan sangat sedikit sumber daya sistem, menjadikannya alat yang ideal untuk mendiagnosis masalah pada server produksi dan pengujian. Ini juga sangat dapat diskalakan, dapat dikonfigurasi, dan pada SQL Server 2016, lebih mudah digunakan melalui dukungan alat bawaan baru. Di SQL Server Management Studio (SSMS), pada koneksi ke instans Analysis Services, Anda dapat mengonfigurasi, menjalankan, dan memantau jejak langsung, mirip dengan menggunakan SQL Server Profiler. Penambahan alat yang lebih baik harus membuat xEvents menjadi pengganti yang lebih masuk akal untuk SQL Server Profiler dan menciptakan lebih banyak simetri dalam cara Anda mendiagnosis masalah dalam mesin database dan beban kerja Analysis Services Anda.

Selain SQL Server Management Studio, Anda juga dapat mengonfigurasi SQL Server Analysis Services sesi Extended Event dengan cara lama, melalui pembuatan skrip XMLA, seperti yang didukung dalam rilis sebelumnya.

Semua peristiwa Analysis Services dapat ditangkap dan ditargetkan untuk konsumen tertentu, seperti yang didefinisikan dalam Extended Events.

Menggunakan SSMS untuk mengonfigurasi Analysis Services

Untuk instans tabular dan multidmensional, SSMS menampilkan folder Manajemen yang berisi sesi xEvent yang dimulai pengguna. Anda dapat menjalankan beberapa sesi sekaligus. Namun, dalam implementasi saat ini, antarmuka pengguna SQL Server Analysis Services Extended Events tidak mendukung pembaruan atau pemutaran ulang sesi yang ada.

Folder Manajemen tidak didukung saat menggunakan SSMS untuk menyambungkan ke ruang kerja Power BI Premium.

ssas_extended_events_ssms_start ssas_extended_events_ssms_start

Pilih peristiwa

Jika Anda sudah mengetahui peristiwa mana yang ingin Anda ambil, mencarinya adalah cara term mudah untuk menambahkannya ke pelacakan. Jika tidak, peristiwa berikut umumnya digunakan untuk operasi pemantauan:

  • CommandBegin dan CommandEnd.

  • QueryBegin, QueryEnd, dan QuerySubcubeVerbose (memperlihatkan seluruh kueri MDX atau DAX yang dikirim ke server), ditambah ResourceUsage untuk statistik pada sumber daya yang digunakan oleh kueri dan berapa banyak baris yang dikembalikan.

  • ProgressReportBegin dan ProgressReportEnd (untuk operasi pemrosesan).

  • AuditLogin dan AuditLogout (menangkap identitas pengguna tempat aplikasi klien terhubung ke Analysis Services).

Pilih penyimpanan data

Sesi dapat di-streaming langsung ke jendela di Management Studio atau disimpan ke file untuk analisis berikutnya menggunakan Power Query atau Excel.

  • event_file menyimpan data sesi dalam file .xel.

  • event_stream mengaktifkan opsi Tonton Data Langsung di Management Studio.

  • ring_buffer menyimpan data sesi dalam memori selama server berjalan. Pada menghidupkan ulang server, data sesi dibuang

Menambahkan bidang peristiwa

Pastikan untuk mengonfigurasi sesi untuk menyertakan bidang peristiwa sehingga Anda dapat dengan mudah melihat informasi yang menarik.

Konfigurasikan adalah opsi di sisi jauh kotak dialog.

Cuplikan layar kotak dialog dengan opsi konfigurasi disorot di sisi kanan kotak.

Dalam konfigurasi, pada tab Bidang Peristiwa, pilih TextData sehingga bidang ini tampak berdekatan dengan peristiwa, memperlihatkan nilai pengembalian, termasuk kueri yang dijalankan di server.

Setelah mengonfigurasi sesi untuk peristiwa dan penyimpanan data yang diinginkan, Anda dapat mengklik tombol skrip untuk mengirim konfigurasi Anda ke salah satu tujuan yang didukung termasuk file, kueri baru di SQL Server Management Studio, dan clipboard.

Segarkan Sesi

Setelah Anda membuat sesi, pastikan untuk me-refresh folder Sesi di Management Studio untuk melihat sesi yang baru saja Anda buat. Jika Mengonfigurasi event_stream, Anda dapat mengklik kanan nama sesi dan memilih Tonton Data Langsung untuk memantau aktivitas server secara real time.

Skrip XMLA untuk memulai

Pelacakan Peristiwa yang Diperluas diaktifkan menggunakan perintah skrip objek buat XMLA serupa seperti yang ditunjukkan di bawah ini:

<Execute ...>  
   <Command>  
      <Batch ...>  
         <Create ...>  
            <ObjectDefinition>  
               <Trace>  
                  <ID>trace_id</ID>  
                  <Name>trace_name</Name>  
                  <ddl300_300:XEvent>  
                     <event_session ...>  
                        <event package="AS" name="AS_event">  
                           <action package="PACKAGE0" .../>  
                        </event>  
                        <target package="PACKAGE0" name="asynchronous_file_target">  
                           <parameter name="filename" value="data_filename.xel"/>  
                           <parameter name="metadatafile" value="metadata_filename.xem"/>  
                        </target>  
                     </event_session>  
                  </ddl300_300:XEvent>  
               </Trace>  
            </ObjectDefinition>  
         </Create>  
      </Batch>  
   </Command>  
   <Properties></Properties>  
</Execute>  

Di mana elemen berikut harus ditentukan oleh pengguna, tergantung pada kebutuhan pelacakan:

trace_id
Menentukan pengidentifikasi unik untuk pelacakan ini.

trace_name
Nama yang diberikan untuk jejak ini; biasanya definisi jejak yang dapat dibaca manusia. Ini adalah praktik umum untuk menggunakan nilai trace_id sebagai nama.

AS_event
Peristiwa Analysis Services yang akan diekspos. Lihat Peristiwa Pelacakan Analysis Services untuk nama peristiwa.

data_filename
Nama file yang berisi data peristiwa. Nama ini diakhiri dengan stempel waktu untuk menghindari penimpaan data jika jejak dikirim berulang-ulang.

metadata_filename
Nama file yang berisi metadata peristiwa. Nama ini diakhiri dengan stempel waktu untuk menghindari penimpaan data jika jejak dikirim berulang-ulang.

Skrip XMLA untuk dihentikan

Untuk menghentikan objek pelacakan Extended Events, Anda perlu menghapus objek tersebut menggunakan perintah skrip objek penghapusan XMLA serupa seperti yang ditunjukkan di bawah ini:

<Execute xmlns="urn:schemas-microsoft-com:xml-analysis">  
   <Command>  
      <Batch ...>  
         <Delete ...>  
            <Object>  
               <TraceID>trace_id</TraceID>  
            </Object>  
         </Delete>  
      </Batch>  
   </Command>  
   <Properties></Properties>  
</Execute>  
  

Di mana elemen berikut harus ditentukan oleh pengguna, tergantung pada kebutuhan pelacakan:

trace_id
Menentukan pengidentifikasi unik untuk pelacakan yang akan dihapus.

Lihat juga

SQL Server Acara yang Diperluas