managed_backup.fn_get_health_status(Transact-SQL)
적용 대상: SQL Server 2016(13.x) 이상 버전
지정된 기간 동안 확장 이벤트에서 보고한 집계된 오류 수의 행을 0개, 1개 또는 그 이상 포함하는 테이블을 반환합니다.
이 함수는 Smart Admin에서 서비스의 상태를 보고하는 데 사용됩니다. 현재 Microsoft Azure에 대한 SQL Server 관리되는 백업은 Smart Admin 우산 아래에서 지원됩니다. 따라서 반환되는 오류는 Microsoft Azure에 대한 SQL Server 관리되는 백업과 관련이 있습니다.
구문
managed_backup.fn_get_health_status([@begin_time = ] 'time_1' , [ @end_time = ] 'time_2')
인수
[@begin_time]
집계된 오류 수가 계산되는 기간의 시작입니다. 매개 변수는 @begin_time DATETIME입니다. 기본값은 NULL입니다. 값이 NULL인 경우 함수는 현재 시간 30분 전부터 보고된 이벤트를 처리합니다.
[ @end_time]
집계된 오류 수가 계산되는 기간의 끝입니다. 매개 변수는 @end_time 기본값이 NULL인 DATETIME입니다. 값이 NULL이면 함수는 현재 시간까지 확장 이벤트를 처리합니다.
반환된 테이블
열 이름 | 데이터 형식 | 설명 |
---|---|---|
number_of_storage_connectivity_errors | int | 프로그램이 Azure Storage 계정에 연결할 때 발생하는 연결 오류 수입니다. |
number_of_sql_errors | int | 프로그램이 SQL Server 엔진에 연결할 때 반환되는 오류 수입니다. |
number_of_invalid_credential_errors | int | 프로그램이 SQL 자격 증명을 사용하여 인증을 시도할 때 반환되는 오류 수입니다. |
number_of_other_errors | int | 연결, SQL 또는 자격 증명 이외의 다른 범주에 속하는 오류 수입니다. |
number_of_corrupted_or_deleted_backups | int | 삭제되거나 손상된 백업 파일의 수입니다. |
number_of_backup_loops | int | 백업 에이전트가 MICROSOFT Azure에 대한 SQL Server 관리 백업으로 구성된 모든 데이터베이스를 검색하는 횟수입니다. |
number_of_retention_loops | int | 설정된 보존 기간을 평가하기 위해 데이터베이스를 검사한 횟수입니다. |
좋은 연습 방법
이러한 집계된 개수를 사용하여 시스템 상태를 모니터링할 수 있습니다. 예를 들어 number_ of_retention_loops 열이 30분 안에 0이면 보존 관리가 오래 걸리거나 제대로 작동하지 않을 수 있습니다. 0이 아닌 오류 열은 문제를 나타낼 수 있으며, 문제를 알아보려면 확장 이벤트 로그를 확인해야 합니다. 또는 저장 프로시저 managed_backup.sp_get_backup_diagnostics 를 사용하여 확장 이벤트 목록을 가져와서 오류의 세부 정보를 찾습니다.
보안
사용 권한
함수에 대한 SELECT 권한이 필요합니다.
예제
다음 예에서는 실행된 시간 이전의 마지막 30분 동안 집계된 오류 수를 반환합니다.
SELECT * FROM managed_backup.fn_get_health_status(NULL, NULL)
다음 예제에서는 현재 주에 대한 집계된 오류 수를 반환합니다.
Use msdb Go DECLARE @startofweek datetime DECLARE @endofweek datetime SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) SELECT * FROM managed_backup.fn_get_health_status(@startofweek, @endofweek)