Partilhar via


Consultando o banco de dados de monitoramento SQL usando o Windows PowerShell

Esse exemplo descreve como usar scripts de SQL para criar um cmdlet comum do Windows PowerShell que recupera os dados de monitoramento. Ele também ajuda você a compreender as exibições do SQL que o Windows Server AppFabric oferece. Esse exemplo funcionará com qualquer aplicativo. É recomendável o Aplicativo comum de exemplo do Windows Server AppFabric, que foi criado para ser usado com exemplos do AppFabric. Para encontrar esse aplicativo, navegue até a pasta <exemplos>\SampleApplication\OrderApplication, onde <exemplos> é o caminho no qual você instalou os exemplos do AppFabric.

Observação

Os exemplos são fornecidos apenas para fins educacionais. Eles não devem ser usados em um ambiente de produção e não foram testados em um ambiente de produção. A Microsoft não oferece suporte técnico para esses exemplos.

Pré-requisitos

Os usuários devem ter conhecimento de scripts do Windows PowerShell e comandos do SQL. O exemplo pressupõe o seguinte:

  • que o Windows PowerShell 2.0 esteja instalado

  • que o SQL Server 2008 Express esteja instalado

  • que o AppFabric esteja instalado

Localização do exemplo e arquivos

  • Scripts\ScriptCmdlets.ps1

  • Readme.mhtml

Configurando e executando esse exemplo

Para executar este script:

  1. Abra o console do Windows PowerShell com privilégios administrativos.

  2. Vá até a pasta que contém o exemplo.

  3. Vá até o subdiretório Scripts da pasta de exemplos SQLMonitoringQueryCmdlets.

  4. Execute os seguintes comandos:

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

Noções básicas sobre esse exemplo

O exemplo de Consulta de monitoramento expõe os seguintes cmdlets:

  • Get-ASAppTrackedPropertyName

  • Get-ASAppTrackedInstance

  • Get-ASAppTrackedWcfEvent

  • Get-ASAppTrackedWfEvent

Get-ASAppTrackedPropertyName

Esse cmdlet consulta o banco de dados de armazenamento para obter os nomes das propriedades acompanhadas que estão disponíveis para um serviço particular. Para um determinado serviço de fluxo de trabalho, a estrutura de rastreamento captura as propriedades em certos eventos como variáveis de ambiente e variáveis rastreadas pelos usuários. Esse cmdlet retorna os nomes de todas as variáveis que estão disponíveis para um determinado serviço de fluxo de trabalho.

Sintaxe

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

Parâmetros

Database - Parâmetro obrigatório. Uma cadeia de caracteres que indica qual banco de dados consultar.

MachineName - Parâmetro opcional. Uma cadeia de caracteres usada para consultar apenas os dados de monitoramento que foram gerados na máquina especificada.

Server - Parâmetro obrigatório. Uma cadeia de caracteres que indica qual SQL server consultar.

SiteName - Parâmetro opcional. Uma cadeia de caracteres usada para consultar os nomes de propriedade de instâncias para o site especificado.

VirtualPath - Parâmetro opcional. Uma cadeia de caracteres usada para consultar os nomes de propriedade de instâncias de serviços localizados no ou sob o caminho virtual especificado.

Piping

O cmdlet Get-ASAppTrackedPropertyName pode ser conectado a partir do cmdlet Get-ASAppService. Get-ASAppService retorna um ApplicationObject que pode ser usado como entrada para Get-ASAppTrackedPropertyName.

Exemplos

    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

Esse cmdlet permite que os usuários façam consultas em dados sobre instâncias de serviço que foram rastreadas. Os usuários podem especificar os critérios que devem corresponder às instâncias para que elas sejam retornadas. Esse cmdlet funciona em todos os escopos operacionais: Máquina, Site, Aplicativo, Serviço e Caminho virtual.

Sintaxe

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

Parâmetros

Count - Parâmetro opcional. Um sinalizador que, quando especificado, faz com que o cmdlet retorne uma contagem de instâncias que corresponde aos critérios especificados.

Database - Parâmetro obrigatório. Uma cadeia de caracteres que indica qual banco de dados consultar.

MachineName - Parâmetro opcional. Uma cadeia de caracteres usada para consultar apenas os dados de monitoramento que foram gerados na máquina especificada.

MaxResults - Parâmetro opcional. Um número inteiro usado para especificar o número máximo de resultados exibidos. O padrão é 50.

ModifiedSince - Parâmetro opcional. Uma data/hora usada para consultar apenas as instâncias que foram modificadas após essa data/hora.

