根據預設,訊息處理器收集的數據分析資料會上傳至 Qpid 和 Postgres 進行處理。接著,您可以在 Edge UI 中查看數據分析資料。
或者,您也可以設定訊息處理器,將數據分析資料寫入磁碟。接著,您可以將這些資料上傳到自己的數據分析系統進行分析。舉例來說,您可以將資料上傳至 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 會定期將目錄及其包含的 .gz 檔案從 /tmp 移至下列任一目錄,具體取決於 uploadToCloud 訊息處理器設定屬性的設定:
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
|
指定分配給數據分析檔案的磁碟空間 (以 MB 為單位)。 預設值為 |
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-001Analytics 群組的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
重新啟動後,訊息處理器會將數據分析資料寫入資料檔案。
- 對所有訊息處理器重複執行這些步驟。