Using Fiddler to capture Find requests

  • Updated

In some cases you may need to see what a site is sending out for Find requests. This is useful for identifying areas in need of caching or reducing the number of queries.

  1. In order for Fiddler to catch requests from Find, it needs to be a proxy or the man in the middle of the requests. Add the proxy within <system.net> tags within the <configuration> section. Note that after this change the site will give a search error until Fiddler is run. 

    <system.net>
    <defaultProxy enabled = "true" useDefaultCredentials = "true">
    <proxy autoDetect="false" bypassonlocal="false" proxyaddress="http://127.0.0.1:8888" usesystemdefault="false" />
    </defaultProxy>
    <settings>
    <servicePointManager checkCertificateName="false" checkCertificateRevocationList="false" />
    </settings>
    </system.net>
  2. After making the change, install and run Fiddler.
  3. Ensure that decrypt https is turned on in Fiddler (Tools > Options > HTTPS).
  4. Begin capturing(F12) if it is not already on.
  5. Turn off filters if you cannot find search traffic. 
    2020-05-15_14_05_18-Progress_Telerik_Fiddler_Web_Debugger.png
  6. Attempt a search on the site. You should see Find requests going to the service URL(located in the web.config). The following shows the _search requests and you also see that filters are off.

    2018-11-28_12_02_23-Progress_Telerik_Fiddler_Web_Debugger.png
    Note: If you do not see requests to the find endpoint, see step 3 and clear application cache via a restart or other method(caching can prevent new requests). In the above screenshot you can see requests to the host es-eu-dev-api01.episerver.net. Check the serviceURL value in the web.config to identify the find endpoint.

  7. If it is clear that search results are coming in you can filter by Host to reduce noise in the trace (see Hosts section in above screenshot). In this example we would set the host to es-eu-dev-api01.episerver.net.
  8. Once done, turn off capturing in the file menu or F12. Then save the trace(File > Save > All Sessions) and send it to support if requested. Don't forget to comment out or remove the proxy once finished. 

Additional Notes

  • If you need to specifically capture bulk requests, filter on @fields.action.keyword  or @fields.action = bulk. Make sure the URL is not restricted on the site's hostname or you will miss Find traffic.
  • If you are verifying that Find caching works, make sure that identical searches(e.g. searching for example twice or more) only outputs one request to the Find service URL. You can also use Fiddler to verify how long requests are being cached.