Distributed Replay 구성

Microsoft SQL Server Distributed Replay 구성 세부 정보는 Distributed Replay 컨트롤러, 클라이언트 및 관리 도구가 설치되는 위치의 XML 파일에서 지정됩니다. 이러한 파일은 다음과 같습니다.

  • 컨트롤러 구성 파일

  • 클라이언트 구성 파일

  • 전처리 구성 파일

  • 재생 구성 파일

컨트롤러 구성 파일: DReplayController.config

SQL Server Distributed Replay 컨트롤러 서비스가 시작되면 컨트롤러 구성 파일 DReplayController.config에서 로깅 수준을 로드합니다. 이 파일은 Distributed Replay 컨트롤러 서비스를 설치한 폴더에 있습니다.

<controller installation path>\DReplayController.config

컨트롤러 구성 파일에 지정되는 로깅 수준은 다음과 같습니다.

설정

XML 요소

설명

허용되는 값

필수 사항

로깅 수준

<LoggingLevel>

컨트롤러 서비스에 대한 로깅 수준을 지정합니다.

INFORMATION | WARNING | CRITICAL

아니요. 기본적으로 값은 CRITICAL입니다.

이 예에서는 INFORMATION 및 WARNING 로그 항목을 표시하지 않도록 수정된 컨트롤러 구성 파일을 보여 줍니다.

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

클라이언트 구성 파일: DReplayClient.config

SQL Server Distributed Replay 클라이언트 서비스가 시작되면 클라이언트 구성 파일 DReplayClient.config에서 구성 설정을 로드합니다. 이 파일은 Distributed Replay 컨트롤러 서비스를 설치한 폴더에 있습니다.

<client installation path>\DReplayClient.config

클라이언트 구성 파일에 지정되는 설정은 다음과 같습니다.

설정

XML 요소

설명

허용되는 값

필수 사항

컨트롤러

<Controller>

컨트롤러의 컴퓨터 이름을 지정합니다. 클라이언트는 컨트롤러에 연결하여 Distributed Replay 환경에 등록합니다.

"localhost" 또는 "."을 사용하여 로컬 컴퓨터를 참조할 수 있습니다.

아니요. 클라이언트는 기본적으로 로컬로 실행 중인(".") 컨트롤러 인스턴스(있는 경우)에 등록합니다.

클라이언트 작업 디렉터리

<WorkingDirectory>

클라이언트에서 디스패치 파일이 저장된 로컬 경로입니다.

이 디렉터리의 파일은 다음 재생 시 덮어씁니다.

드라이브 문자로 시작하는 전체 디렉터리 이름

아니요. 지정된 값이 없으면 디스패치 파일이 기본 클라이언트 구성 파일과 같은 위치에 저장됩니다. 지정된 값이 있지만 해당 폴더가 클라이언트에 없으면 클라이언트 서비스가 시작되지 않습니다.

클라이언트 결과 디렉터리

<ResultDirectory>

클라이언트에서 클라이언트에 대한 재생 작업의 결과 추적 파일이 저장되는 로컬 경로입니다.

이 디렉터리의 파일은 다음 재생 시 덮어씁니다.

드라이브 문자로 시작하는 전체 디렉터리 이름

아니요. 지정된 값이 없으면 결과 추적 파일이 기본 클라이언트 구성 파일과 같은 위치에 저장됩니다. 지정된 값이 있지만 해당 폴더가 클라이언트에 없으면 클라이언트 서비스가 시작되지 않습니다.

로깅 수준

<LoggingLevel>

클라이언트 서비스에 대한 로깅 수준입니다.

INFORMATION | WARNING | CRITICAL

아니요. 기본적으로 값은 CRITICAL입니다.

이 예에서는 컨트롤러 서비스가 Controller1이라는 다른 컴퓨터에서 실행되도록 수정된 클라이언트 구성 파일을 보여 줍니다. WorkingDirectory 및 ResultDirectory 요소는 각각 c:\ClientWorkingDir 및 c:\ResultTraceDir 폴더를 사용하도록 구성되었습니다. INFORMATION 및 WARNING 로그 항목을 표시하지 않도록 기본값이 아닌 다른 값으로 로깅 수준이 변경되었습니다.

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

전처리 구성 파일: DReplay.exe.preprocess.config

관리 도구를 사용하여 전처리 단계를 시작하면 관리 도구가 전처리 구성 파일 DReplay.exe.preprocess.config에서 전처리 설정을 로드합니다.

기본 구성 파일을 사용하거나 관리 도구 -c 매개 변수를 사용하여 수정한 전처리 구성 파일의 위치를 지정할 수 있습니다. 관리 도구의 전처리 옵션을 사용하는 방법은 전처리 옵션(Distributed Replay Utility Administration Tool)을 참조하십시오.

기본 전처리 구성 파일은 관리 도구를 설치한 폴더에 있으면 위치는 다음과 같습니다.

<administration tool installation path>\DReplayAdmin\DReplay.exe.preprocess.config

전처리 구성 설정은 전처리 구성 파일에서 <PreprocessModifiers> 요소의 자식 요소인 XML 요소에 지정됩니다. 여기에는 다음과 같은 설정이 포함됩니다.

설정

XML 요소

설명

허용되는 값

필수 사항

시스템 세션 작업 포함

<IncSystemSession>

