SQLDiag Configuration Tool

Haben Sie schon einmal versucht SQLDIAG zu verwenden, um Performance Counter und Trace Dateien einzusammeln, damit diese später mit anderen Tools (z. B. SQL Nexus oder PAL) weiterverarbeitet werden können? Nach dem ersten Aufruf von SQLDiag auf Ihrem System wird eine Datei SQLDIAG.XML generiert, die alle Optionen für das Monitoring enthält. Haben Sie vor diese Konfigurationsdatei Ihren individuellen Ansprüchen anzupassen, werden Sie festgestellen, dass die Arbeit mit diesen Dateien auf Basis von XML sehr unhandlich ist. Deshalb haben sich pfiffige Entwickler ein neues Tool ausgedacht, dass diese Arbeit wesentlich einfacher erledigt.

Sie können das Tool von der Codeplex-Seite http://sdct.codeplex.com/ herunterladen. Das Tool kann auf jedem beliebigen Arbeitsplatz-PC installiert werden. Eine Installation auf dem Server ist nicht erforderlich. Die Installation geht schnell und einfach voran, da ein Windows-Installationspaket zur Verfügung steht. Die folgende Beschreibung bezieht sich auf die Version (1.0.1.0) des Programms (vom 20. Mai 2011 7:00). Für Leute, die sich an der Entwicklung beteiligen möchten, um eigene Ideen einzubringen, steht auch der Source-Code bereit.

Nach der Installation und dem Start des Programms präsentiert sich Ihnen eine aufgeräumte, leicht zu bedienende Oberfläche.

image

Zuerst müssen Sie die von Ihnen verwendete Version des SQL Servers über die drei Schaltflächen auswählen, für den Sie die Konfigurationsdatei für SQL DIAG erstellen wollen. Hinter den drei Schaltflächen sind vordefinierte Default-Templates gespeichert. Diese Templates finden Sie unter „C:\Program Files (x86)\Taylor Made Enterprises\SQLDiag Configuration Tool\Configurations“. Diese Default-Templates können Sie noch individuell anpassen (bspw. ist in dem Template von 9.0 noch der Servername und die Instanzname des Servers des Entwicklers gespeichert –> das macht natürlich auf Ihrem System keinen Sinn und Sie müssten es jedes Mal anpassen). Welches Template Sie aktuell verwenden und für welche Version des SQL Servers dieses Template dient, können Sie in der Statuszeile des Programms sehen:

image

Sie können für verschiedene Analyseszenarien unterschiedliche Konfigurationsdateien speichern und später wieder öffnen, um diese weiter zu bearbeiten (bitte nicht die Default-Templates überschreiben). Ändern Sie jedoch die SQL Server Version, gehen vorher gemachte Einstellungen verloren, wenn Sie die Einstellungen vorher nicht gespeichert haben. Das Tool unterstützt in der aktuellen Version nur Konfigurationsdateien für den SQL Server. Analysis Services werden nicht unterstützt, obwohl die erforderlichen Analyseparameter auch durch SQLDIAG eingesammelt werden könnten. Entsprechende Default-Templates sind ebenfalls vorhanden, jedoch Somit ist für diese Technologie weiterhin Handarbeit angesagt.

Schauen wir uns jetzt die verschiedenen Konfigurationsseiten (am Beispiel des SQL Servers 2008 R2) an, die das Tool zu bieten hat:

Authentication Method

image

Machine Name ist der Name des Servers, auf dem der SQL Server installiert ist. Ist der SQL Server auf der Maschine installiert, auf der auch das SQLDIAG ausgeführt werden soll, können Sie statt dem Servernamen auch einen “.” eingeben. Beachten Sie jedoch, dass dieser Punkt bspw. in einer Failover Cluster Umgebung nur unter bestimmten Umständen funktioniert. Deshalb empfehle ich hier immer den Namen des Servers einzutragen –> auch wenn dies ggf. zu Schwierigkeiten führt, wenn Sie die gleiche Konfigurationsdatei für mehrere Server verwenden wollen.

