Freigeben über


Abfragen der SQL-Überwachungsdatenbank mithilfe von Windows PowerShell

In diesem Beispiel wird gezeigt, wie SQL-Skripting zum Erstellen eines typischen Windows PowerShell-Cmdlet verwendet wird, das Überwachungsdaten abruft. Es trägt außerdem zum Verständnis der SQL-Sichten bei, die von Windows Server AppFabric zur Verfügung gestellt werden. Dieses Beispiel funktioniert mit beliebigen Anwendungen. Es wird die Gemeinsame Windows Server AppFabric-Beispielanwendung empfohlen, die für die Verwendung mit AppFabric-Beispielen erstellt wurde. Sie finden diese Anwendung, wenn Sie in den Ordner <Beispiele>\SampleApplication\OrderApplication navigieren. Dabei ist <Beispiele> der Pfad, unter dem Sie die AppFabric-Beispiele installiert haben.

Hinweis

Beispiele werden nur zu Anschauungszwecken bereitgestellt. Sie sind nicht für die Verwendung in einer Produktionsumgebung gedacht und wurden nicht in einer Produktionsumgebung getestet. Microsoft bietet keinen technischen Support für diese Beispiele.

Voraussetzungen

Benutzer sollten über Kenntnisse hinsichtlich Windows PowerShell-Skripting und SQL-Befehlen verfügen. Das Beispiel setzt Folgendes voraus:

  • Windows PowerShell 2.0 ist installiert.

  • SQL Server 2008 Express ist installiert.

  • AppFabric ist installiert.

Beispielspeicherort und -dateien

  • Scripts\ScriptCmdlets.ps1

  • Readme.mhtml

Einrichten und Ausführen dieses Beispiels

Gehen Sie zum Ausführen dieses Skripts folgendermaßen vor:

  1. Öffnen Sie die Windows PowerShell-Konsole mit Administratorberechtigungen.

  2. Navigieren Sie zu dem Ordner, der das Beispiel enthält.

  3. Navigieren Sie zum Unterverzeichnis Scripts des Beispielordners SQLMonitoringQueryCmdlets.

  4. Führen Sie die folgenden Befehle aus:

    Set-ExecutionPolicy Unrestricted
    Import-Module ‘.\ScriptCmdlets.ps1’
    

Informationen zum Verständnis dieses Beispiels

Das Überwachungsabfragebeispiel stellt die folgenden Cmdlets zur Verfügung:

  • Get-ASAppTrackedPropertyName

  • Get-ASAppTrackedInstance

  • Get-ASAppTrackedWcfEvent

  • Get-ASAppTrackedWfEvent

Get-ASAppTrackedPropertyName

Dieses Cmdlet fragt die Überwachungsdatenbank nach den nachverfolgten Eigenschaftennamen ab, die für einen bestimmten Dienst verfügbar sind. Für einen angegebenen Workflowdienst erfasst das Nachverfolgungsframework Eigenschaften für bestimmte Ereignisse, z. B. Umgebungsvariablen und benutzernachverfolgte Variablen. Dieses Cmdlet gibt die Namen aller Variablen zurück, die für einen angegebenen Workflowdienst verfügbar sind.

Syntax

Get-ASAppTrackedPropertyName [-Database<String>] [-MachineName<String>] [-Server <String>] [-SiteName <String>] [-VirtualPath <String>] 

Parameter

Database – Zwingend erforderlicher Parameter. Eine Zeichenfolge, die die abzufragende Datenbank angibt.

MachineName – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen nur der auf dem angegebenen Computer generierten Überwachungsdaten verwendet wird.

Server – Zwingend erforderlicher Parameter. Eine Zeichenfolge, die den abzufragenden SQL-Server angibt.

SiteName – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen der Eigenschaftennamen von Instanzen für die angegebene Site verwendet wird.

VirtualPath – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen der Eigenschaftennamen von Instanzen von Diensten verwendet wird, die sich unter dem angegebenen virtuellen Pfad befinden.

Piping

Das Cmdlet Get-ASAppTrackedPropertyName kann vom Cmdlet Get-ASAppService weitergereicht werden. Get-ASAppService gibt ein ApplicationObject zurück, das als Eingabe für Get-ASAppTrackedPropertyName verwendet werden kann.

Beispiele

    Get-ASAppTrackedPropertyName –SiteName “Default Web Site” –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppService –SiteName “Default Web Site” | Get-ASAppTrackedPropertyName –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase

