Log Service資料加工功能支援從OSS擷取IP2Location庫資料,對日誌中的IP地址進行富化,補充IP地址所屬的國家、省、市等資訊。
前提條件
已建立唯讀許可權的存取金鑰(AccessKey),用於從OSS Bucket擷取檔案。具體操作,請參見建立AccessKey。授權策略詳情請參見RAM Policy。
已建立唯寫許可權的存取金鑰(AccessKey),用於向OSS Bucket上傳IP地址檔案。
已從IP2Location官網下載IP地址檔案,並上傳到OSS Bucket。更多資訊,請參見控制台上傳檔案。
背景資訊
IP2Location提供全球IP地址資料庫,可以協助您精確尋找、確定全球範圍內IP地址的地理位置。您可以從IP2Location官網下載IP地址檔案,上傳至OSS,然後在Log Service對IP地址進行富化,擷取國家、省、市等資訊。
操作步驟
在資料加工頁面:
使用res_oss_file函數從OSS Bucket擷取IP2Location庫資料。
使用geo_parse函數解析IP地址。
使用e_set函數將解析結果中的新欄位添加到日誌中,實現資料富化。
原始日誌
ip: 192.0.2.1
加工規則
e_set( "geo", geo_parse( v("ip"), ip_db=res_oss_file( endpoint="http://oss-cn-hangzhou.aliyuncs.com", ak_id=res_local("AK_ID"), ak_key=res_local("AK_KEY"), bucket="test", file="your ip2location bin file", format="binary", change_detect_interval=20, ), provider="ip2location", ), ) e_json("geo")
res_oss_file函數的重要欄位說明如下表所示。
欄位
說明
endpoint
OSS訪問網域名稱。更多資訊,請參見訪問網域名稱和資料中心。
ak_id
具備唯讀OSS許可權的AccessKey ID。
出於安全考慮,建議配置為
res_local("AK_ID")
,表示從進階參數配置
中擷取。進階參數配置
操作步驟請參見建立資料加工任務。ak_key
具備唯讀OSS許可權的AccessKey Secret。
出於安全考慮,建議配置為res_local("AK_KEY")表示從進階參數配置中擷取。
bucket
用於儲存IP地址檔案的OSS Bucket。
file
您已上傳的IP地址檔案的名稱。
format
使用res_oss_file函數從OSS擷取IP2Location庫資料時,檔案輸出格式需設定為format='binary'。
加工結果
ip: 192.0.2.1 city: Dearborn province: Michigan country: United States