Wir haben einen SQL Server-Agent-Job, der einen Wartungsplan ausführt, um die gesamte Datenbank auf dem Server neu zu indizieren. Vor kurzem ist dies fehlgeschlagen, aber die Jobhistorie enthält nicht genügend Informationen, um das Problem zu diagnostizieren.
In der Job-Historie steht, dass der Job fehlgeschlagen ist. Der Job wurde vom Benutzer foo \ bar aufgerufen. Der letzte auszuführende Schritt war Schritt 1 (Index neu erstellen).
Im Detailfenster befinden sich mehrere Nachrichten in folgender Form:
Executing query "ALTER INDEX [something] ON [a...".: 0% complete End Progress Progress: 2015-03-15 22:51:23.67 Source: Rebuild Index Task
Die ausgeführte SQL-Anweisung ist abgeschnitten, und ich gehe davon aus, dass die Ausgabe der Anweisung ebenfalls abgeschnitten ist, sodass ich nicht feststellen kann, welche bestimmte Anweisung fehlgeschlagen ist und warum. Gibt es eine Möglichkeit, den vollständigen Text dieser Nachrichten zu extrahieren?
quelle
Antworten:
Sie haben zwei Möglichkeiten: Gehen Sie zum Job-Schritt und wählen Sie die Registerkarte Erweitert:
ein. Ausgabe in eine Datei (<== Meine bevorzugte Methode)
b. "In Tabelle protokollieren" und "Schrittausgabe in Verlauf einbeziehen" (<== Sie müssen auf
msdb..sysjobhistory
lange Sicht trimmen , da die Nachrichten gespeichert werden alsnvarchar(max)
stattnvarchar(1024)
)Um die zusätzlichen protokollierten Informationen anzuzeigen, müssen Sie diese gespeicherte Prozedur sp_help_jobsteplog verwenden, oder Sie können die
msdb.dbo.sysjobstepslogs
Tabelle direkt abfragen .Mehr Infos hier
quelle
sysjobstepslogs
. Dies war die Empfehlung der meisten Online-Diskussionen zu diesem Problem. Aber Methode (a), die in eine Datei ausgegeben wurde, hatte NICHT dieses Problem: Die Textdateien zeigen mir alle Jobschrittprotokolle, endlich ohne Kürzung! (In meinem Fall sind meineDTEXEC
Jobschritte Befehle, die SSIS-Pakete ausführen.) Einziger Nachteil: Es wird nur die letzte Ausführung angezeigt, es sei denn, es wird eine Datei angehängt. Anstatt anzuhängen, entscheide ich mich, bei früheren Läufen mit Kürzungen zu leben.Sie können Volltext erhalten:
select properties
step
und klicken Sie aufedit
Schaltflächeadvanced
. Hier sehen Sie den Protokollpfad.Nun ist es einfach, dem Pfad zu folgen.
quelle