Get-ASAppTrackedInstance

Dieses Cmdlet ermöglicht Benutzern das Abfragen von Daten zu Dienstinstanzen, die nachverfolgt wurden. Die Benutzer können Kriterien für die nachverfolgten Instanzen angeben, die erfüllt sein müssen, um diese Instanzen zurückzugeben. Dieses Cmdlet funktioniert in jedem der Betriebsbereiche: Computer, Site, Webanwendung, Dienst und virtuelles Verzeichnis.

Syntax

Get-ASAppTrackedInstance [-Count <Switch>] [-Database<String>] [-MachineName<String>] [-MaxResults <int>] [-ModifiedSince <DateTime>] [-Server <String>]  [-SiteName <String>] [-VirtualPath <String>] 

Parameter

Count – Optionaler Parameter. Ein Flag das, sofern es angegeben ist, die Rückgabe der Anzahl von Instanzen, die mit den angegebenen Kriterien übereinstimmen, durch das Cmdlet bewirkt.

Database – Zwingend erforderlicher Parameter. Eine Zeichenfolge, die die abzufragende Datenbank angibt.

MachineName – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen nur der auf dem angegebenen Computer generierten Überwachungsdaten verwendet wird.

MaxResults – Optionaler Parameter. Eine ganze Zahl, die verwendet wird, um die maximale Anzahl der angezeigten Ergebnisse anzugeben. Der Standardwert ist 50.

ModifiedSince – Optionaler Parameter. Ein Datums-/Uhrzeitwert, der verwendet wird, um nur die Instanzen abzufragen, die nach der angegebenen Uhrzeit am angegebenen Datum geändert wurden.

Server – Zwingend erforderlicher Parameter. Eine Zeichenfolge, die den abzufragenden SQL-Server angibt.

SiteName – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen von Instanzen nur für die angegebene Site verwendet wird.

VirtualPath – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen von Instanzen verwendet wird, die sich unter dem angegebenen virtuellen Pfad befinden.

Piping

Das Cmdlet Get-ASAppTrackedInstance kann vom Cmdlet Get-ASAppService weitergereicht werden. Get-ASAppService gibt ein ApplicationObject zurück, das als Eingabe für Get-ASAppTrackedInstance verwendet werden kann.

Beispiele

    Get-ASAppTrackedInstance –SiteName “Default Web Site” –Count –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppTrackedInstance –MaxResults 10  –ModifiedSince 2-20-2010 –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppService –SiteName “Default Web Site” | Get-ASAppTrackedInstance –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase

Get-ASAppTrackedWcfEvent

Dieses Cmdlet fragt die Überwachungsdatenbank auf WCF-Ereignisdaten ab. Dieses Cmdlet funktioniert in jedem der Betriebsbereiche: Computer, Site, Webanwendung, Dienst und virtuelles Verzeichnis.

Syntax

Get-ASAppTrackedWcfEvent [-Count <Switch>] [-Database<String>] [-EmitTimeFrom <DateTime>] [-EmitTimeTo <DateTime>] [-MachineName<String>] [-MaxResults <int>]  [-Server <String>]  [-SiteName <String>] [-VirtualPath <String>] 

Parameter

Count – Optionaler Parameter. Ein Flag das, sofern es angegeben ist, die Rückgabe der Anzahl von WCF-Ereignissen, die mit den angegebenen Kriterien übereinstimmen, durch das Cmdlet bewirkt.

Database – Zwingend erforderlicher Parameter. Eine Zeichenfolge, die die abzufragende Datenbank angibt.

EmitTimeFrom – Optionaler Parameter. Ein Datums-/Uhrzeitwert, der verwendet wird, um nur die WCF-Ereignisse abzufragen, die nach der angegebenen Uhrzeit am angegebenen Datum gesendet wurden.

EmitTimeTo – Optionaler Parameter. Ein Datums-/Uhrzeitwert, der verwendet wird, um nur die WCF-Ereignisse abzufragen, die vor der angegebenen Uhrzeit am angegebenen Datum gesendet wurden.

MachineName – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen nur der auf dem angegebenen Computer generierten WCF-Ereignisse verwendet wird.

MaxResults – Optionaler Parameter. Eine ganze Zahl, die verwendet wird, um die maximale Anzahl der angezeigten Ergebnisse anzugeben. Der Standardwert ist 50.

Server – Zwingend erforderlicher Parameter. Eine Zeichenfolge, die den abzufragenden SQL-Server angibt.

