다음을 통해 공유


Get-SqlAgentJobHistory

SQL 에이전트의 대상 인스턴스에 있는 작업 기록을 가져옵니다.

구문

Get-SqlAgentJobHistory
   [-StartRunDate <DateTime>]
   [-EndRunDate <DateTime>]
   [-JobID <Guid>]
   [-JobName <String>]
   [-MinimumRetries <Int32>]
   [-MinimumRunDurationInSeconds <Int32>]
   [-OldestFirst]
   [-OutcomesType <CompletionResult>]
   [-SqlMessageID <Int32>]
   [-SqlSeverity <Int32>]
   [-Since <SinceType>]
   [[-Path] <String[]>]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [<CommonParameters>]
Get-SqlAgentJobHistory
   [-StartRunDate <DateTime>]
   [-EndRunDate <DateTime>]
   [-JobID <Guid>]
   [-JobName <String>]
   [-MinimumRetries <Int32>]
   [-MinimumRunDurationInSeconds <Int32>]
   [-OldestFirst]
   [-OutcomesType <CompletionResult>]
   [-SqlMessageID <Int32>]
   [-SqlSeverity <Int32>]
   [-Since <SinceType>]
   [[-ServerInstance] <String[]>]
   [-Credential <PSCredential>]
   [-ConnectionTimeout <Int32>]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [<CommonParameters>]
Get-SqlAgentJobHistory
   [-StartRunDate <DateTime>]
   [-EndRunDate <DateTime>]
   [-JobID <Guid>]
   [-JobName <String>]
   [-MinimumRetries <Int32>]
   [-MinimumRunDurationInSeconds <Int32>]
   [-OldestFirst]
   [-OutcomesType <CompletionResult>]
   [-SqlMessageID <Int32>]
   [-SqlSeverity <Int32>]
   [-Since <SinceType>]
   [-InputObject] <JobServer[]>
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [<CommonParameters>]

Description

Get-SqlAgentJobHistory cmdlet은 SQL 에이전트의 대상 인스턴스에 있는 JobHistory 개체를 가져옵니다.

이 cmdlet은 JobHistory 개체를 가져오는 다음 작업 모드를 지원합니다.

  • SQL 에이전트 인스턴스의 경로를 지정합니다.
  • 입력에 SQL 에이전트의 인스턴스를 전달합니다.
  • 유효한 컨텍스트에서 cmdlet을 호출합니다.

예제

예제 1: 지정된 서버 인스턴스에서 전체 작업 기록 가져오기

PS C:\> Get-SqlAgentJobHistory -ServerInstance "MyServerInstance" | Format-Table

InstanceID SqlMessageID Message
---------- ------------ -------
        34            0 The job succeeded.  The Job was invoked by Schedule 8 (syspolicy_purge_history_schedule).  T... 
        33            0 Executed as user: DOMAIN\Machine1$. The step did not generate any output.  Process Exit

이 명령은 MyServerInstance라는 서버 인스턴스의 전체 작업 기록을 가져오고 출력의 형식을 지정합니다.

예제 2: 지정된 서버 인스턴스에서 작업 기록 가져오기

PS C:\> Get-SqlAgentJobHistory -ServerInstance "MyServerInstance" -JobID 187112d7-84e1-4b66-b093-e97201c441ed

JobID            : 187112d7-84e1-4b66-b093-e97201c441ed
JobName          : Job_73cc6990-6386-49f9-9826-96c318ad8afa
RunStatus        : 3

이 명령은 'MyServerInstance'라는 서버 인스턴스에서 ID가 '1871112d7-84e1-4b66-b093-e97201c441ed'인 작업 개체의 작업 기록을 가져옵니다.

예제 3: 지정된 서버 인스턴스의 기간에서 작업 기록 가져오기

PS C:\> Get-SqlAgentJobHistory -ServerInstance "MyServerInstance" -Since Yesterday
InstanceID       : 4
SqlMessageID     : 0
Message          : The job was stopped prior to completion by User admin.  The Job was invoked by User
                   admin.  The last step to run was step 1 (JobStep_3e4cd4ba-3433-4311-a6a2-816884101504).

이 명령은 'MyServerInstance'라는 서버 인스턴스에서 전날부터 작업 기록을 반환합니다.

매개 변수

-AccessToken

사용자/암호 또는 Windows 인증 대신 SQL Server에 인증하는 데 사용되는 액세스 토큰입니다.

예를 들어 Service Principal 또는 Managed Identity사용하여 SQL Azure DB 연결하고 SQL Azure Managed Instance 데 사용할 수 있습니다.

사용할 매개 변수는 토큰을 나타내는 문자열이거나 Get-AzAccessToken -ResourceUrl https://database.windows.net실행하여 반환된 PSAccessToken 개체일 수 있습니다.

이 매개 변수는 모듈의 v22에서 새로 생성됩니다.

형식:PSObject
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ConnectionTimeout

시간 제한 오류가 발생하기 전에 서버 연결을 대기할 시간(초)을 지정합니다. 제한 시간 값은 0에서 65534 사이의 정수 값이어야 합니다. 0을 지정하면 연결 시도가 시간 초과되지 않습니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Credential

이 작업을 수행할 수 있는 권한이 있는 SQL Server 로그인의 자격 증명을 지정하는 데 사용되는 PSCredential 개체를 지정합니다.

형식:PSCredential
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Encrypt

SQL Server에 연결할 때 사용할 암호화 유형입니다.

이 값은 Microsoft.Data.SqlClient 드라이버의 SqlConnection 개체에 있는 Encrypt 속성 SqlConnectionEncryptOption 매핑됩니다.

