Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
SQL Server Kaynak DLL'sinin tüm kritik hataları ve uyarı olayları Windows olay günlüğüne yazılır. SQL Server'a özgü tanılama bilgilerinin sürekli tutulan günlüğü, sp_server_diagnostics (Transact-SQL) sistem saklı yordamı tarafından yakalanır ve SQL Server yük devretme kümesi tanılama günlük dosyalarına (diğer adıyla SQLDIAG günlükleri) yazılır.
Dosya adı, konum ve biçim
Varsayılan olarak, SQLDIAG SQL Server örneği dizininin yerel LOG klasöründe depolanır; örneğin, 'C\Program Files\Microsoft SQL Server\MSSQL13.<Always On Yük Devretme Kümesi Örneğinin (FCI) sahibi olan düğümün InstanceName>\MSSQL\LOG'. Her SQLDIAG günlük dosyasının en büyük boyutu 100 MB olarak sabittir. Bu tür on günlük dosyası, yeni günlükler için geri dönüştürülmeden önce bilgisayarda depolanır. Dosya adı, 'xxxx' son bölümünün otomatik olarak oluşturulan bir sayı olduğu aşağıdaki biçimdedir MACHINE_SQLINSTANCE_SQLDIAG_0_xxxxxxxxxxxxxxxxx.xel . Örneğin, varsayılan bir örnek için dosya adı NODE1_MSSQLSERVER_SQLDIAG_0_133177967257760000.xel olurdu ve adlandırılmış bir örnek için ad NODE1_SQL2019INST_SQLDIAG_0_133177967257760000.xel olurdu.
Günlükler genişletilmiş olaylar dosya biçimini kullanır. Sistem işlevi, sys.fn_xe_file_target_read_file Genişletilmiş Olaylar tarafından oluşturulan dosyaları okumak ve bunları sonuç kümesi olarak görüntülemek için kullanılabilir. XML biçiminde bir olay satır başına döndürülür. Daha fazla bilgi için bkz. sys.fn_xe_file_target_read_file (Transact-SQL).
Permissions
VIEW fn_xe_file_target_read_file çalıştırmak için SUNUCU DURUMU izni gerekir.
SQL Server Management Studio Yönetici olarak açma
SQL Server Management Studio'yu kullanma
Tanılama günlük dosyalarını görüntülemek için:
Dosya menüsünde Aç, Dosya'yı seçin ve görüntülemek istediğiniz tanılama günlüğü dosyasını seçin.
Olaylar sağ bölmede satırlar olarak görüntülenir ve varsayılan ad olarak ve zaman damgası yalnızca iki sütun görüntülenir.
Bu, ExtendedEvents menüsünü de etkinleştirir.
Daha fazla sütun görmek için ExtendedEvents menüsüne gidin ve Sütunları Seç'i seçin.
Kullanılabilir sütunları gösteren ve görüntülenecek sütunları seçmenizi sağlayan bir iletişim kutusu açılır.
ExtendedEvents menüsünü kullanarak ve Filtrele seçeneğini belirleyerek olay verilerini filtreleyebilir ve sıralayabilirsiniz.
Tanılama günlük dosyalarını Transact-SQL ile görüntüleme
Tanılama günlük dosyalarını görüntülemek için:
SQLDIAG günlük dosyasındaki tüm günlük öğelerini görüntülemek için aşağıdaki sorguyu kullanın:
SELECT
xml_data.value('(event/@name)[1]','varchar(max)') AS 'Name'
,xml_data.value('(event/@package)[1]','varchar(max)') AS 'Package'
,xml_data.value('(event/@timestamp)[1]','datetime') AS 'Time'
,xml_data.value('(event/data[@name=''state'']/value)[1]','int') AS 'State'
,xml_data.value('(event/data[@name=''state_desc'']/text)[1]','varchar(max)') AS 'State Description'
,xml_data.value('(event/data[@name=''failure_condition_level'']/value)[1]','int') AS 'Failure Conditions'
,xml_data.value('(event/data[@name=''node_name'']/value)[1]','varchar(max)') AS 'Node_Name'
,xml_data.value('(event/data[@name=''instancename'']/value)[1]','varchar(max)') AS 'Instance Name'
,xml_data.value('(event/data[@name=''creation time'']/value)[1]','datetime') AS 'Creation Time'
,xml_data.value('(event/data[@name=''component'']/value)[1]','varchar(max)') AS 'Component'
,xml_data.value('(event/data[@name=''data'']/value)[1]','varchar(max)') AS 'Data'
,xml_data.value('(event/data[@name=''info'']/value)[1]','varchar(max)') AS 'Info'
FROM
( SELECT object_name AS 'event'
,CONVERT(xml,event_data) AS 'xml_data'
FROM sys.fn_xe_file_target_read_file('C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Log\SQLNODE1_MSSQLSERVER_SQLDIAG_0_129936003752530000.xel',NULL,NULL,NULL)
)
AS XEventData
ORDER BY Time;
Note
WHERE yan tümcesini kullanarak belirli bileşenler veya durum için sonuçları filtreleyebilirsiniz.
tanılama günlüğü özelliklerini Transact-SQL ile yapılandırma
Tanılama günlüğü özelliklerini yapılandırmak için:
Note
Bu yordamın bir örneği için, bu bölümün devamında yer alan Örnek (Transact-SQL) bölümüne bakın.
Veri Tanımı Dili (DDL) deyimini kullanarak, ALTER SERVER CONFIGURATIONsp_server_diagnostics (Transact-SQL) yordamı tarafından yakalanan tanılama verilerini günlüğe kaydetmeyi başlatabilir veya durdurabilir ve günlük dosyası geçiş sayısı, günlük dosyası boyutu ve dosya konumu gibi SQLDIAG günlük yapılandırma parametrelerini ayarlayabilirsiniz. Söz dizimi ayrıntıları için bkz. Tanılama günlüğü seçeneklerini ayarlama.
Örnekler
Bu bölümdeki örneklerde tanılama günlüğü seçeneği için değerlerin nasıl ayarlanacağı gösterilmektedir.
A. Tanılama günlüğünü başlat
Aşağıdaki örnek, tanılama verilerinin günlüğe kaydedilmesini başlatır.
ALTER SERVER CONFIGURATION SET DIAGNOSTICS LOG ON;
B. Tanılama günlüğünü durdur
Aşağıdaki örnek tanılama verilerinin günlüğe kaydedilmesini durdurur.
ALTER SERVER CONFIGURATION SET DIAGNOSTICS LOG OFF;
C. Tanılama günlüklerinin konumunu belirtme
Aşağıdaki örnek, tanılama günlüklerinin konumunu belirtilen dosya yoluna ayarlar.
ALTER SERVER CONFIGURATION
SET DIAGNOSTICS LOG PATH = 'C:\logs';
D. Her tanılama günlüğünün maksimum boyutunu belirtin
Aşağıdaki örnek, her tanılama günlüğünün en büyük boyutunu 10 megabayt olarak ayarlar.
ALTER SERVER CONFIGURATION
SET DIAGNOSTICS LOG MAX_SIZE = 10 MB;
E. Yük Devretme Kümesi Örneği Tanılama Günlüğünün etkinleştirilip etkinleştirilmediğini ve geçerli yapılandırmayı denetleyin.
Aşağıdaki örnek, mevcut yapılandırmayı denetlemek için sys.dm_os_server_diagnostics_log_configurations dmv'sini kullanır.
SELECT is_enabled, [path], max_size, max_files
FROM sys.dm_os_server_diagnostics_log_configurations;