跳转至

配置转换和增强插件

插件有两种类型:转换器增强。 当选择插件时,一个流水线只能有一个转换器和零个或多个增强

内置插件

以下插件由 亚马逊云科技点击流分析 提供。

插件名称 类型 描述
UAEnrichment 增强 用户代理增强,使用 ua_parser Java库将HTTP头部的 User-Agent 增强为 ua_browser,ua_browser_version,ua_os,ua_os_version,ua_device
IpEnrichment 增强 IP地址增强,使用MaxMind的GeoLite2数据将 IP 增强为 city, continent, country

UAEnrichment 使用 UA Parser 来解析Http头部的用户代理。

IpEnrichment 插件使用由MaxMind创建的 GeoLite2-City 数据,可从 https://www.maxmind.com 获取。

自定义插件

您可以添加自定义插件来转换原始事件数据或根据您的需求丰富数据。

提示

要添加自定义插件,您必须首先开发您自己的插件,请参阅 开发自定义插件

您可以通过点击 添加插件 按钮来添加您的插件,这将打开一个新窗口,在其中您可以上传您的插件。

  1. 给插件提供 名称描述
  2. 选择 插件类型
  3. 增强:用于向SDK(无论是Clickstream SDK还是第三方SDK)收集的事件数据中添加字段的插件
  4. 转换:用于将第三方SDK的原始数据转换为解决方案内置模式的插件

  5. 上传插件的java JAR文件。

  6. (可选)如果有的话,上传依赖文件。

  7. 主要功能类:填写您的插件类名的完整类名,例如 com.example.sol.CustomTransformer

开发自定义插件

开发自定义插件的最简单方式是基于我们的示例项目进行更改。

  1. 克隆/派生示例项目。
git clone https://github.com/awslabs/clickstream-analytics-on-aws.git

cd examples/custom-plugins
  • 对于增强插件,请参考示例:custom-enrich/
  • 对于转换器插件,请参考示例:custom-sdk-transformer/

  • 根据您的需要更改包和类的名称。

  • 实现方法 public Dataset<row> transform(Dataset<row> dataset) 来进行转换或增强。

  • (可选)编写测试代码。

  • 运行gradle将代码打包成jar ./gradlew clean build

  • 在构建输出目录 ./build/libs/ 中获取jar文件。