캡처하는 동안의 시스템 세션 작업이 재생 중에 포함되는지 여부를 나타냅니다.

Yes | No

아니요. 기본적으로 값은 No입니다.

최대 유휴 시간

<MaxIdleTime>

유휴 시간을 절대 수(초)로 나타냅니다.

-1보다 크거나 같은 정수입니다.

  • -1은 원래 추적 파일의 원래 값이 변경되지 않음을 의미합니다.

  • 0은 지정된 시점에 일부 작업이 진행 중임을 나타냅니다.

아니요. 기본적으로 값은 -1입니다.

기본 전처리 구성 파일입니다.

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

재생 구성 파일: DReplay.exe.replay.config

관리 도구를 사용하여 이벤트 재생 단계를 시작하면 관리 도구가 재생 구성 파일 DReplay.exe.replay.config에서 재생 설정을 로드합니다.

기본 구성 파일을 사용하거나 관리 도구 -c 매개 변수를 사용하여 수정한 재생 구성 파일의 위치를 지정할 수 있습니다. 관리 도구의 재생 옵션을 사용하는 방법은 재생 옵션(Distributed Replay Administration Tool)을 참조하십시오.

기본 재생 구성 파일은 관리 도구를 설치한 폴더에 있으며 위치는 다음과 같습니다.

<administration tool installation path>\DReplayAdmin\DReplay.exe.replay.config

재생 구성 설정은 재생 구성 파일에서 <ReplayOptions> 및 <OutputOptions> 요소의 자식 요소인 XML 요소에 지정됩니다.

<ReplayOptions> 요소

재생 구성 파일의 <ReplayOptions> 요소에 지정되는 설정은 다음과 같습니다.

설정

XML 요소

설명

허용되는 값

필수 사항

대상 SQL Server 인스턴스(테스트 서버)

<Server>

연결할 서버 및 SQL Server 인스턴스의 이름을 지정합니다.

server_name[\instance_name]

"localhost" 또는 "."을 사용하여 로컬 호스트를 나타낼 수 없습니다.

아니요(관리 도구의 replay 옵션에 -s target server 매개 변수를 사용하여 서버 이름이 이미 지정된 경우)

시퀀스 모드

<SequencingMode>

이벤트 예약에 사용되는 모드를 지정합니다.

synchronization | stress

아니요. 기본적으로 값은 stress입니다.

스트레스 규모 세분성

<StressScaleGranularity>

스트레스 모드에서 SPID(Service Profile Identifier)에 대한 모든 연결의 배율을 함께 조정(SPID)해야 하는지 개별적으로 조정(연결)해야 하는지를 지정합니다.

SPID | 연결

예. 기본적으로 값은 SPID입니다.

연결 시간 조절

<ConnectTimeScale>

스트레스 모드에서 연결 시간을 조절하는 데 사용됩니다.

1에서 100 사이의 정수입니다.

아니요. 기본적으로 값은 100입니다.

대기 시간 조절

<ThinkTimeScale>

스트레스 모드에서 대기 시간을 조절하는 데 사용됩니다.

0에서 100 사이의 정수입니다.

아니요. 기본적으로 값은 100입니다.

연결 풀링 사용

<UseConnectionPooling>

각 Distributed Replay 클라이언트에서 연결 풀링을 사용할지 여부를 지정합니다.

예 | 아니요

예. 기본적으로 값은 Yes입니다.

상태 모니터 간격

<HealthmonInterval>

상태 모니터 실행 빈도(초)를 나타냅니다.

이 값은 동기화 모드에서만 사용됩니다.

1보다 크거나 같은 정수입니다.

(비활성화하려면 -1로 설정)

아니요. 기본적으로 값은 60입니다.

쿼리 제한 시간

<QueryTimeout>

쿼리 제한 시간 값(초)을 지정합니다. 이 값은 첫 번째 행이 반환될 때까지만 효력이 있습니다.

1보다 크거나 같은 정수입니다.

(비활성화하려면 -1로 설정)

아니요. 기본적으로 값은 3600입니다.

클라이언트당 스레드 수

<ThreadsPerClient>

각 재생 클라이언트에 사용할 재생 스레드 수를 지정합니다.

1에서 512 사이의 정수입니다.

아니요. 지정하지 않으면 Distributed Replay가 값 255를 사용합니다.

<OutputOptions> 요소

재생 구성 파일의 <OutputOptions> 요소에 지정되는 설정은 다음과 같습니다.

설정

XML 요소

설명

허용되는 값

필수 사항

행 개수 기록

<RecordRowCount>

각 결과 집합에 대해 행 개수를 기록할지 여부를 나타냅니다.

Yes | No

아니요. 기본적으로 값은 Yes입니다.

결과 집합 기록

<RecordResultSet>

모든 결과 집합의 내용을 기록할지 여부를 나타냅니다.

Yes | No

아니요. 기본적으로 값은 No입니다.

기본 재생 구성 파일:

<?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>

참고 항목

참조

관리 도구 명령줄 옵션(Distributed Replay Utility)

개념

SQL Server Distributed Replay

관련 자료

SQL Server Distributed Replay 포럼

Distributed Replay를 사용하여 SQL Server 테스트 로드 – 2단계

Distributed Replay를 사용하여 SQL Server 테스트 로드 - 1단계