def METHOD_NAME(pid: int, include_rings: bool=False) -> Dict[str,Any]:
    """
    Function to read in and parse all ProcLog files associated with a given 
    process ID.  The contents of these files are returned as a collection of
    dictionaries ordered by:
      block name
        ProcLog name
           entry name
    """
    # Make sure we have a directory to load from
    baseDir = os.path.join(PROCLOG_DIR, str(pid))
    if not os.path.isdir(baseDir):
        raise RuntimeError(f"Cannot find log directory associated with PID {pid}")
    # Load
    contents = {}
    for parent,subnames,filenames in os.walk(baseDir):
        for filename in filenames:
            filename = os.path.join(parent, filename)
            ## Extract the block and logfile names
            logName = os.path.basename(filename)
            blockName = os.path.basename( os.path.dirname(filename) )
            if blockName == 'rings' and not include_rings:
                continue
            ## Load the file's contents
            try:
                subContents = load_by_filename(filename)
            except IOError:
                continue
            ## Save
            try:
                contents[blockName][logName] = subContents
            except KeyError:
                contents[blockName] = {logName:subContents}
    # Done
    return contents