SiteName – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen nur der auf der angegebenen Website generierten WCF-Ereignisse verwendet wird.

VirtualPath – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen nur der unter dem angegebenen virtuellen Pfad generierten WCF-Ereignisse verwendet wird.

Piping

Das Cmdlet Get-ASAppTrackedWcfEvent kann vom Cmdlet Get-ASAppService weitergereicht werden. Get-ASAppService gibt ein ApplicationObject zurück, das als Eingabe für Get-ASAppTrackedWcfEvent verwendet werden kann.

Beispiele

    Get-ASAppTrackedWcfEvent –SiteName “Default Web Site” –Count  –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppTrackedWcfEvent  –MaxResults 10 –EmitTimeFrom 2-20-2010 –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppTrackedWcfEvent –EmitTimeFrom 2-18-2010 –EmitTimeTo 2-20-2010 –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppService –SiteName “Default Web Site” | Get-ASAppTrackedWcfEvent –MaxResult 5 –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase

Get-ASAppTrackedWfEvent

Dieses Cmdlet fragt die Überwachungsdatenbank auf WF-Ereignisdaten ab. Dieses Cmdlet funktioniert in jedem der Betriebsbereiche: Computer, Site, Webanwendung, Dienst und virtuelles Verzeichnis.

Syntax

Get-ASAppTrackedWfEvent [-Count <Switch>] [-Database<String>] [-EmitTimeFrom <DateTime>] [-EmitTimeTo <DateTime>] [-MachineName<String>] [-MaxResults <int>] [-Server <String>] [-SiteName <String>] [-VirtualPath <String>] 

Parameter

Count – Optionaler Parameter. Ein Flag das, sofern es angegeben ist, die Rückgabe der Anzahl von WF-Ereignissen, die mit den angegebenen Kriterien übereinstimmen, durch das Cmdlet bewirkt.

Database – Zwingend erforderlicher Parameter. Eine Zeichenfolge, die die abzufragende Datenbank angibt.

EmitTimeFrom – Optionaler Parameter. Ein Datums-/Uhrzeitwert, der verwendet wird, um nur die WF-Ereignisse abzufragen, die nach der angegebenen Uhrzeit am angegebenen Datum gesendet wurden.

EmitTimeTo – Optionaler Parameter. Ein Datums-/Uhrzeitwert, der verwendet wird, um nur die WF-Ereignisse abzufragen, die vor der angegebenen Uhrzeit am angegebenen Datum gesendet wurden.

MachineName – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen nur der auf dem angegebenen Computer gesendeten WF-Ereignisse verwendet wird.

MaxResults – Optionaler Parameter. Eine ganze Zahl, die verwendet wird, um die maximale Anzahl der angezeigten Ergebnisse anzugeben. Der Standardwert ist 50.

Server – Zwingend erforderlicher Parameter. Eine Zeichenfolge, die den abzufragenden SQL-Server angibt.

SiteName – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen nur der auf der angegebenen Website generierten WF-Ereignisse verwendet wird.

VirtualPath – Optionaler Parameter. Eine Zeichenfolge, die zum Abfragen nur der unter dem angegebenen virtuellen Pfad generierten WF-Ereignisse verwendet wird.

Piping

Das Cmdlet Get-ASAppTrackedWfEvent kann vom Cmdlet Get-ASAppService weitergereicht werden. Get-ASAppService gibt ein ApplicationObject zurück, das als Eingabe für Get-ASAppTrackedWfEvent verwendet werden kann.

Beispiel

    Get-ASAppTrackedWfEvent –SiteName “Default Web Site” –Count –EmitTimeFrom 2-20-2010 –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppTrackedWfEvent –VirtualPath “/calculator/service.xamlx” –MaxResults 10 –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppTrackedWfEvent –EmitTimeFrom 2-18-2010 –EmitTimeTo 2-20-2010 –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppTrackedWfEvent –Count –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase
    Get-ASAppService –SiteName “Default Web Site” | Get-ASAppTrackedWfEvent –Count –Server localhost\SQLExpress –Database ApplicationServerMonitoringDatabase

Entfernen dieses Beispiels

Wenn Sie dieses Beispiel entfernen möchten, löschen Sie die zugehörigen Dateien, und setzen Sie Ihre Ausführungsrichtlinie auf die vorherige Stufe oder die Standardeinstellung für Windows PowerShell mithilfe des folgenden Befehls zurück:

Set-ExecutionPolicy Default

  2011-12-05