sys.sp_readerrorlog (Transact-SQL)

platí pro:SQL Server

Umožňuje číst obsah chybového logu SQL Server nebo SQL Server Agent a filtrovat klíčová slova.

Transact-SQL konvence syntaxe

Syntax

sys.sp_readerrorlog
    [ [ @p1 = ] p1 ]
    [ , [ @p2 = ] p2 ]
    [ , [ @p3 = ] N'p3' ]
    [ , [ @p4 = ] N'p4' ]
[ ; ]

Arguments

[ @p1 = ] p1

Celočíselná hodnota logaritmu, který chcete vidět. @p1 je int, s výchozím nastavením 0. Aktuální error log má hodnotu 0. Předchozí je ( 1 ),ERRORLOG.1 před předchozím je 2 (ERRORLOG.2), a tak dále.

[ @p2 = ] p2

Celočíselná hodnota pro součin, jehož logaritmus chcete vidět. @p2 je int, s výchozím nastavením NULL. Použití 1 pro SQL Server nebo 2 SQL Server Agent. Pokud není určena hodnota, použije se produkt SQL Server.

[ @p3 = ] N'p3'

Hodnota řetězce řetězce, na kterou chcete filtrovat při prohlížení error logu. @p3 je nvarchar(4000), s výchozím hodnotou NULL.

[ @p4 = ] N'p4'

Hodnota řetězce pro další řetězec, na který chcete filtrovat, aby bylo vyhledávání při prohlížení error logu ještě více zpřesněno. @p4 je nvarchar(4000), s výchozím hodnotou NULL. Tento parametr poskytuje další filtr k prvnímu vyhledávání řetězce @p3.

Hodnoty návratového kódu

Žádné.

Sada výsledků

Zobrazuje obsah požadovaného chybového logu. Pokud jsou použity filtrační řetězce, zobrazí se pouze řádky, které s nimi souhlasí.

Remarks

Pokaždé, když je SQL Server spuštěn, aktuální chybový log se přejmenuje na ERRORLOG.1; ERRORLOG.1 stává se , ERRORLOG.2ERRORLOG.2stává se , ERRORLOG.3a tak dále. sp_readerrorlog umožňuje číst jakýkoli z těchto chybových logů, pokud tyto soubory existují.

Permissions

SQL Server 2019 (15.x) a starší verze vyžadují členství v roli fixního serveru securityadmin nebo VIEW SERVER STATE oprávnění na serveru.

SQL Server 2022 (16.x) a pozdější verze vyžadují členství v roli fixního serveru securityadmin, nebo jedno nebo VIEW ANY ERROR LOGVIEW SERVER STATE oprávnění na serveru.

Examples

Následující příklad cykluje chybový log SQL Server.

A. Přečtěte si aktuální chybový log SQL Server

EXECUTE sp_readerrorlog;

B. Zobrazit předchozí záznam chyb SQL Server Agent

EXECUTE sp_readerrorlog 1, 2;

C. Najděte logovací zprávy, které naznačují, že se spouští databáze

EXECUTE sp_readerrorlog 0, 1, 'database', 'start';