모듈의 v22에서 기본값은 Optional(v21과의 호환성을 위해)입니다. 모듈의 v23+에서 기본값은 기존 스크립트에 대한 호환성이 손상되는 변경을 만들 수 있는 '필수'입니다.

이 매개 변수는 모듈의 v22에서 새로 생성됩니다.

형식:String
허용되는 값:Mandatory, Optional, Strict
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-EndRunDate

작업이 완료된 날짜로 반환되는 값을 제한하는 작업 필터 제약 조건을 지정합니다.

형식:DateTime
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-HostNameInCertificate

SQL Server TLS/SSL 인증서의 유효성을 검사하는 데 사용할 호스트 이름입니다. SQL Server 인스턴스가 Force Encryption을 사용하도록 설정되어 있고 호스트 이름/짧은 이름을 사용하여 인스턴스에 연결하려는 경우 이 매개 변수를 전달해야 합니다. 이 매개 변수를 생략하면 강제 암호화를 사용하도록 설정된 SQL Server 인스턴스에 연결하려면 FQDN(정규화된 도메인 이름)을 -ServerInstance 전달해야 합니다.

이 매개 변수는 모듈의 v22에서 새로 생성됩니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-InputObject

대상으로 지정되는 SQL Server 에이전트를 나타내는 SMO(SQL Server Management Object) 개체의 배열을 지정합니다.

형식:JobServer[]
Position:1
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-JobID

작업 ID 값으로 지정된 작업으로 반환되는 값을 제한하는 작업 필터 제약 조건을 지정합니다.

형식:Guid
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-JobName

작업 이름으로 지정된 작업으로 반환되는 값을 제한하는 작업 필터 제약 조건을 지정합니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-MinimumRetries

실패한 작업으로 반환되고 최소 횟수 동안 다시 시도된 값을 제한하는 작업 필터 제약 조건을 지정합니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-MinimumRunDurationInSeconds

지정된 최소 시간(초)에 완료된 작업으로 반환되는 값을 제한하는 작업 필터 제약 조건을 지정합니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-OldestFirst

이 cmdlet은 작업을 가장 오래된 순서로 나열합니다. 이 매개 변수를 지정하지 않으면 cmdlet은 최신 우선 순서를 사용합니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-OutcomesType

완료 시 지정된 결과가 있는 작업으로 반환되는 값을 제한하는 작업 필터 제약 조건을 지정합니다.

이 매개 변수에 허용되는 값은 다음과 같습니다.

-- 실패 -- 성공 -- 다시 시도 -- 취소됨 -- InProgress -- 알 수 없음

형식:CompletionResult
허용되는 값:Failed, Succeeded, Retry, Cancelled, InProgress, Unknown
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Path

이 cmdlet이 작업을 실행하는 배열로 SQL Server 에이전트의 경로를 지정합니다. 이 매개 변수의 값을 지정하지 않으면 cmdlet은 현재 작업 위치를 사용합니다.

형식:String[]
Position:1
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ProgressAction

powerShell이 스크립트, cmdlet 또는 공급자(예: Write-Progress cmdlet에서 생성된 진행률 표시줄)에 의해 생성된 진행률 업데이트에 응답하는 방법을 결정합니다. Write-Progress cmdlet은 명령의 상태를 표시하는 진행률 표시줄을 만듭니다.

형식:ActionPreference
별칭:proga
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ServerInstance

SQL 에이전트가 실행되는 배열로 SQL Server 인스턴스의 이름을 지정합니다. 기본 인스턴스의 경우 컴퓨터 이름인 MyComputer만 지정합니다. 명명된 인스턴스의 경우 ComputerName\InstanceName 형식을 사용합니다.

형식:String[]
Position:1
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Since

StartRunDate 매개 변수 대신 사용할 수 있는 약어를 지정합니다.

EndRunDate 매개 변수를 사용하여 지정할 수 있습니다.

이 매개 변수를 사용하는 경우 StartRunDate 매개 변수를 사용할 수 없습니다.

이 매개 변수에 허용되는 값은 다음과 같습니다.

  • 자정(자정 이후에 생성된 모든 작업 기록 정보를 가져옵니다.)
  • 어제(지난 24시간 동안 생성된 모든 작업 기록 정보를 가져옵니다.)
  • LastWeek(지난 주에 생성된 모든 작업 기록 정보를 가져옵니다.)
  • LastMonth(지난 달에 생성된 모든 작업 기록 정보를 가져옵니다.)
형식:SinceType
허용되는 값:Midnight, Yesterday, LastWeek, LastMonth
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-SqlMessageID

런타임 중에 지정된 메시지를 생성한 작업으로 반환되는 값을 제한하는 작업 필터 제약 조건을 지정합니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-SqlSeverity

런타임 동안 지정된 심각도의 오류를 생성한 작업으로 반환되는 값을 제한하는 작업 필터 제약 조건을 지정합니다.

형식:Int32
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-StartRunDate

작업이 시작된 날짜로 반환되는 값을 제한하는 작업 필터 제약 조건을 지정합니다.

형식:DateTime
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-TrustServerCertificate

신뢰의 유효성을 검사하기 위해 인증서 체인을 건너뛰는 동안 채널이 암호화되는지 여부를 나타냅니다.

모듈의 v22에서 기본값은 $true(v21과의 호환성을 위해)입니다. 모듈의 v23+에서 기본값은 '$false'이며, 이로 인해 기존 스크립트에 대한 호환성이 손상되는 변경이 발생할 수 있습니다.

이 매개 변수는 모듈의 v22에서 새로 생성됩니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

System.String[]

Microsoft.SqlServer.Management.Smo.Agent.JobServer[]

출력

System.Object