Improved version of STRACE and HTTPREPLAY

New version of STRACE and HTTPREPLAY have been posted on Microsoft's download center :

In addition to a couple of fixes, the following features have been added to HTTPREPLAY :

  • Fiddler (https://www.fiddlertool.com/fiddler/) traces can be replayed
  • both HTTP requests and responses are extracted from a STRACE log (/XTRACT switch)
  • the SENDFILE utility provided can be used to replay a request (like, for example, a large POST request)
  • new flag (/D:port /H:host ) can be used to route unresolvable requests to a specific host/post

When used with latest version of STRACE, HTTPREPLAY can also detect transport related issue (ex : TCP RESET upon send/receive). Such issues will be highlighted in the HTTPREPLAY report :

 Socket errors :

14:08:22:790 - recv() failed / socket = 0x00000058 / WSAGetLastError = 0x00002746 (An existing connection was forcibly closed by the remote host. ) strace.log (line 25111)
14:08:35:446 - recv() failed / socket = 0x000001a0 / WSAGetLastError = 0x00002746 (An existing connection was forcibly closed by the remote host. ) strace.log (line 26606)
14:08:49:775 - recv() failed / socket = 0x00000018 / WSAGetLastError = 0x00002746 (An existing connection was forcibly closed by the remote host. ) strace.log (line 30266)
14:08:49:775 - recv() failed / socket = 0x00000578 / WSAGetLastError = 0x00002746 (An existing connection was forcibly closed by the remote host. ) strace.log (line 30269)
14:10:13:354 - send() failed / socket = 0x00000020 / WSAGetLastError = 0x00002746 (An existing connection was forcibly closed by the remote host. ) strace.log (line 38757)

Statistics :


Request(s) 14
Unique request(s) 9

FAILED request(s) 5
Socket error(s) 5

POST 2
GET 12

HTTP 200 7
HTTP 301 2

Connection(s) 7
Maximum simultaneous connection(s) 2
Byte(s) sent 60019
Byte(s) received 21092
Average response time (ms) 867
Max response time (ms) 3047 (ID 11)