Write the Job Status to the Windows Application LogWrite the Job Status to the Windows Application Log

이 항목은 다음에 적용됩니다. 예SQL Server예Azure SQL Database(관리되는 인스턴스만 해당)아니요Azure SQL Data Warehouse아니요병렬 데이터 웨어하우스 THIS TOPIC APPLIES TO: yesSQL ServeryesAzure SQL Database (Managed Instance only)noAzure SQL Data Warehouse noParallel Data Warehouse

중요

현재 Azure SQL Database 관리되는 인스턴스에서 일부 SQL Server 에이전트 기능이 지원됩니다.On Azure SQL Database Managed Instance, most, but not all SQL Server Agent features are currently supported. 자세한 내용은 SQL Server에서 Azure SQL Database 관리되는 인스턴스 T-SQL 차이점을 참조하세요.See Azure SQL Database Managed Instance T-SQL differences from SQL Server for details.

이 항목에서는 SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL 또는 SQL Server 관리 개체를 사용하여 SQL Server 2017SQL Server 2017에서 작업 상태를 Windows 응용 프로그램 이벤트 로그에 기록하도록 MicrosoftMicrosoft SQL ServerSQL Server 에이전트를 구성하는 방법에 대해 설명합니다.This topic describes how to configure MicrosoftMicrosoft SQL ServerSQL Server Agent in SQL Server 2017SQL Server 2017 to write job status to the Windows application event log by using SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or SQL Server Management Objects.

작업 응답은 데이터베이스 관리자에게 작업 완료 시점과 작업 실행 간격을 알립니다.Job responses ensure that database administrators know when jobs complete and how frequently they run. 일반적인 작업 응답은 다음과 같습니다.Typical job responses include:

  • 전자 메일, 전자 호출 또는 net send 메시지 등으로 운영자에게 알림Notifying the operator by using e-mail, electronic paging, or a net send message. 운영자가 추가 작업 동작을 실행해야 할 경우 이 작업 응답 중 하나를 사용.Use one of these job responses if the operator must perform a follow-up action. 예를 들어 백업 작업이 성공적으로 완료될 경우 운영자는 백업 테이프를 빼낸 다음 안전한 곳에 저장하도록 알림을 받아야 합니다.For example, if a backup job completes successfully, the operator must be notified to remove the backup tape and store it in a safe location.

  • 이벤트 메시지를 Windows 응용 프로그램 로그에 씀Writing an event message to the Windows application log. 이 응답은 실패한 작업에만 사용할 수 있습니다.You can use this response only for failed jobs.

  • 작업을 자동 삭제함Automatically deleting the job. 이 작업을 반환할 필요가 없을 경우에는 이 작업 응답을 사용합니다.Use this job response if you are certain that you do not need to rerun this job.

항목 내용In This Topic

시작하기 전 주의 사항Before You Begin

보안Security

자세한 내용은 Implement SQL Server Agent Security을 참조하세요.For detailed information, see Implement SQL Server Agent Security.

SQL Server Management Studio 사용Using SQL Server Management Studio

Windows 응용 프로그램 로그에 작업 상태를 쓰려면To write job status to the Windows application log

  1. 개체 탐색기 에서 SQL Server 데이터베이스 엔진SQL Server Database Engine인스턴스에 연결한 다음 해당 인스턴스를 확장합니다.In Object Explorer, connect to an instance of the SQL Server 데이터베이스 엔진SQL Server Database Engine, and then expand that instance.

  2. SQL Server 에이전트, 작업을 차례로 확장하고 편집할 작업을 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.Expand SQL Server Agent, expand Jobs, right-click the job you want to edit, and then click Properties.

  3. 알림 페이지를 선택합니다.Select the Notifications page.

  4. Windows 응용 프로그램 이벤트 로그에 쓰기를 선택하고 다음 중 하나를 선택합니다.Check Write to Windows application event log, and choose one of the following:

    • 작업이 성공적으로 완료되었을 때 작업 상태를 기록하려면작업 성공 시를 클릭합니다.ClickWhen the job succeedsto log the job status when the job completes successfully.

    • 작업이 성공적으로 완료되었을 때 작업 상태를 기록하려면작업 실패 시를 클릭합니다.ClickWhen the job failsto log the job status when the job completes unsuccessfully.

    • 작업이 성공적으로 완료되었을 때 작업 상태를 기록하려면작업 완료 시 를 클릭합니다.ClickWhen the job completes to log the job status regardless of completion status.

SQL Server 관리 개체 사용Using SQL Server Management Objects

Windows 응용 프로그램 로그에 작업 상태를 쓰려면To write job status to the Windows application log

Visual Basic, Visual C#, PowerShell 등 선택한 프로그래밍 언어를 사용하여 Job 클래스의 EventLogLevel 속성을 호출합니다.Call the EventLogLevel property of the Job class by using a programming language that you choose, such as Visual Basic, Visual C#, or PowerShell.

다음 코드 예에서는 작업 실행이 끝날 때 운영 체제 이벤트 로그 항목을 생성하도록 작업을 설정합니다.The following code example sets the job to generate an operating system event log entry when the job execution finishes.

PowerShellPowerShell

$srv = new-object Microsoft.SqlServer.Management.Smo.Server("(local)")  
$jb = new-object Microsoft.SqlServer.Management.Smo.Agent.Job($srv.JobServer, "Test Job")  
$jb.EventLogLevel = [Microsoft.SqlServer.Management.Smo.Agent.CompletionAction]::Always