默认情况下,消息处理器收集的分析数据会上传到 Qpid 和 Postgres 进行处理。然后,您可以在 Edge 界面中查看分析数据。
或者,您也可以配置消息处理器以将分析数据写入磁盘。然后,您可以将这些数据上传到自己的分析系统,以供分析之用。例如,您可以将数据上传到 Google Cloud BigQuery。然后,您可以利用 BigQuery 和 TensorFlow 提供的强大查询和机器学习功能来执行您自己的数据分析。
您也可以选择同时使用这两个选项。这意味着您可以将分析数据上传到 Qpid/Postgres 并将数据保存到磁盘。
文件名和位置
默认情况下,如果您启用了将分析数据写入磁盘文件的功能,则文件将写入以下目录:
/opt/apigee/var/log/edge-message-processor/ax/tmp
Edge 会以一分钟间隔为数据文件在 /tmp
下创建一个新目录。目录名称的格式为:
org~env~yyyyMMddhhmmss
例如:
myorg~prod~20190909163500 myorg~prod~20190909163600
每个目录都包含一个 .gz 文件,其中包含该间隔的各个数据文件。.gz 文件名的格式为:
4DigitRandomHex_StartTime.StartTimePlusInterval_internalHostIP_hostUUID_writer_index.txt.gz
Edge 会根据 uploadToCloud
消息处理器配置属性的设置,定期将目录及其包含的 .gz 文件从 /tmp
移至以下任一目录:
uploadToCloud = false
:文件已移至“/opt/apigee/var/log/edge-message-processor/ax/staging
”uploadToCloud = true:
(默认):文件会移至/opt/apigee/var/log/edge-message-processor/ax/failed
从 /staging
或 /failed
目录解压缩数据以获取分析数据文件。
配置属性
使用以下属性配置消息处理器,以便将分析数据写入磁盘。 以下所有属性均为可选属性:
媒体资源 | 说明 |
---|---|
conf_analytics_analytics.saveToDisk
|
设置为 默认值为 |
conf_analytics_analytics.sendToQueue
|
设置为 默认值为 |
conf_analytics_analytics.baseDataDirectoryPath
|
指定写入分析数据文件的基本路径。 默认值为 |
conf_analytics_analytics.allocatedDiskSpaceInMBytes
|
指定为分析文件分配的磁盘空间(以兆字节为单位)。 默认值为 |
conf_analytics_analytics.uploadToCloud
|
控制分析文件的最终位置。
注意:即使此属性名为 |
如需设置这些属性,请执行以下操作:
通过编辑器打开
message-processor.properties
文件。 如果该文件不存在,请创建一个:vi /opt/apigee/customer/application/message-processor.properties
根据需要设置属性:
# Enable writing analytics data to disk. conf_analytics_analytics.saveToDisk=true # Disable writing analytics data to Qpid/Postgres. conf_analytics_analytics.sendToQueue=false # Specify base directory for analytics data files. conf_analytics_analytics.baseDataDirectoryPath=/opt/apigee/var/smg # Set the disk space available for analytics files. conf_analytics_analytics.allocatedDiskSpaceInMBytes=3072 # Move final analytics data to files to the /staging directory. conf_analytics_analytics.uploadToCloud=false
- 保存更改。
确保属性文件归“apigee”用户所有:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
将
axgroup-001
分析组的consumer-type
属性的值设置为ax
:curl -X POST -H "Content-Type:application/json" \ "http://ms-ip:8080/v1/analytics/groups/ax/axgroup-001/properties?propName=consumer-type&propValue=ax" \ -u sysAdminEmail:sysAdminPWord
默认情况下,该分析群组的名称为
axgroup-001
。在 Edge 安装的配置文件中,您可以使用AXGROUP
属性设置分析组的名称。如果您不确定分析组的名称,请在管理服务器节点上运行以下命令以显示分析组:apigee-adminapi.sh analytics groups list \ --admin sysAdminEmail --pwd sysAdminPword --host localhost
此命令会在
name
字段中返回分析群组名称。重新启动消息处理器:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
重启后,消息处理器会将分析数据写入数据文件。
- 对所有消息处理器重复上述步骤。