dirac-dms-protocol-matrix

Generate a matrix of protocols used between SEs for FTS transfers. The output is a CSV file containing a matrix source/destination. The value of each cell is of the form “proto1/proto2 ([protoA,protoB,…])” proto1/proto2 are the protocols that would really be given to FTS for source and dest urls protoA,protoB,etc are the sorted list of protocols that would be attempted for thrid party copy by DIRAC

By default, all the SEs are taken into account, but the matrix is factorized by using baseSEs.

Suppose you have the following in your CS::

StorageElementBases{
  IN2P3-Disk
}
StorageElements{
  IN2P3-DST{
    BaseSE = IN2P3-Disk
  }
  IN2P3-User{
    BaseSE = IN2P3-Disk
  }
  AnotherDisk{
  }
}

You can have the following combinations::

DIRAC-PROD>dirac-dms-protocol-matrix
Using sources: IN2P3-Disk, AnotherDisk
Using target: IN2P3-Disk, AnotherDisk

DIRAC-PROD>dirac-dms-protocol-matrix --FromSE=IN2P3-User
Using sources: IN2P3-User
Using target: IN2P3-Disk, AnotherDisk

DIRAC-PROD>dirac-dms-protocol-matrix --FromSE=IN2P3-User --Bidirection
Using sources: IN2P3-User
Using target: IN2P3-User

Usage:

dirac_dms_protocol_matrix.py [options] ...

Options:

--FromSE=                : SE1[,SE2,...]
--TargetSE=              : SE1[,SE2,...]
--OutputFile=            : CSV output file (default /tmp/protocol-matrix.csv)
--Bidirection            : If FromSE or TargetSE are specified, make a square matrix
--FTSOnly                : Only display the protocols sent to FTS
--ExcludeSE=             : SEs to not take into account for the matrix