Freigeben über


Get-SqlAgentJobHistory

Ruft den Auftragsverlauf in der Zielinstanz des SQL-Agents ab.

Syntax

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

Beschreibung

Das Cmdlet Get-SqlAgentJobHistory ruft das JobHistory-Objekt in der Zielinstanz des SQL-Agents ab.

Dieses Cmdlet unterstützt die folgenden Betriebsmodi zum Abrufen des JobHistory-Objekts:

  • Geben Sie den Pfad der SQL-Agent-Instanz an.
  • Übergeben Sie die Instanz des SQL-Agents in der Eingabe.
  • Rufen Sie das Cmdlet in einem gültigen Kontext auf.

Beispiele

Beispiel 1: Abrufen des gesamten Auftragsverlaufs aus der angegebenen Serverinstanz

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

Dieser Befehl ruft den gesamten Auftragsverlauf in der Serverinstanz mit dem Namen MyServerInstance ab und formatiert dann die Ausgabe.

Beispiel 2: Abrufen des Auftragsverlaufs aus der angegebenen Serverinstanz

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

Dieser Befehl ruft den Auftragsverlauf des Auftragsobjekts mit der ID "187112d7-84e1-4b66-b093-e97201c441ed" in der Serverinstanz namens "MyServerInstance" ab.

Beispiel 3: Abrufen des Auftragsverlaufs aus einer Zeitdauer aus der angegebenen Serverinstanz

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

Dieser Befehl gibt den Auftragsverlauf seit dem Tag vor der Serverinstanz mit dem Namen "MyServerInstance" zurück.

Parameter

-AccessToken

Das Zugriffstoken, das zur Authentifizierung bei SQL Server verwendet wird, als Alternative zur Benutzer-/Kennwort- oder Windows-Authentifizierung.

Dies kann z. B. zum Herstellen einer Verbindung mit SQL Azure DB und SQL Azure Managed Instance mithilfe eines Service Principal oder einer Managed Identityverwendet werden.

Der zu verwendende Parameter kann entweder eine Zeichenfolge sein, die das Token darstellt, oder ein PSAccessToken-Objekt, wie durch Ausführen von Get-AzAccessToken -ResourceUrl https://database.windows.netzurückgegeben wird.

Dieser Parameter ist neu in v22 des Moduls.

Typ:PSObject
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ConnectionTimeout

Gibt die Anzahl der Sekunden an, die auf eine Serververbindung warten sollen, bevor ein Timeoutfehler auftritt. Der Timeoutwert muss ein ganzzahliger Wert zwischen 0 und 65534 sein. Wenn 0 angegeben ist, werden Verbindungsversuche nicht unterbrochen.

Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Credential

Gibt ein PSCredential -Objekt an, das verwendet wird, um die Anmeldeinformationen für eine SQL Server-Anmeldung anzugeben, die über die Berechtigung zum Ausführen dieses Vorgangs verfügt.

Typ:PSCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Encrypt

Der Verschlüsselungstyp, der beim Herstellen einer Verbindung mit SQL Server verwendet werden soll.

Dieser Wert ist der Encrypt Eigenschaft SqlConnectionEncryptOption für das SqlConnection-Objekt des Microsoft.Data.SqlClient-Treibers zugeordnet.

In v22 des Moduls ist die Standardeinstellung Optional (aus Kompatibilität mit v21). In v23+ des Moduls lautet der Standardwert "Verpflichtend", wodurch für vorhandene Skripts eine bahnbrechende Änderung erstellt werden kann.

Dieser Parameter ist neu in v22 des Moduls.

Typ:String
Zulässige Werte:Mandatory, Optional, Strict
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-EndRunDate

Gibt eine Auftragsfiltereinschränkung an, die die zurückgegebenen Werte auf das Datum beschränkt, an dem der Auftrag abgeschlossen wurde.

Typ:DateTime
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-HostNameInCertificate

Der Hostname, der beim Überprüfen des SQL Server TLS/SSL-Zertifikats verwendet werden soll. Sie müssen diesen Parameter übergeben, wenn Ihre SQL Server-Instanz für die Erzwingungsverschlüsselung aktiviert ist und Sie eine Verbindung mit einer Instanz mit hostname/shortname herstellen möchten. Wenn dieser Parameter nicht angegeben wird, ist das Übergeben des vollqualifizierten Domänennamens (Fully Qualified Domain Name, FQDN) an -ServerInstance erforderlich, um eine Verbindung mit einer SQL Server-Instanz herzustellen, die für die Erzwingungsverschlüsselung aktiviert ist.

Dieser Parameter ist neu in v22 des Moduls.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-InputObject