In das Feld Instance Name können Sie den Namen der Instanz eingeben, die überwacht werden soll oder ein “*”. Durch die Eingabe des Sterns werden alle Instanzen auf dem jeweiligen Server überwacht. Sollten mehrere Instanzen installiert sein, kann dies jedoch dazu führen, dass die Anzahl der Informationen, die sie aufzeichnen, zu groß wird, und damit eine sinnvolle Analyse nur schwer umzusetzen ist.

Bei der authentication method können Sie sich aktuell zwischen Windows Authentication oder SQL Server Authentication entscheiden. Für den Fall der SQL Server Authentication können Sie noch einen Login Namen eingeben. Die Eingabe eines Passworts ist jedoch nicht möglich.

Machine Wide Diagnostics

image

Auf dieser Registerkarte können Sie einstellen, ob die Event Logs mit eingesammelt werden sollen und den Zeitpunkt der Sammlung bestimmen. Die Option “Startup” bzw. “Shotdown” bezieht sich hierbei auf den Start bzw. Beenden von SQLDiag und nicht auf den Server. Ich würde Ihnen empfehlen die Event Logs für alle drei Bereiche (Application, Security und System) beim Shutdown einzusammeln. Dann haben Sie alle Ereignisse gespeichert, die vor bzw. während des Ausführens von SQLDiag aufgetreten sind.

Da die Ereignisprotokolle komplett eingesammelt werden, macht es Sinn diese vor dem Ausführen von SQLDiag zu löschen (entweder direkt mit Event Viewer oder per PowerShell). Hier das Beispiel für die Verwendung in der PowerShell:

# Sicherung des Ereignisprotokolls

get-eventlog Application| export-clixml -path ApplicationLog.xml
get-eventlog System| export-clixml –path Systemlog.xml
get-eventlog Security | export-clixml -path Securitylog.xml

# Löschen aller Ereignisse in allen Ereignisprotokollen
get-eventlog -list |%{$_.clear()}

Instance Specific Diagnostics

image

????????

Profiler Options

image

Mit den Profiler Options können Sie einen Trace des SQL Servers aufzeichnen. Über diesen Weg können Sie feststellen, welche Anweisungen Anwendungen an den SQL Server senden. Nachdem Sie die “SQL Tracing” eingeschaltet haben, ist zuerst das Tracing Template für den SQL Server 2005 aktiv. Sollten Sie eine der anderen Versionen des SQL Servers verwenden, dann schalten sie bitte das Template auf “DetailedPerformance10.xml” um. Leider ist die Anzeige der aktivierten Ereignisse nicht perfekt, denn auch unter den scheinbar nicht aktivierten Event-Gruppen verstecken sich Events, die aktiviert sind. Somit müssen Sie alle Klassen öffnen, um zu sehen, welche Ereignisse aktiviert sind. Bei diesem Verhalten handelt es sich aus meiner Sicht noch um einen Fehler der Anwendung, der sicherlich in einer der nächsten Versionen behoben wird.

Die aktivierten Ereignisse im DetailedPerformance10-Template sind eine gute Basis um mit dem Monitoring zu beginnen. Jedoch werden dabei eine Unmenge an Daten eingesammelt. Deshalb sollten Sie sich besser auf die Events beschränken, die sie später für die Auswertung wirklich benötigen.

Perfmon Option

image

Das Perfmon Option Tab stellt alle Performance Counter zusammen, die Sie für eine detaillierte Auswertung benötigen. Auch hier sollten Sie nur solche Performance Counter einsammeln, die später bei der Auswertung wirklich benötigt werden.

Producers

image

Analyzers

image

Advertisements
Über

Die IT-Welt wird immer komplexer und zwischen den einzelnen Komponenten gibt es immer mehr Abhängigkeiten. Nachdem ich durch meine tägliche Arbeit immer wieder vor der Herausforderung stehe, komplexe Probleme zu lösen, möchte ich diese Seite dafür verwenden, Euch den einen oder anderen Tipp zu geben, wenn Ihr vor ähnlichen Aufgabenstellungen steht.

Veröffentlicht in SQL Server

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: