X DevAPI User Guide
Connection attributes are key-value pairs that application programs can pass to the server during connection time to be stored in the PERFORMANCE_SCHEMA tables session_account_connect_attrs and session_connect_attrs. There are two different kinds of connection attributes:
Client-defined attributes are reserved key-value mappings implicitly encoded by a client. The set of client-defined attributes differ from client to client—see the X DevAPI references of you client for details. The client-defined attributes are sent to the server by default.
User-defined attributes are key-value mappings provided by the user or application.
        X DevAPI supports MySQL connection attributes through the
        connection parameter connection-attributes
        (xdevapi.connection-attributes for
        Connector/J), set through the getSession()
        and getClient() methods. Here are the
        different ways to use the parameter:
      
These settings for the parameter are equivalent to the default behavior (that is, sending client-defined attributes) when the parameter is not used:
                connection-attributes
              
                connection-attributes= 
              
                connection-attributes=true
              
                connection-attributes=[]
              
            connection-attributes=false prevents any
            connection attributes to be sent, including the
            client-defined ones.
          
            connection-attributes=[key1=value1,key2=value2,
            ...] sends user-defined connection attributes as
            key-value pairs alongside the client-defined connection
            attributes. When a value is missing from a key-value pair, a
            null value is set for the attribute
          
The following is a generic example of a connection string that configures the connection attributes:
mysqlx://user:password@localhost:33060?connection-attributes=[key1=value1,key2=value2,key3=]