Configurar 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 estiver instalada. Esses arquivos incluem o seguinte:
Arquivo de configuração do controlador
Arquivo de configuração de cliente
Arquivo de configuração de pré-processamento
Arquivo de configuração de reprodução
Arquivo de configuração do controlador: DReplayController.config
Quando o serviço SQL Server Distributed Replay Controller é 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:
<controller installation path>\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:
<client installation path>\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 |
---|---|---|---|---|
Controlador |
<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 sobre como usar a opção de pré-processamento da ferramenta de administração, consulte Opção de pré-processamento (ferramenta de administração 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:
<administration tool installation path>\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:
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.
|
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 sobre como usar a opção de reprodução da ferramenta de administração, consulte Opção Replay (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:
<administration tool installation path>\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 de servidor já tiver sido especificado usando o parâmetro -s target 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
Referência
Opções de linha de comando da ferramenta de administração (Distributed Replay Utility)
Conceitos
Outros recursos
Fórum do SQL Server Distributed Replay
Usando o Distributed Replay para teste de carga do SQL Server – parte 2
Usando o Distributed Replay para teste de carga do SQL Server – parte 1