SiteToSiteProvenanceReportingTask

文档中心 › 组件索引 › SiteToSiteProvenanceReportingTask

SiteToSiteProvenanceReportingTask Reporting Task

类型全限定名:cn.org.acal.lynxus.reporting.SiteToSiteProvenanceReportingTask

所属 Bundle:cn.org.acal.lynxus:lynxus-site-to-site-reporting-nar:2.11.8

描述

使用Site-to-Site协议发布来源事件。

标签

provenancelineagetrackingsitesite to site

属性

下表中,加粗的属性为必填项;其余为可选项。表格同时标注默认值、是否支持表达式语言,以及是否为敏感属性(值会被加密)。

名称默认值可选值描述
目标 URL目标 Lynxus 实例的 URL,如果是集群,则为 http(s)://host:port/lynxus 格式的逗号分隔地址列表。此目标 URL 仅用于发起站点到站点连接。此报告任务发送的数据将在目标的所有节点上进行负载均衡(如果是集群)。
支持表达式语言:是(仅使用环境/系统变量求值)
输入端口名称要将数据传送到的输入端口的名称。
支持表达式语言:是(仅使用环境/系统变量求值)
SSL 上下文服务控制器服务 API:
SSLContextProvider
cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8
与目标通信时使用的 SSL 上下文服务。如果未指定,通信将不安全。
实例 URLhttp://${hostname(true)}:8080/lynxus要在每个事件的内容 URI 中使用的此实例的 URL。
支持表达式语言:是(仅使用环境/系统变量求值)
压缩事件true
  • true
  • false
指示是否压缩正在发送的数据。
通信超时30 secs指定在确定发生错误并取消事务之前等待来自目标的响应的时间
批大小1000指定单个批次中最多发送多少条记录。
传输协议RAW
  • RAW
  • HTTP
指定用于站点到站点通信的传输协议。
Proxy Configuration Service控制器服务 API:
ProxyConfigurationService
cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8
指定代理配置 Controller Service 来代理网络请求。
记录写入器控制器服务 API:
RecordSetWriterFactory
cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8
指定用于写出记录的Controller Service。
包含空值false
  • true
  • false
指示记录中是否应包含空值。默认为 false
平台lynxus每个事件中用于平台字段的值。
支持表达式语言:是(仅使用环境/系统变量求值)
包含的事件类型用于过滤报告任务发送的溯源事件的逗号分隔事件类型列表。可用事件类型为 [CREATE, RECEIVE, FETCH, SEND, UPLOAD, REMOTE_INVOCATION, DOWNLOAD, DROP, EXPIRE, FORK, JOIN, CLONE, CONTENT_MODIFIED, ATTRIBUTES_MODIFIED, ROUTE, ADDINFO, REPLAY, UNKNOWN]。如果未设置过滤器,则发送所有事件。如果设置了多个过滤器,则过滤器是累积的。
支持表达式语言:是(仅使用环境/系统变量求值)
排除的事件类型用于排除报告任务发送的溯源事件的逗号分隔事件类型列表。可用事件类型为 [CREATE, RECEIVE, FETCH, SEND, UPLOAD, REMOTE_INVOCATION, DOWNLOAD, DROP, EXPIRE, FORK, JOIN, CLONE, CONTENT_MODIFIED, ATTRIBUTES_MODIFIED, ROUTE, ADDINFO, REPLAY, UNKNOWN]。如果未设置过滤器,则发送所有事件。如果设置了多个过滤器,则过滤器是累积的。如果事件类型同时包含在'包含的事件类型'和此处被排除,则排除优先,事件不会被发送。
支持表达式语言:是(仅使用环境/系统变量求值)
包含的组件类型基于组件类型过滤来源事件的正则表达式。仅发送匹配正则表达式的事件。如果未设置过滤器,则发送所有事件。如果设置了多个过滤器,则过滤器是累积的。
支持表达式语言:是(仅使用环境/系统变量求值)
排除的组件类型基于组件类型排除来源事件的正则表达式。匹配正则表达式的事件将不会被发送。如果未设置过滤器,则发送所有事件。如果设置了多个过滤器,则过滤器是累积的。
支持表达式语言:是(仅使用环境/系统变量求值)
包含的组件 ID将用于过滤报告任务发送的溯源事件的组件 UUID 的逗号分隔列表。如果未设置过滤器,则发送所有事件。如果设置了多个过滤器,则过滤器是累积的。
支持表达式语言:是(仅使用环境/系统变量求值)
排除的组件 ID将用于排除报告任务发送的溯源事件的组件 UUID 的逗号分隔列表。如果未设置过滤器,则发送所有事件。如果设置了多个过滤器,则过滤器是累积的。如果组件 UUID 包含在'包含的组件 ID'中但在此处被排除,则排除优先,事件不会被发送。
支持表达式语言:是(仅使用环境/系统变量求值)
包含的组件名称基于组件名称过滤来源事件的正则表达式。仅发送匹配正则表达式的事件。如果未设置过滤器,则发送所有事件。如果设置了多个过滤器,则过滤器是累积的。
支持表达式语言:是(仅使用环境/系统变量求值)
排除的组件名称基于组件名称排除来源事件的正则表达式。匹配正则表达式的事件将不会被发送。如果未设置过滤器,则发送所有事件。如果设置了多个过滤器,则过滤器是累积的。
支持表达式语言:是(仅使用环境/系统变量求值)
起始位置beginning-of-stream
  • 流起始 — 从溯源事件流的起始位置开始读取(最早的事件优先)
  • 流末尾 — 从溯源事件流的末尾开始读取,忽略旧事件
