Compartilhar via


Configure Distributed Replay

Os detalhes de configuração do Microsoft SQL Server Distributed Replay são especificados em arquivos XML no controlador do Distributed Replay, nos clientes e onde a ferramenta de administração está instalada. Esses arquivos incluem o seguinte:

Arquivo de configuração do controlador: DReplayController.config

Quando o serviço do controlador SQL Server Distributed Replay é iniciado, ele carrega o nível de log do arquivo de configuração do controlador, DReplayController.config. Esse arquivo está localizado na pasta em que você instalou o serviço de controlador de reprodução distribuída:

<caminho de instalação do controlador>\DReplayController.config

O nível de log especificado pelo arquivo de configuração do controlador inclui o seguinte:

Configuração Elemento XML Descrição Valores Permitidos Obrigatório
Nível de log <LoggingLevel> Especifica o nível de log do serviço de controlador. INFORMATION | WARNING | CRITICAL Não. Por padrão, o valor é CRITICAL.

Exemplo

Este exemplo mostra um arquivo de configuração do controlador que foi modificado para suprimir as entradas de log INFORMATION e WARNING .

<?xml version='1.0'?>  
<Options>  
<LoggingLevel>CRITICAL</LoggingLevel>  
</Options>  

Arquivo de configuração de cliente: DReplayClient.config

Quando o serviço cliente SQL Server Distributed Replay é iniciado, ele carrega as definições de configuração do arquivo de configuração de cliente, DReplayClient.config. Esse arquivo está localizado em cada cliente, na pasta em que você instalou o serviço de cliente de reprodução distribuída:

<caminho de instalação do cliente>\DReplayClient.config

As configurações especificadas pelo arquivo de configuração de cliente incluem o seguinte:

Configuração Elemento XML Descrição Valores Permitidos Obrigatório
Controller <Controller> Especifica o nome do computador do controlador. O cliente tentará se registrar com o ambiente de Distributed Replay entrando em contato o controlador. Você pode usar "localhost" ou "." para fazer referência ao computador local. Não. Por padrão, o cliente tenta se registrar com a instância de controlador que está sendo executada localmente ("."), se existir.
Diretório de trabalho do cliente <WorkingDirectory> É o caminho local no cliente onde os arquivos de expedição são salvos.

Os arquivos nesse diretório são substituídos na próxima reprodução.
Um nome de diretório completo, iniciando com a letra da unidade. Não. Se nenhum valor for especificado, os arquivos de expedição serão salvos no mesmo local que o arquivo de configuração de cliente padrão. Se for especificado um valor e essa pasta não existir no cliente, o serviço do cliente não será iniciado.
Diretório de resultado do cliente <ResultDirectory> É o caminho local no cliente onde o arquivo de rastreamento de resultado da atividade de reprodução (do cliente) é salvo.

Os arquivos nesse diretório são substituídos na próxima reprodução.
Um nome de diretório completo, iniciando com a letra da unidade. Não. Se nenhum valor for especificado, o arquivo de rastreamento de resultado será salvo no mesmo local que o arquivo de configuração de cliente padrão. Se for especificado um valor e essa pasta não existir no cliente, o serviço do cliente não será iniciado.
Nível de log <LoggingLevel> É o nível de log do serviço do cliente. INFORMATION | WARNING | CRITICAL Não. Por padrão, o valor é CRITICAL.

Exemplo

Este exemplo mostra um arquivo de configuração de cliente que foi modificado para especificar que o serviço de controlador está em execução em um computador diferente, um computador denominado Controller1. Os elementos WorkingDirectory e ResultDirectory foram configurados para usar as pastas c:\ClientWorkingDir e c:\ResultTraceDir, respectivamente. O nível de log foi alterado do valor padrão para suprimir as entradas de log INFORMATION e WARNING .

<?xml version='1.0'?>  
<Options>  
    <Controller>Controller1</Controller>  
    <WorkingDirectory>c:\ClientWorkingDir</WorkingDirectory>  
    <ResultDirectory>c:\ResultTraceDir</ResultDirectory>  
    <LoggingLevel>CRITICAL</LoggingLevel>  
</Options>  

Arquivo de configuração de pré-processamento: DReplay.exe.preprocess.config

Quando você usar a ferramenta de administração para iniciar o estágio de pré-processamento, ela carregará as configurações de pré-processamento do arquivo de configuração de pré-processamento, DReplay.exe.preprocess.config.

Use o arquivo de configuração padrão ou use o parâmetro -c da ferramenta de administração para especificar o local de um arquivo de configuração de pré-processamento modificado. Para obter mais informações de como usar a opção de pré-processamento da ferramenta de administração, confira Opção de Pré-processamento (Ferramenta de Administração do Distributed Replay).

O arquivo de configuração de pré-processamento padrão está localizado na pasta em que você instalou a ferramenta de administração:

<caminho de instalação da ferramenta de administração>\DReplayAdmin\DReplay.exe.preprocess.config

As definições de configuração de pré-processamento são especificadas em elementos XML que são filhos do elemento <PreprocessModifiers> no arquivo de configuração de pré-processamento. Essas configurações incluem o seguinte:

Configuração Elemento XML Descrição Valores Permitidos Obrigatório
Incluir atividades de sessão de sistema <IncSystemSession> Indica se as atividades de sessão de sistema durante a captura serão incluídas durante a reprodução. Yes | No Não. Por padrão, o valor é No.
Tempo ocioso máximo <MaxIdleTime> Arredonda o tempo ocioso para um número absoluto (em segundos). Um inteiro que é >= -1

