playing with restler logs

.py
appliance
fuzz
import json
import rlr
from pathlib import Path
ebc = list()
for f in Path('~/tmp/rlr-errbucket-files').expanduser().glob('*.json'):
    with open(f) as fo:
            ebc.extend(rlr.eb_collection(json.load(fo)))
def errbkt_stats(errorbuckets_json_data, w=3):
    """Looking into errorBuckets.json data."""
    #
    def _uq(z):
        """Count unique elements."""
        zz = list(map(str, z))
        zc = len(zz)
        uc = len(set(zz))
        if uc == 1:
            return '.' # A mark for "equal through all"
        elif uc == zc:
            return '#' # A mark for "all the values are different"
        else:
            return uc
    #
    print(' '*(56+2*w), ('|'+' '*(w-1))*0, f"{'method':{3+w*(4-0)}}", ('|'+' '*(w-1))*0, 'code'            , sep='')
    print(' '*(56+2*w), ('|'+' '*(w-1))*1, f"{'path'  :{3+w*(4-1)}}", ('|'+' '*(w-1))*1, 'codeDescription' , sep='')
    print(' '*(56+2*w), ('|'+' '*(w-1))*2, f"{'query' :{3+w*(4-2)}}", ('|'+' '*(w-1))*2, 'content'         , sep='')
    print(' '*(56+2*w), ('|'+' '*(w-1))*3, f"{'body'  :{3+w*(4-3)}}", ('|'+' '*(w-1))*3, 'isFailure'       , sep='')
    print(' '*(56+2*w), ('|'+' '*(w-1))*4, f"{''      :{3+w*(4-4)}}", ('|'+' '*(w-1))*4, 'isBug'           , sep='')
    print(' '*(56+2*w), ('|'+' '*(w-1))*4, f"{''      :{3+w*(4-4)}}", ('|'+' '*(w-1))*5, ''                , sep='')
    for c, bb in errorbuckets_json_data.items():
        print('---- rlr-code', c, 'with', len(bb), 'bucket(s)')
        for b, rrz in bb.items():
            if len(rrz) < 2:
                continue
            print(f'  bkt  {b}', f'{len(rrz):>{w}} sample(s)',
                '  {:>'f'{w}''}{:>'f'{w}''}{:>'f'{w}''}{:>'f'{w}''}'.format(
                    _uq(rr['request']['RequestData']['method'] for rr in rrz),
                    _uq(rr['request']['RequestData']['path'] for rr in rrz),
                    _uq(rr['request']['RequestData']['query'] for rr in rrz),
                    _uq(rr['request']['RequestData']['body'] for rr in rrz),
                ),
                '  {:>'f'{w}''}{:>'f'{w}''}{:>'f'{w}''}{:>'f'{w}''}{:>'f'{w}''}'.format(
                    _uq(rr['response']['ResponseData']['code'] for rr in rrz),
                    _uq(rr['response']['ResponseData']['codeDescription'] for rr in rrz),
                    _uq(rr['response']['ResponseData']['content'] for rr in rrz),
                    _uq(rr['response']['ResponseData']['isFailure'] for rr in rrz),
                    _uq(rr['response']['ResponseData']['isBug'] for rr in rrz),
                ),
            )

restler (<9.1.0?) during scan

import json

with open('FuzzLean/ResponseBuckets/errorBuckets.json') as fo:
    jo = json.load(fo)

errbkt_stats(jo)
                                                              method         code
                                                              |  path        |  codeDescription
                                                              |  |  query    |  |  content
                                                              |  |  |  body  |  |  |  isFailure
                                                              |  |  |  |     |  |  |  |  isBug
                                                              |  |  |  |     |  |  |  |  |  
---- rlr-code 400 with 23 bucket(s)
  bkt  12d703e3-71f7-4869-a677-225388de0fa5   4 sample(s)     .  .  .  2     .  .  2  .  .
  bkt  1b7b4fb6-6171-48d6-8c79-34e32599066a   4 sample(s)     .  2  .  .     .  .  2  .  .
  bkt  22faaa2d-1126-4345-b848-b173aaf65371   4 sample(s)     .  2  .  .     .  .  2  .  .
  bkt  289d1ead-98c6-427c-9ba0-ca59b645c3fe   4 sample(s)     .  .  .  2     .  .  2  .  .
  bkt  2deb3bea-b99f-4f4b-a72f-4cacfdd1e008   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  54c6a92d-ea65-492b-85fe-2463e666d698   5 sample(s)     .  .  .  #     .  .  #  .  .
  bkt  559165c2-9443-4c35-b5a6-0df6c5b415d6   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  65548c1e-210b-43f9-a67b-ab556bc46baf   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  78ee26bf-3d4d-4834-bf85-d0872d060345  10 sample(s)     .  .  .  #     .  .  4  .  .
  bkt  8faf781d-d521-4634-b22b-fb7db76f476b  10 sample(s)     .  .  .  #     .  .  .  .  .
  bkt  904f311d-f4a4-4e60-979f-bb01769dc582  10 sample(s)     .  2  .  #     .  .  9  .  .
  bkt  955a5232-632c-4f32-b009-b3b432fa4abb  10 sample(s)     .  .  .  #     .  .  5  .  .
  bkt  af91c93c-51f1-48b4-9121-b9bfd2d9ff0a   4 sample(s)     .  2  .  .     .  .  2  .  .
  bkt  b21850c5-52a8-4b9e-b3a7-4de8b6771c17   5 sample(s)     .  .  .  #     .  .  #  .  .
  bkt  b4f5edb2-8dd6-4332-966e-a427f97ada91   6 sample(s)     .  .  .  #     .  .  #  .  .
  bkt  b7e5c070-0780-43d8-b41e-4ebb608ab12b   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  dff1a5ec-3b5c-4dad-8740-3bff6a4c9ef1   4 sample(s)     .  .  .  2     .  .  2  .  .
  bkt  e6d30352-4b25-4c54-ad66-6dc5deb8b2ff   4 sample(s)     .  2  .  .     .  .  2  .  .
  bkt  e79e569e-d495-443f-a5e8-9c0573a8647e   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  f6d89172-3fbd-4b4b-aa67-82168b938b49   2 sample(s)     .  .  .  .     .  .  .  .  .
