WebSocket Client

支持的管道类型:

  •  Data Collector

  •  Data Collector Edge

WebSocket Client目标端将数据写入WebSocket端点。使用目标端将数据发送到WebSocket资源URL。

WebSocket Client目标端为其写入的每批数据打开到WebSocket端点的连接。目标端将每个记录发送到WebSocket资源URL。批量写入完毕后,目标端将关闭连接,然后为下一批数据打开另一个连接。

在配置WebSocket Client目标端时,您将定义用于请求的资源URL和标头。您还可以配置SSL/TLS属性,包括默认的传输协议和密码套件。

数据格式

WebSocket Client目标端根据您选择的数据格式将数据写入WebSocket端点。

WebSocket Client目标端处理数据格式如下:

Binary
该阶段将二进制数据写入记录中的单个字段。
JSON
目标端将记录写为JSON数据。您可以使用以下格式之一:

  • Array-每个文件都包含一个数组。在数组中,每个元素都是每个记录的JSON表示形式。
  • Multiple objects-每个文件都包含多个JSON对象。每个对象都是一条记录的JSON表示形式。
SDC Record
目标端以SDC记录数据格式写入记录。
Text
目标端将数据从单个文本字段写入目标系统。配置阶段时,请选择要使用的字段。
您可以配置字符以用作记录分隔符。默认情况下,目标使用UNIX样式的行尾(\n)分隔记录。
当记录不包含选定的文本字段时,目标端可以将缺少的字段报告为错误或忽略该丢失的字段。默认情况下,目标端报告错误。
当配置为忽略缺少的文本字段时,目标端可以丢弃该记录或写入记录分隔符以为该记录创建一个空行。默认情况下,目标端丢弃记录。

配置WebSocket Client目标端

配置WebSocket Client目标端以将数据写入WebSocket端点。

  1. 在“Properties”面板的“General选项卡上,配置以下属性:
    一般属性 描述
    Name 阶段名。
    Description 可选说明。
    Required Fields 必须包含用于将记录传递到阶段的记录的数据的字段。

    提示:您可能包括阶段使用的字段。

    根据为管道配置的错误处理,处理不包括所有必填字段的记录。

    Preconditions 必须评估为TRUE的条件才能使记录进入处理阶段。单击 添加以创建其他前提条件。

    根据为该阶段配置的错误处理,处理不满足所有前提条件的记录。

    On Record Error 该阶段的错误记录处理:

    • Discard-放弃记录。
    • To Error-将记录发送到管道以进行错误处理。
    • Stop Pipeline-停止管道。对集群管道无效。
  2. 在“WebSocket”选项卡上,配置以下属性:
    WebSocket属性 描述
    Resource URL WebSocket资源URL。输入以下格式:

    <ws | wss>://<hostname>:<listening_port>

    使用wss通过HTTPS进行安全的WebSocket连接。

    例如:

    ws://localhost:8080
    Headers 要包含在请求中的头。使用简单或批量编辑模式,单击添加图标以添加其他头。
    Maximum Request Time 等待请求完成的最大秒数。
  3. 要使用SSL/TLS,请在“TLS”选项卡上配置以下属性:

    在Data Collector Edge管道中,仅“Use TLS和“Truststore File属性有效。启用TLS后,为使用PEM格式的信任库文件输入绝对路径。在Data Collector Edge管道中,WebSocket Client始终使用默认协议和密码套件。它忽略所有其他TLS属性。

    TLS属性 描述
    Use TLS 启用TLS的使用。
    Truststore File 信任库文件的路径。输入文件的绝对路径或相对于Data Collector资源目录$SDC_RESOURCES的路径。

    有关环境变量的更多信息,请参阅《Data Collector环境配置》。

    默认情况下,不使用任何信任库。

    在Data Collector Edge管道中,输入使用PEM格式的文​​件的绝对路径。

    Truststore Type 要使用的信任库的类型。使用以下类型之一:

    • Java Keystore File (JKS)
    • PKCS #12 (p12 file)

    默认值为Java Keystore File (JKS)。

    Truststore Password 信任库文件的密码。密码是可选的,但建议使用。

    提示:要保护敏感信息(例如密码),可以使用运行时资源或凭据存储。
    Truststore Trust Algorithm 用于管理信任库的算法。

    默认值为SunX509

    Use Default Protocols 确定要使用的传输层安全性(TLS)协议。默认协议是TLSv1.2。要使用其他协议,请清除此选项。
    Transport Protocols 要使用的TLS协议。要使用默认TLSv1.2以外的协议,请单击“添加”图标并输入协议名称。您可以使用简单或批量编辑模式来添加协议。

    注意:较旧的协议不如TLSv1.2安全。
    Use Default Cipher Suites 对SSL/TLS握手使用默认的密码套件。要使用其他密码套件,请清除此选项。
    Cipher Suites 要使用的密码套件。要使用不属于默认密码集的密码套件,请单击“添加”图标并输入密码套件的名称。您可以使用简单或批量编辑模式来添加密码套件。

    输入要使用的其他密码套件的Java Secure Socket Extension (JSSE)名称。

  4. 在“Data Format选项卡上,配置以下属性:
    数据格式属性 描述
    Data Format 消息的数据格式。使用以下属性之一:

    • Binary
    • JSON
    • SDC Record
    • Text
  5. 对于二进制数据,在“Data Format选项卡上,配置以下属性:
    二进制性质 描述
    Binary Field Path 包含二进制数据的字段。
  6. 对于JSON数据,在数据格式选项卡上,配置以下属性:
    JSON属性 描述
    JSON Content 写入JSON数据的方法:

    • JSON Array of Objects-每个文件都包含一个数组。在数组中,每个元素都是每个记录的JSON表示形式。
    • Multiple JSON Objects-每个文件包含多个JSON对象。每个对象都是记录的JSON表示形式。
    Charset 写入数据时使用的字符集。
  7. 对于文本数据,在“Data Format选项卡上,配置以下属性:
    文本属性 描述
    Text Field Path 包含要写入的文本数据的字段。所有数据必须合并到指定字段中。
    Record Separator 用于分隔记录的字符。使用任何有效的Java字符串文字。例如,当写入Windows时,您可能会\r\n用来分隔记录。

    默认情况下,目标使用 \n

    On Missing Field 当记录不包含文本字段时,确定目标是将丢失的字段报告为错误还是忽略该丢失的字段。
    Insert Record Separator if No Text 当配置为忽略缺少的文本字段时,插入配置的记录分隔符字符串以创建一个空行。

    如果未选择,则丢弃没有文本字段的记录。

    Charset 写入数据时使用的字符集。