批量匯入歷史檔案到日誌服務

雲雷發表於2018-11-07

批量導資料的場景

日誌服務主要接收實時寫入日誌,通過在機器上安裝logtail,在控制檯配置logtail配置,就能夠實時收集到新產生的日誌。但是對於一下場景

  • 新接入SLS的使用者,希望把老的資料匯入SLS。
  • 使用者誤操作造成的資料沒有收集,需要補資料。
  • 日誌不是實時產生,但需要批量匯入,比如mysql binlog。

對於以上場景,使用者需要使用日誌服務的批量導資料工具才能夠把資料寫入日誌服務。

導資料操作步驟

以下以匯入/var/log/nginx/error_log.1到日誌服務的nginx_log這個logstore為例,介紹匯入歷史資料的操作流程:

  1. 下載導資料工具 地址1 到你需要導資料的機器上.
  2. 在控制檯為logstore(nginx_log)配置logtail配置,如果已經有了logtail配置,請忽略該步驟。logtail配置只需要正則式和時間格式能夠匹配檔案內容,不要求路徑和檔名匹配。
  3. 把logtail配置應用到機器組上,機器組列表要包含導資料的機器ip、
  4. 在機器上執行
./import_log  --dir=/var/log/nginx/ --file=error_log.1 --begin_time=1443567661 --end_time=1448838061 
--sls_region=cn-yunlei --project=ali-slsyunlei-scmg --logstore=nginx_error_log --topic=  
--use_system_time=false  --quota_mb_per_min=500 --quota_qps=200   --dry_run=false

命令引數介紹

  • 檔案相關引數

    • 目錄名 –dir
    • 檔名 –file
    • 起始時間表示從哪個時間點開始匯入資料 –begin_time
    • 結束時間表示匯入資料截至到哪個時間點 –end_time
  • 日誌服務引數,分別表示匯入到哪個sls_region下的哪個project的logstore中,topic是什麼

    • sls_region
    • project
    • logstore
    • topic
  • 系統引數

    • quota_qps 每分鐘傳送次數
    • quota_mb_per_min 每分鐘資料量Mb
    • use_system_time=true 使用系統時間
    • dry_run=true 除錯,把日誌列印到終端
  • Region地址

    + cn-hangzhou  
    + cn-qingdao 
    + cn-beijing 
    + cn-shenzhen  
    


相關文章