Condividi tramite


Get-SqlAgentJobHistory

Ottiene la cronologia del processo presente nell'istanza di destinazione di SQL Agent.

Sintassi

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>]

Descrizione

Il cmdlet Get-SqlAgentJobHistory ottiene l'oggetto JobHistory presente nell'istanza di destinazione di SQL Agent.

Questo cmdlet supporta le modalità di funzionamento seguenti per ottenere l'oggetto JobHistory:

  • Specificare il percorso dell'istanza di SQL Agent.
  • Passare l'istanza di SQL Agent nell'input.
  • Richiamare il cmdlet in un contesto valido.

Esempio

Esempio 1: Ottenere l'intera cronologia dei processi dall'istanza del server specificata

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

Questo comando ottiene l'intera cronologia dei processi nell'istanza del server denominata MyServerInstance e quindi formatta l'output.

Esempio 2: Ottenere la cronologia dei processi dall'istanza del server specificata

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

Questo comando ottiene la cronologia dei processi dell'oggetto processo con ID '187112d7-84e1-4b66-b093-e97201c441ed' nell'istanza del server denominata 'MyServerInstance'.

Esempio 3: Ottenere la cronologia dei processi da un periodo di tempo dall'istanza del server specificata

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).

Questo comando restituisce la cronologia dei processi dal giorno precedente nell'istanza del server denominata 'MyServerInstance'.

Parametri

-AccessToken

Token di accesso usato per eseguire l'autenticazione a SQL Server, come alternativa all'autenticazione utente/password o windows.

Può essere usato, ad esempio, per connettersi a SQL Azure DB e SQL Azure Managed Instance usando un Service Principal o un Managed Identity.

Il parametro da usare può essere una stringa che rappresenta il token o un oggetto PSAccessToken restituito eseguendo Get-AzAccessToken -ResourceUrl https://database.windows.net.

Questo parametro è nuovo nella versione 22 del modulo.

Tipo:PSObject
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ConnectionTimeout

Specifica il numero di secondi di attesa di una connessione server prima di un errore di timeout. Il valore di timeout deve essere un valore intero compreso tra 0 e 65534. Se si specifica 0, i tentativi di connessione non si verifica il timeout.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Credential

Specifica un oggetto PSCredential utilizzato per specificare le credenziali per un account di accesso di SQL Server che dispone dell'autorizzazione per eseguire questa operazione.

Tipo:PSCredential
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Encrypt

Tipo di crittografia da usare per la connessione a SQL Server.

Questo valore esegue il mapping alla proprietà EncryptSqlConnectionEncryptOption sull'oggetto SqlConnection del driver Microsoft.Data.SqlClient.

Nella versione 22 del modulo, il valore predefinito è Optional (per compatibilità con v21). Nella versione 23+ del modulo, il valore predefinito sarà "Obbligatorio", che potrebbe creare una modifica di rilievo per gli script esistenti.

Questo parametro è nuovo nella versione 22 del modulo.

Tipo:String
Valori accettati:Mandatory, Optional, Strict
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-EndRunDate

Specifica un vincolo di filtro del processo che limita i valori restituiti alla data di completamento del processo.

Tipo:DateTime
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-HostNameInCertificate

Nome host da usare per convalidare il certificato TLS/SSL di SQL Server. È necessario passare questo parametro se l'istanza di SQL Server è abilitata per Forza crittografia e si vuole connettersi a un'istanza usando nome host/nome breve. Se questo parametro viene omesso, è necessario passare il nome di dominio completo (FQDN) a -ServerInstance per connettersi a un'istanza di SQL Server abilitata per Forza crittografia.

Questo parametro è nuovo nella versione 22 del modulo.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-InputObject

Specifica una matrice di oggetti SMO (SQL Server Management Object) che rappresentano l'istanza di SQL Server Agent di destinazione.

Tipo:JobServer[]
Posizione:1
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-JobID

Specifica un vincolo di filtro del processo che limita i valori restituiti al processo specificato dal valore ID processo.

Tipo:Guid
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-JobName

Specifica un vincolo di filtro del processo che limita i valori restituiti al processo specificato dal nome del processo.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-MinimumRetries

Specifica il vincolo di filtro del processo che limita i valori restituiti ai processi che hanno avuto esito negativo ed è stato ritentato per un numero minimo di volte.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-MinimumRunDurationInSeconds

Specifica un vincolo di filtro del processo che limita i valori restituiti ai processi completati nel periodo di tempo minimo specificato, in secondi.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-OldestFirst

Indica che questo cmdlet elenca i processi in ordine meno recente. Se non si specifica questo parametro, il cmdlet usa il primo ordine più recente.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-OutcomesType

Specifica un vincolo di filtro del processo che limita i valori restituiti ai processi con il risultato specificato al completamento.

I valori accettabili per questo parametro sono:

-- Failed -- Succeeded -- Retry -- Cancelled -- InProgress -- Unknown

Tipo:CompletionResult
Valori accettati:Failed, Succeeded, Retry, Cancelled, InProgress, Unknown
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Path

Specifica il percorso dell'agente di SQL Server, come matrice, in cui questo cmdlet esegue l'operazione. Se non si specifica un valore per questo parametro, il cmdlet usa la posizione di lavoro corrente.

Tipo:String[]
Posizione:1
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ProgressAction

Determina in che modo PowerShell risponde agli aggiornamenti dello stato generati da uno script, un cmdlet o un provider, ad esempio le barre di stato generate dal cmdlet Write-Progress. Il cmdlet Write-Progress crea barre di stato che mostrano lo stato di un comando.

Tipo:ActionPreference
Alias:proga
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ServerInstance

Specifica il nome di un'istanza di SQL Server, come matrice, in cui viene eseguito SQL Agent. Per le istanze predefinite, specificare solo il nome del computer MyComputer. Per le istanze denominate, usare il formato NomeComputer\NomeIstanza.

Tipo:String[]
Posizione:1
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Since

Specifica un'abbreviazione che è possibile invece del parametro StartRunDate.

Può essere specificato con il parametro EndRunDate.

Non è possibile utilizzare il parametro StartRunDate se si utilizza questo parametro.

I valori accettabili per questo parametro sono:

  • Mezzanotte (ottiene tutte le informazioni sulla cronologia dei processi generate dopo la mezzanotte)
  • Ieri (ottiene tutte le informazioni sulla cronologia dei processi generate nelle ultime 24 ore)
  • LastWeek (ottiene tutte le informazioni sulla cronologia dei processi generate nell'ultima settimana)
  • LastMonth (ottiene tutte le informazioni sulla cronologia dei processi generate nell'ultimo mese)
Tipo:SinceType
Valori accettati:Midnight, Yesterday, LastWeek, LastMonth
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-SqlMessageID

Specifica un vincolo di filtro del processo che limita i valori restituiti ai processi che hanno generato il messaggio specificato durante il runtime.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-SqlSeverity

Specifica un vincolo di filtro del processo che limita i valori restituiti ai processi che hanno generato un errore della gravità specificata durante il runtime.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-StartRunDate

Specifica un vincolo di filtro del processo che limita i valori restituiti alla data di inizio del processo.

Tipo:DateTime
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-TrustServerCertificate

Indica se il canale verrà crittografato durante il bypass della catena di certificati per convalidare l'attendibilità.

Nella versione 22 del modulo, il valore predefinito è $true (per compatibilità con v21). Nella versione 23+ del modulo, il valore predefinito sarà "$false", che potrebbe creare una modifica di rilievo per gli script esistenti.

Questo parametro è nuovo nella versione 22 del modulo.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

System.String[]

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

Output

System.Object