---- rlr-code 422 with 1 bucket(s)
  bkt  381fc09b-39e8-401b-95af-3aa0087324a4   2 sample(s)     .  .  .  .     .  .  .  .  .
---- rlr-code 500 with 59 bucket(s)
  bkt  389dccda-ab41-4de3-b15b-454ae8a25d75  10 sample(s)     .  .  .  #     .  .  .  .  .
  bkt  60f3e232-bcfc-4f27-9c1f-b00c7573c472   4 sample(s)     .  .  .  2     .  .  .  .  .
  bkt  6b70d752-656e-4a25-af1c-947201d63b37  10 sample(s)     .  .  .  8     .  .  7  .  .

analyzer v9.1.0

import json

with open('FuzzLean/ResponseBuckets-reanalyzed/errorBuckets.json') as fo:
    jo = json.load(fo)

errbkt_stats(jo)
                                                              method         code
                                                              |  path        |  codeDescription
                                                              |  |  query    |  |  content
                                                              |  |  |  body  |  |  |  isFailure
                                                              |  |  |  |     |  |  |  |  isBug
                                                              |  |  |  |     |  |  |  |  |  
---- rlr-code 400 with 23 bucket(s)
  bkt  0504e3e8-b8b6-41a9-b9b4-79b345ba13dc   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  0fae6823-4bda-4483-aa0c-8b60f03faa0e  24 sample(s)     .  .  .  #     .  .  5  .  .
  bkt  1341cedf-9fb0-499d-bbb4-b2a00722b83f   4 sample(s)     .  2  .  .     .  .  2  .  .
  bkt  19a8e0b9-422a-4c2a-987a-012f243eaf57  10 sample(s)     .  2  .  #     .  .  9  .  .
  bkt  249d85f4-4bb7-4671-bcb8-70feeebe09d4   4 sample(s)     .  2  .  .     .  .  2  .  .
  bkt  28852097-3d21-48f3-8201-0d5b19496c86   6 sample(s)     .  .  .  #     .  .  #  .  .
  bkt  3d12b625-9650-4301-9ff4-36138b41986a  81 sample(s)     .  .  . 75     .  .  4  .  .
  bkt  42add072-e0f6-4196-be42-2997143df536   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  44e51b94-4ed4-458c-a8ea-583615dcf6e3   4 sample(s)     .  .  .  2     .  .  2  .  .
  bkt  4ac322b8-025c-4185-817b-c1ffc8baca2b   5 sample(s)     .  .  .  #     .  .  #  .  .
  bkt  50222a70-02f1-4498-9cf8-f59353d27629   4 sample(s)     .  2  .  .     .  .  2  .  .
  bkt  756b9756-2e00-4b2a-b1f6-eeb3025acc62   4 sample(s)     .  .  .  2     .  .  2  .  .
  bkt  77ba596c-3d53-4c02-8a3b-dd3110b99f0a   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  9e332225-71e2-454c-b5e6-c324a055bab1   4 sample(s)     .  2  .  .     .  .  2  .  .
  bkt  a8aeb430-6fa6-4a76-8fee-1350e526f76e   5 sample(s)     .  .  .  #     .  .  #  .  .
  bkt  bd4de22f-8f4c-49c0-86da-cecab16eb3dd   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  db8cb0ba-020f-4ec0-91a0-59319216c2f0  50 sample(s)     .  2  .  #     .  .  5  .  .
  bkt  e6884646-914f-4d62-a7bc-3c2634e3e634   4 sample(s)     .  .  .  2     .  .  2  .  .
  bkt  ecf06e04-de4f-450e-ae28-4770a6365933   2 sample(s)     .  .  .  .     .  .  .  .  .
  bkt  ff149c33-3871-4b42-af86-28982785a8e4   2 sample(s)     .  .  .  .     .  .  .  .  .
---- rlr-code 422 with 1 bucket(s)
  bkt  ab7c2416-536a-4e26-b485-425f01e2ef9d   2 sample(s)     .  .  .  .     .  .  .  .  .
---- rlr-code 500 with 59 bucket(s)
  bkt  7acdaff6-92fb-4b09-b592-710023d85b38   4 sample(s)     .  .  .  2     .  .  .  .  .
  bkt  81c0ecf4-a59c-4b5d-af9a-198ff364fd97  23 sample(s)     .  .  .  9     .  .  7  .  .
  bkt  b2fd9ebe-fc61-4325-8ca5-3ab9675fc5fd  89 sample(s)     .  .  . 72     .  .  .  .  .