presto-spi/src/main/java/io/prestosql/spi/eventlistener/QueryFailureInfo.java/QueryFailureInfo/QueryFailureInfo
class QueryFailureInfo:    public QueryFailureInfo(
            ErrorCode errorCode,
            Optional<String> failureType,
            Optional<String> failureMessage,
            Optional<String> failureTask,
            Optional<String> failureHost,
            String failuresJson)
    {
        this.errorCode = requireNonNull(errorCode, "errorCode is null");
        this.failureType = requireNonNull(failureType, "failureType is null");
        this.failureMessage = requireNonNull(failureMessage, "failureMessage is null");
        this.failureTask = requireNonNull(failureTask, "failureTask is null");
        this.failureHost = requireNonNull(failureHost, "failureHost is null");
        this.failuresJson = requireNonNull(failuresJson, "failuresJson is null");
    }