Database Experimentation Assistant – Replay Trace


Replay trace allows you to replay a trace file (.trc) on another environment. For example, if a production workload is currently run out of SQL Server 2008 R2, the trace file for this workload would need to be replayed twice. Once on an environment with the same SQL Server as production, and secondly on an environment with the upgrade target SQL Server version (SQL Server 2016).

Note: This action needs to be performed twice. Once for A’ (SQL Server 2008) and once for B (Target upgrade server).

Note: To perform this action virtual machines or machines must be manually set up to run distributed replay (D-Replay) traces on. Read the blog on how to set up distributed replay controller and clients.

STEP ONE: OPEN REPLAY TRACES
Open the tool and click the hamburger icon on the left side of screen. This will open the left side bar menu. Next, click “Replay Traces” next to the play icon.

Replay1

STEP TWO: ENTER INPUTS

Note: Dreplay controller machine needs to have permissions to the user account you will be using to remote to execute the “Dcomcnfg setup” below.
Dcomcnfg setup:

    • Open command prompt, type dcomcnfg. This will open the Component Services interface.
    • Expand folders on navigation pane on the left
      • Component Services -> Computers -> My Computer -> DCOM Config -> DReplayController
      • Right click on properties of DReplayController
      • Security tab: click on the 3 Edit buttons to add the user account.

Verify Setup:

  • SQL server install path – Provide the path to where SQL server is installed. Example: C:\Program Files (x86)\Microsoft SQL Server\120
  • Controller machine name – Provide the name of the machine which has been set up as the controller. This is the machine running the Windows service named SQL Server Distributed Replay controller. The Distributed Replay controller orchestrates the actions of the distributed replay clients. There can only be one controller instance in each Distributed Replay environment.
  • Client machine names – Provide the name for each client machine. Comma separated machine names i.e. client1, client2.  You can have up to 5 client controllers.  Client(s) are one or more machines (physical or virtual) running the Windows service named SQL Server Distributed Replay client. The Distributed Replay clients work together to simulate workloads against an instance of SQL Server. There can be one or more clients in each Distributed Replay environment.
  • Click Next button.

Select Trace:

  • Path to trace file – Provide the path to the input trace (.trc) file.
  • Path to store replay preprocess output
    - If you do not already have the IRF file, provide path to the location which you want to store the IRF file and other pre-process outputs.
    - If you already have the IRF file, provide its path.
  • Click Next button.

Replay Trace:

  • Trace file nameProvide a trace file name
  • Max file size (MB) – Provide the trace file roll over size value. Default is 200MB. The dropdown is also editable to take custom values.
  • Path to store replay trace output – Provide the path for the output trace (.trc) file.
  • SQL Server instance name – Provide the name of the server you wish to replay traces on.
  • Click Start button.

If the inputs are valid, Distributed Replay process will start . Otherwise the fields which are invalid inputs will be highlighted with red, please make sure entered values are accurate and again click “Start”.

What's Next?
You will need to wait until the replay has finished running and see the location you specified. You can monitor the progress of the replay by clicking on the bell icon at the bottom left of the navigation pane.

ReplayProgress

Comments (14)

  1. BlobEater says:

    Hi I am getting Cannot find DReplay.exe via the tool “Please check if DReplay is installed on the machine”

    It is definitely installed as the Dreplay Logs show: Register client successfully and [Client Service] Registered with controller. Any ideas?

    1. Harini Gupta says:

      Hello, thanks for your comment. Can you double check to make sure you entered the correct SQL Server install path location and try kicking on Dreplay again? Example path should be: C:\ProgramFiles\MicrosoftSQLServer\120.

    2. Vitor says:

      I also facing the same error and already provided the correct path (even tried other combinations as exactly providing the path to where the dreplay.exe is or even the sqlservr.exe path).
      Nothing worked yet.

      1. Vitor says:

        No way!!!
        You need to provide the last backslah!!! :O
        C:\Program Files (x86)\Microsoft SQL Server\120\

      2. DinekK says:

        Vitor – I believe we are working offline with you. Just as an FYI, we are working on simplifying the UI for replay in upcoming release. User’s wont need to specify the path anymore.

  2. Trev says:

    Hi, I’m trying to use DEA to test SQL 2008 R2 traces against SQL 2014. I don’t understand how to set up the distributed replay services. Is there a good step-by-step doc? Also, can the DReplay Controller machine also be a DReplay Client? I’d like to be able to set this up in the simplest possible way so I can see if DEA is going to be as helpful as the Upgrade Advisor. If it’s too complicated, I’ll have to continue using the old way. Thanks!

    1. Harini Gupta says:

      Hi Trev, Thanks for the comment. Check out the blog https://blogs.msdn.microsoft.com/datamigration/distributed-replay-controller-and-client-setup/ on step by step guide to setup Dreplay controller and client. Please let us know if you have any further questions on this.

  3. Nirmal Shah says:

    This tool seems to be very good. I captured the trace, and when I try to replay I am getting following error message. This is after I setup dReplay.exe as described on “Distributed Replay controller and client setup”.

    Error message;
    Invalid DReplay setup. Please make sure the controller and the client machines are setup correctly and try again.

    Thank you,
    Nirmal Shah

    1. DinekK says:

      Nirmal, thanks for reaching out. Sorry to hear you are having trouble with replay. I would recommend using the command line option for replay if UI is giving you trouble. Feel free to reach out to us at deafeedback@microsoft.com.

      Regards,
      Dinek

  4. jrod881 says:

    Similar to Nirmal issue I’m getting an error when attempting a new replay in the GUI.

    “Invalid DReplay setup. Pleae make sure the controller and the client machines are setup correctly and try again.”

    I’ve tried the CMD line too with a different error.

    “Error DReplay Unexpected error occurred!” There’s usually a corresponding critical error in the controller log reading: error code: 0xC8504000

    I have the controller installed on one server, the client on another. The client log indicates a successful connection to the controller. I’ve adjusted both logs to INFORMATION and haven’t found anything of value. I’ve been through the DCOM settings on both servers.

    I’m at a loss….

    1. Rohit Joy says:

      Hi jrod881, thanks for posting the question and sorry to see that you’re facing issues setting DReplay. We have released DEA 2.0 a few days ago. Do you mind trying the new version? We have fixed a lot of bugs since 1.0. Documentation is here https://blogs.msdn.microsoft.com/datamigration/2017/03/24/dea-2-0-release-overview-database-experimentation-assistant/

  5. I sent an email to the feedback address – I am getting an error with DEA 2.0 – http://smooth1.co.uk/installs/dbinstalls.html#3.1.22

    1. DinekK says:

      Hi David – sorry to hear that you are having trouble with DEA. Could you please send me logs at %temp%\dea to dinek@microsoft.com. Will ensure right folks look into this.

Skip to main content