Unplanned
Last Updated: 18 Nov 2020 15:26 by Eric
Ronen
Created on: 16 Jul 2020 11:41
Type: Bug Report
0
When saving a SAZ file, the original index numbers (#) are lost

When loading the SAZ file, the requests are ordered incrementally based on the order they were saved in.

For example, a Fiddler session was sorted by URL and then saved to SAZ. When the file is loaded, the requests are still sorted by URL but the original index numbers are lost and the requests are numbered incrementally as per this sort. This means that it is not possible to sort the session back to the original linear order by clicking on the index column (#) as it was possible to do before the save/load.

I've seen that the original index is saved in the Comments column. This is only a partial solution because:

1. When sorting by this column, a lexical sort is performed meaning the sessions would be numbered: 1,10,100,101,11,12..19,2,20,21 etc...
2. If the request had a comment associated with it, this overrides this feature and the original index number is lost.

Also, I know it's possible to sort by ClientDoneRequest as a good approximation but it obviously doesn't recreate the original order.

It would be beneficial to keep the original index numbers (even including the gaps between them) as there is information there that shouldn't be lost when saving.

 

As always thank you for your work on this wonderful product.

Cheers,

  Ronen

 

 

 

 

4 comments
Eric
Posted on: 18 Nov 2020 15:26

Yes, columns use text sorting rules by default but you can change that by binding the column using FiddlerScript.

Click Rules, Customize Rules.

Just inside the existing code block class Handlers { add the following code:


public BindUIColumn("OrigID", 50 /*width*/, 1 /*order*/, true/*sortNumerically*/)
static function ShowOriginalID(oS: Session): String {
return oS["x-OriginalSessionID"];
}

Ronen
Posted on: 18 Nov 2020 12:32

Thanks for your feedback, Eric.

It makes sense to not restore the sessionIds (to not create mixups) but rather keep then as a separate field (such as x-OriginalSessionID) .

The issue is that here too, it isn't currently possible to sort by this field properly: The sorting is by string comparison and not by numerical value. (see attached screen shot).

Perhaps the fix should be just to sort this field (and perhaps other numerical ones) properly.

 

Attached Files:
Eric
Posted on: 21 Jul 2020 15:31

The problem here is that reloading the original Session ids works poorly if there's any other traffic either being captured or in the Web Sessions list. Having duplicate or out-of-order Session IDs is problematic.

For Fiddler *Viewer* instances, where there is no captured traffic (in theory), it might be reasonable to try to restore the original Session IDs for a loading capture IIF there are no other sessions in the Web Sessions list. But as soon as you try to load two captures, everything falls apart.

As you noted, the original Session ID is typically shown in the Comments column. Beyond that, you can type the following in the QuickExec box under the Web Sessions list:

   prefs set fiddler.saz.ReloadIDAsFlag true

and hit Enter.

After you do that, each time you load a SAZ file, the original Session ID is stored in a new flag on the Session, named x-OriginalSessionID. You can add a new column to Fiddler's Web Sessions list to show that column (just right-click the column headers).

 

ADMIN
Nick Iliev
Posted on: 20 Jul 2020 12:12

Hi Ronen,

 

Thanks for using Fiddler and for your valued feedback! This is indeed a legit bug, so I am logging this one as an enhancement request to be planned for the next release.

 

Regards,
Nick Iliev
Progress Telerik