Gibt ein Array von SQL Server Management Object (SMO)-Objekten an, die den ZIEL-SQL Server-Agent darstellen.

Typ:JobServer[]
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-JobID

Gibt eine Auftragsfiltereinschränkung an, die die werte einschränkt, die an den durch den Auftrags-ID-Wert angegebenen Auftrag zurückgegeben werden.

Typ:Guid
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-JobName

Gibt eine Auftragsfiltereinschränkung an, die die werte einschränkt, die an den durch den Namen des Auftrags angegebenen Auftrag zurückgegeben werden.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-MinimumRetries

Gibt die Auftragsfiltereinschränkung an, die die zurückgegebenen Werte auf fehlgeschlagene Aufträge einschränkt und mindestens wiederholt wurde.

Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-MinimumRunDurationInSeconds

Gibt eine Auftragsfiltereinschränkung an, die die zurückgegebenen Werte auf Aufträge beschränkt, die in der angegebenen Mindestdauer in Sekunden abgeschlossen wurden.

Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-OldestFirst

Gibt an, dass dieses Cmdlet Aufträge in der ältesten ersten Reihenfolge auflistet. Wenn Sie diesen Parameter nicht angeben, verwendet das Cmdlet die neueste erste Reihenfolge.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-OutcomesType

Gibt eine Auftragsfiltereinschränkung an, die die zurückgegebenen Werte auf Aufträge beschränkt, die das angegebene Ergebnis nach Abschluss aufweisen.

Die zulässigen Werte für diesen Parameter sind:

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

Typ:CompletionResult
Zulässige Werte:Failed, Succeeded, Retry, Cancelled, InProgress, Unknown
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Path

Gibt den Pfad zum Agent von SQL Server als Array an, auf dem dieses Cmdlet den Vorgang ausführt. Wenn Sie keinen Wert für diesen Parameter angeben, verwendet das Cmdlet den aktuellen Arbeitsspeicherort.

Typ:String[]
Position:1
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ProgressAction

Bestimmt, wie PowerShell auf Statusaktualisierungen reagiert, die von einem Skript, Cmdlet oder Anbieter generiert werden, z. B. auf die Statusanzeigen, die vom Cmdlet Write-Progress generiert werden. Das Cmdlet Write-Progress erstellt Statusanzeigen, die den Status eines Befehls anzeigen.

Typ:ActionPreference
Aliase:proga
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ServerInstance

Gibt den Namen einer Instanz von SQL Server als Array an, in dem der SQL-Agent ausgeführt wird. Geben Sie für Standardinstanzen nur den Computernamen "MyComputer" an. Verwenden Sie für benannte Instanzen das Format "ComputerName\InstanceName".

Typ:String[]
Position:1
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Since

Gibt eine Abkürzung an, die Sie anstelle des StartRunDate-Parameters verwenden können.

Er kann mit dem Parameter EndRunDate angegeben werden.

Sie können den StartRunDate-Parameter nicht verwenden, wenn Sie diesen Parameter verwenden.

Die zulässigen Werte für diesen Parameter sind:

  • Mitternacht (ruft alle nach Mitternacht generierten Informationen zum Auftragsverlauf ab)
  • Gestern (ruft alle Informationen zur Auftragshistorie ab, die in den letzten 24 Stunden generiert wurden)
  • LastWeek (ruft alle in der letzten Woche generierten Informationen zum Auftragsverlauf ab)
  • LastMonth (ruft alle Im letzten Monat generierten Informationen zum Auftragsverlauf ab)
Typ:SinceType
Zulässige Werte:Midnight, Yesterday, LastWeek, LastMonth
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SqlMessageID

Gibt eine Auftragsfiltereinschränkung an, die die zurückgegebenen Werte auf Aufträge beschränkt, die die angegebene Nachricht während der Laufzeit generiert haben.

Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SqlSeverity

Gibt eine Auftragsfiltereinschränkung an, die die zurückgegebenen Werte auf Aufträge beschränkt, die während der Laufzeit einen Fehler des angegebenen Schweregrads generiert haben.

Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-StartRunDate

Gibt eine Auftragsfiltereinschränkung an, die die zurückgegebenen Werte auf das Startdatum des Auftrags einschränkt.

Typ:DateTime
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-TrustServerCertificate

Gibt an, ob der Kanal verschlüsselt wird, während die Zertifikatkette umgangen wird, um die Vertrauensstellung zu überprüfen.

In v22 des Moduls ist die Standardeinstellung $true (aus Kompatibilität mit v21). In v23+ des Moduls lautet der Standardwert "$false", wodurch möglicherweise eine änderung für vorhandene Skripts geändert wird.

Dieser Parameter ist neu in v22 des Moduls.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

System.String[]

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

Ausgaben

System.Object