如果报告任务从未运行过,或者其状态已被用户重置,则指定报告任务应在溯源事件流中的何处启动

状态管理

作用域描述
LOCAL存储报告任务的最后一个事件 ID,以便任务重新启动时知道它停止的位置。

受限 (Restricted)

该组件不受限。

详细说明

SiteToSiteProvenanceReportingTask

Site-to-Site Provenance Reporting Task 允许用户把一个 Lynxus 实例的所有 Provenance 事件发布回同一实例或另一个 Lynxus 实例。这提供了很大的灵活性, 因为用户可以利用 Lynxus 中所有可用的 Processor 来处理或分发这些数据。 在可能的情况下,建议把 Provenance 数据发送到与运行该 Reporting Task 的实例不同的另一个 Lynxus 实例,因为当数据通过 Site-to-Site 被接收并处理时,其本身也会生成 Provenance 事件,从而形成一个循环。不过,数据是按批发送的(默认 1,000 条)。 这意味着对于每一批发回 Lynxus 的 Provenance 事件,接收方的 Lynxus 只需为每个组件生成一条事件。

默认情况下,发布到 Lynxus 实例时,Provenance 数据以 JSON 数组形式发送。 不过,用户可以定义 Record Writer,直接指定输出格式和数据,前提是输入 schema 定义如下:

{
  "type": "record",
  "name": "provenance",
  "namespace": "provenance",
  "fields": [
    {
      "name": "eventId",
      "type": "string"
    },
    {
      "name": "eventOrdinal",
      "type": "long"
    },
    {
      "name": "eventType",
      "type": "string"
    },
    {
      "name": "timestampMillis",
      "type": "long"
    },
    {
      "name": "durationMillis",
      "type": "long"
    },
    {
      "name": "lineageStart",
      "type": {
        "type": "long",
        "logicalType": "timestamp-millis"
      }
    },
    {
      "name": "details",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "componentId",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "componentType",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "componentName",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "processGroupId",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "processGroupName",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "entityId",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "entityType",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "entitySize",
      "type": [
        "null",
        "long"
      ]
    },
    {
      "name": "previousEntitySize",
      "type": [
        "null",
        "long"
      ]
    },
    {
      "name": "updatedAttributes",
      "type": {
        "type": "map",
        "values": "string"
      }
    },
    {
      "name": "previousAttributes",
      "type": {
        "type": "map",
        "values": "string"
      }
    },
    {
      "name": "actorHostname",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "contentURI",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "previousContentURI",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "parentIds",
      "type": {
        "type": "array",
        "items": "string"
      }
    },
    {
      "name": "childIds",
      "type": {
        "type": "array",
        "items": "string"
      }
    },
    {
      "name": "platform",
      "type": "string"
    },
    {
      "name": "application",
      "type": "string"
    },
    {
      "name": "remoteIdentifier",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "alternateIdentifier",
      "type": [
        "null",
        "string"
      ]
    },
    {
      "name": "transitUri",
      "type": [
        "null",
        "string"
      ]
    }
  ]
}