Server - Parâmetro obrigatório. Uma cadeia de caracteres que indica qual SQL server consultar.

SiteName - Parâmetro opcional. Uma cadeia de caracteres usada para consultar somente as instâncias para o site especificado.

VirtualPath - Parâmetro opcional. Uma cadeia de caracteres usada para consultar somente as instâncias localizadas no ou sob o caminho virtual especificado.

Piping

O cmdlet Get-ASAppTrackedInstance pode ser conectado a partir do cmdlet Get-ASAppService. Get-ASAppService retorna um ApplicationObject que pode ser usado como entrada para Get-ASAppTrackedInstance.

Exemplos

    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

Esse cmdlet consulta o banco de dados de monitoramento em busca de dados de evento do WF. Esse cmdlet funciona em todos os escopos operacionais: Máquina, Site, Aplicativo, Serviço e Caminho virtual.

Sintaxe

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

Parâmetros

Count - Parâmetro opcional. Um sinalizador que, quando especificado, faz com que o cmdlet retorne uma contagem de eventos WCF que corresponde aos critérios especificados.

Database - Parâmetro obrigatório. Uma cadeia de caracteres que indica qual banco de dados consultar.

EmitTimeFrom - Parâmetro opcional. Uma data/hora usada para consultar apenas os eventos WCF que foram emitidos após essa data/hora.

EmitTimeTo - Parâmetro opcional. Uma data/hora usada para consultar apenas os eventos WCF que foram emitidos antes dessa data/hora.

MachineName - Parâmetro opcional. Uma cadeia de caracteres usada para consultar apenas os eventos WCF que foram gerados na máquina especificada.

MaxResults - Parâmetro opcional. Um número inteiro usado para especificar o número máximo de resultados exibidos. O padrão é 50.

Server - Parâmetro obrigatório. Uma cadeia de caracteres que indica qual SQL server consultar.

SiteName - Parâmetro opcional. Uma cadeia de caracteres usada para consultar apenas os eventos WCF que foram gerados no site especificado.

VirtualPath - Parâmetro opcional. Uma cadeia de caracteres usada para consultar apenas os eventos WCF que foram gerados no ou sob o caminho virtual especificado.

Piping

O cmdlet Get-ASAppTrackedWcfEvent pode ser conectado a partir do cmdlet Get-ASAppService. Get-ASAppService retorna um ApplicationObject que pode ser usado como entrada para Get-ASAppTrackedWcfEvent.

Exemplos

    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

Esse cmdlet consulta o banco de dados de monitoramento em busca de dados de evento do WCF. Esse cmdlet funciona em todos os escopos operacionais: Máquina, Site, Aplicativo, Serviço e Caminho virtual.

Sintaxe

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

Parâmetros

Count - Parâmetro opcional. Um sinalizador que, quando especificado, faz com que o cmdlet retorne uma contagem de eventos WF que corresponde aos critérios especificados.

Database - Parâmetro obrigatório. Uma cadeia de caracteres que indica qual banco de dados consultar.

EmitTimeFrom - Parâmetro opcional. Uma data/hora usada para consultar apenas os eventos WF que foram emitidos após essa data/hora.

EmitTimeTo - Parâmetro opcional. Uma data/hora usada para consultar apenas os eventos WF que foram emitidos antes dessa data/hora.

MachineName - Parâmetro opcional. Uma cadeia de caracteres usada para consultar apenas os eventos WF que foram emitidos no computador especificado.

MaxResults - Parâmetro opcional. Um número inteiro usado para especificar o número máximo de resultados exibidos. O padrão é 50.

Server - Parâmetro obrigatório. Uma cadeia de caracteres que indica qual SQL server consultar.

SiteName - Parâmetro opcional. Uma cadeia de caracteres usada para consultar apenas os eventos WF que foram gerados no site especificado.

VirtualPath - Parâmetro opcional. Uma cadeia de caracteres usada para consultar apenas os eventos WF que foram gerados no ou sob o caminho virtual especificado.

Piping

O cmdlet Get-ASAppTrackedWfEvent pode ser conectado a partir do cmdlet Get-ASAppService. Get-ASAppService retorna um ApplicationObject que pode ser usado como entrada para Get-ASAppTrackedWfEvent.

Exemplo

    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

Removendo esse exemplo

Para remover esta amostra, exclua seus arquivos e reverta a diretiva de execução para seu nível anterior ou para o padrão do Windows PowerShell com o seguinte comando:

Set-ExecutionPolicy Default

  2011-12-05