정책 기반 관리 정책 문제 해결

정책 기반 관리는 Windows 이벤트 로그와 SQL Server 에이전트 로그(예약된 정책의 경우)에 모두 오류를 기록합니다. 정책이 설정되지 않았거나 예상 대상에 영향을 주지 않는 경우 실패가 오류로 간주되지 않고 기록되지 않습니다.

정책 실패 문제 해결

이 섹션에서는 두 가지 정책 실패와 이러한 실패 문제를 해결하기 위해 수행할 수 있는 단계에 대해 설명합니다.

변경 시: 로그 정책 또는 변경 시: 방지 정책이 실행되고 있지 않음

변경 시: 로그 또는 변경 시: 방지 평가 모드를 사용 중인 정책이 유효하지 않은 이유는 다음 중 하나입니다.

  • 정책이 해제되어 있습니다.

  • 대상이 필터에 의해 제외됩니다.

  • 대상이 정책을 포함하는 정책 그룹을 구독하지 않습니다.

  • 변경 시: 방지 평가 모드의 경우 Service Broker 이벤트 메커니즘에서 올바른 이벤트를 모니터링하지 않습니다.

  • 평가 엔진에 오류가 발생했습니다.

이 문제를 해결하려면 다음 단계를 수행합니다.

  1. 정책이 실행되었는지 여부를 확인합니다. 이 데이터도 로그 뷰어를 통해 볼 수 있습니다.

    1. 정책을 실행했는데 예외 메시지가 나타났는지 여부를 확인하려면 msdb.dbo.syspolicy_policy_execution_history 뷰에서 정책 실행 기록을 검사합니다.

    2. 특정 대상에 대해 정책을 실행했는지 여부를 확인하려면 msdb.dbo.syspolicy_policy_execution_history_details 뷰에서 해당되는 특정 대상에 대한 정책 실행 기록을 검사합니다.

  2. 해당되는 대상에 대해 정책이 유효한지 여부를 검사합니다.

    1. 정책이 설정되었는지 확인합니다.

    2. 정책이 대상에 적용되는지 확인하려면 SQL Server Management Studio의 정책 보기 페이지를 사용합니다.

  3. 변경 시: 로그 평가 모드를 사용하는 정책의 경우 Service Broker는 이벤트 메커니즘에서 올바른 이벤트를 모니터링하고 있는지 검사합니다.

    1. 트랜잭션이 정책 조건이 정의된 패싯에서 지원하는 이벤트를 커밋하고 생성했는지 확인합니다.

    2. 다음 쿼리를 사용하여 Service Broker 큐가 올바른 이벤트를 모니터링하는지 확인합니다.

      SELECT * FROM sys.server_event_notifications 
      WHERE name = N'syspolicy_event_notification' ;
      GO
      
  4. 평가 엔진을 검사합니다.

    • Windows 이벤트 로그에서 정책 기반 관리 오류를 검사합니다.

예약 시 정책이 실행되고 있지 않음

예약 시 정책은 변경 시: 로그 또는 변경 시: 방지 정책과 같은 이유로 실패할 수 있으며 SQL Server 에이전트 작업의 오류로 인해 실패할 수도 있습니다. 작업에 대한 자세한 내용은 작업 보기 및 수정을 참조하십시오.

성능 문제 해결

정책 기반 관리에서는 성능 관련 문제를 진단하는 특정 도구를 제공하지 않습니다. 정책 실행 시간을 확인하려면 msdb.dbo.syspolicy_policy_execution_history 뷰에서 start_date 및 end_date 열을 쿼리합니다.

오류 처리 및 로깅 이해

이 섹션에서는 여러 정책의 오류 처리 및 로깅이 작동하는 방식에 대해 설명합니다.

변경 시: 로그 정책 및 변경 시: 방지 정책

정책 실행 오류는 Windows 이벤트 로그에 기록됩니다. 이 로그에는 정책 기반 관리 오류 텍스트와 SQL Server 이벤트의 세부 정보가 들어 있는 XML 설명이 포함됩니다. 주요 실행 논리에 대한 예외와 정책 실행 오류는 msdb.dbo.syspolicy_policy_execution_history 및 msdb.dbo.syspolicy_policy_execution_history_details 뷰에 표시됩니다.

예약 시 정책

예약 시 정책에는 SQL Server 에이전트가 관련되므로 에이전트 로그 파일을 먼저 검토해야 합니다. 작업이 성공적으로 완료했는지 여부를 검사합니다. SQL Server 에이전트 로그에 저장 프로시저 호출에 대한 오류가 포함됩니다. 작업이 성공적으로 완료된 경우 Windows 이벤트 로그에서 정책 실행 오류를 확인합니다.