-1 indica que não houve alteração do valor original no arquivo de rastreamento original.

0 indica que há alguma atividade ocorrendo em um determinado momento.
Não. Por padrão, o valor é -1.

Exemplo

O arquivo de configuração de pré-processamento padrão:

<?xml version='1.0'?>  
<Options>  
    <PreprocessModifiers>  
        <IncSystemSession>No</IncSystemSession>  
        <MaxIdleTime>-1</MaxIdleTime>  
    </PreprocessModifiers>  
</Options>  

Arquivo de configuração de reprodução: DReplay.exe.replay.config

Quando você usar a ferramenta de administração para iniciar o estágio de reprodução do evento, ela carregará as configurações de reprodução do arquivo de configuração de reprodução, DReplay.exe.replay.config.

Use o arquivo de configuração padrão ou use o parâmetro -c da ferramenta de administração para especificar o local de um arquivo de configuração de reprodução modificado. Para obter mais informações de como usar a opção de reprodução da ferramenta de administração, confira Opção de Reprodução (Ferramenta de Administração do Distributed Replay).

O arquivo de configuração de reprodução padrão está localizado na pasta em que você instalou a ferramenta de administração:

<caminho de instalação da ferramenta de administração>\DReplayAdmin\DReplay.exe.replay.config

As definições de configuração de reprodução são especificadas em elementos XML que são filhos dos elementos <ReplayOptions> e <OutputOptions> do arquivo de configuração de reprodução.

Elemento <ReplayOptions>

As configurações especificadas pelo arquivo de configuração de reprodução no elemento <ReplayOptions> incluem o seguinte:

Configuração Elemento XML Descrição Valores Permitidos Obrigatório
Instância de destino do SQL Server (o servidor de teste) <Server> Especifica o nome do servidor e a instância do SQL Server para conexão. server_name[\instance_name]

Você não pode usar "localhost" ou "." para representar o host local.
Não, se o nome do servidor já tiver sido especificado usando o parâmetro -starget server com a opção replay da ferramenta de administração.
Modo de sequenciamento <SequencingMode> Especifica o modo usado para o agendamento de eventos. synchronization | stress Não. Por padrão, o valor é stress.
Granularidade de escala de tensão <StressScaleGranularity> Especifica se deveriam ser dimensionadas todas as conexões no Identificador de Perfil de Serviço (SPID) junto (SPID) ou independentemente (Conexão) sob modo de tensão. SPID | Connection Sim. Por padrão, o valor é SPID.
Escala de tempo de conexão <ConnectTimeScale> É usada para dimensionar o tempo de conexão em modo de estresse. Um inteiro entre 1 e 100. Não. Por padrão, o valor é 100.
Escala de tempo de resposta <ThinkTimeScale> É usada para dimensionar o tempo de resposta em modo de estresse. Um inteiro entre 0 e 100. Não. Por padrão, o valor é 100.
Usar o pool de conexões <UseConnectionPooling> Especifica se conexão agrupando será habilitado em cada cliente de Reprodução distribuída. Sim | Não Sim. Por padrão, o valor é Yes.
Intervalo do monitor de integridade <HealthmonInterval> Indica a frequência com que o monitor de integridade deve ser executado (em segundos).

Este valor é usado somente no modo de sincronização.
Inteiro >= 1

(-1 para desabilitar)
Não. Por padrão, o valor é 60.
Tempo limite de consulta <QueryTimeout> Especifica o valor do tempo limite de consulta, em segundos. Esse valor estará em vigor somente até que a primeira linha tenha sido retornada. Inteiro >= 1

(-1 para desabilitar)
Não. Por padrão, o valor é 3600.
Threads por cliente <ThreadsPerClient> Especifica o número de threads de reprodução que devem ser usados para cada cliente de reprodução. Um inteiro entre 1 e 512. Não. Se não especificado, o Distributed Replay usará o valor 255.

Elemento <OutputOptions>

As configurações especificadas pelo arquivo de configuração de reprodução no elemento <OutputOptions> incluem o seguinte:

Configuração Elemento XML Descrição Valores Permitidos Obrigatório
Gravar contagem de linhas <RecordRowCount> Indica se a contagem de linhas de cada conjunto de resultados deve ser gravada. Yes | No Não. Por padrão, o valor é Yes.
Gravar conjunto de resultados <RecordResultSet> Indica se o conteúdo de todos os conjuntos de resultados deve ser gravado. Yes | No Não. Por padrão, o valor é No.

Exemplo

O arquivo de configuração de reprodução padrão:

<?xml version='1.0'?>  
<Options>  
    <ReplayOptions>  
        <Server></Server>  
        <SequencingMode>stress</SequencingMode>  
        <ConnectTimeScale></ConnectTimeScale>  
        <ThinkTimeScale></ThinkTimeScale>  
        <HealthmonInterval>60</HealthmonInterval>  
        <QueryTimeout>3600</QueryTimeout>  
        <ThreadsPerClient></ThreadsPerClient>  
    </ReplayOptions>  
    <OutputOptions>  
        <ResultTrace>  
            <RecordRowCount>Yes</RecordRowCount>  
            <RecordResultSet>No</RecordResultSet>  
        </ResultTrace>  
    </OutputOptions>  
</Options>  

Consulte Também

Opções de linha de comando da ferramenta de administração (Distributed Replay Utility)
SQL Server Distributed Replay
Fórum do SQL Server Distributed Replay
Uso do Distributed Replay para teste de carga do SQL Server – Parte 2
Usando o Distributed Replay para teste de carga do SQL Server – Parte 1