cron-job-feed-FTP連線
使用
前情提要:
今天遇到一個客戶的 feed 是這個 - ftp://cron-jobs.tagtoo.com.tw/line-beams.csv,要怎麼下載下來呢?
重要事情提醒
如果今天遇到一個 feed 長得像這樣 ftp://cron-jobs.tagtoo.com.tw/line-beams.csv
,要怎麼下載或使用呢?
解決步驟
下載 FTP 連線軟體
- 免費 FileZilla
- 付費 cyberduck
連線進入
這邊我用 FileZilla 這個軟體當作示範
- 先開啟這個檔案 - https://docs.google.com/document/d/13Fyvh8xi1J1blpIfjH2drC0xFCaa7u11o_RzHsthRww/edit,裡面有所有的帳密資料
- 確認目前使用的 feed 和名稱是哪一個,目前我確認到 feed 是這個
ftp://cron-jobs.tagtoo.com.tw/line-beams.csv
,並且ID是TagtooBeamsLineFeed
- 確認好之後打開軟體並開始連接,主機 -
cron-jobs.tagtoo.com.tw
、使用者名稱 -TagtooBeamsLineFeed
、密碼 -上面的連結有
,這樣就成功連結 - 連進去後就可以下載檔案
cron-job 服務介紹
cron-job 這個檔案,也是 tagtoo feed 服務的其中一環,他主要是產生 CSV 檔案,但是 api 不是就可以產生 csv 檔案了嗎?為什麼還要用 cron-job 呢?原因就是有些渠道不接受 https 協議,只接受 ftp 協議,像是 Line 的 feed 就是一定要用 FTP。
而 cron-job 主要是還是在負責產生 CSV 檔案,他會向 api 檔案發出請求,把資料拉過來,所以如果今天客戶想要改 feed 的某些設定,比如上標籤的話,還是要用 api 檔案修改,cron-job 檔案主要只是提出需求。
Ps. 如果今天只是單純改 UTM 參數,要在 crob-job 檔案中修改喔!
cron-job GCP
由於是使用 FTP 設定,所以我們在雲端開了一個 VM,裡面有一台 FTP SERVER,檔案都在那裡面。
Ps. cron-job 專案在 tagtoo-new 裡面
如果想要進入觀看的話,可以用 gcloud 指令登入查看:
先初始化,並登入 tagtoo 的帳號
$ gcloud init
指定 cron-job 的GCP
選擇 [1] dashboard-dev-1230
Pick cloud project to use:
[1] dashboard-dev-1230
[2] gothic-province-823
[3] starlit-cocoa-390006
[4] tagtoo-adchief
連進 cron-job
$ gcloud compute ssh --zone "asia-east1-a" "cron-jobs" --project "dashboard-dev-1230"
最後再輸入這一行:
yee0526@cron-jobs:~$ cd /mnt/cron-jobs-data/github/cron-jobs
檔案介紹
新增 cron-job 服務
- 如果今天有一個新客戶想要使用 Line Feed 要怎麼做?
首先可以看一下 line_lap_feed 這個資料夾,主要的 feed 產生都在這裡:
config.yaml
首先會根據 config.yaml,產生指定客戶的 line feed (填上 ec_id) 就好,上面的 yaml 裡面的 name 就是指 CSV 的檔案名稱。
其他參數就是 UTM 上會帶的參數。
download.py
這個檔案就是會去 api 那邊把資料都抓過來,最後產生 CSV 檔案!
想要測試可以使用 ipython,直接在 ipython 環境裡面 import fc 然後看結果就好。
看前所有的 feed
如果今天想要看所有 cron-job 的 feed 可以照著下面輸入:
先初始化,並登入 tagtoo 的帳號
$ gcloud init
指定 cron-job 的GCP
選擇 [1] dashboard-dev-1230
Pick cloud project to use:
[1] dashboard-dev-1230
[2] gothic-province-823
[3] starlit-cocoa-390006
[4] tagtoo-adchief
連進 cron-job
$ gcloud compute ssh --zone "asia-east1-a" "cron-jobs" --project "dashboard-dev-1230"
到達 etc/crobtab
yee0526@cron-jobs:$ cd /etc
yee0526@cron-jobs:/etc$ vim crontab
這樣可以進到 crontab
這個檔案,可以看到裡面有所有 feed 的詳細資訊!
幫客戶新增一個 FTP 帳戶 —– 以下不確定
- 如果今天客戶的資料量太大,我們會幫客戶多開一個帳號
幫客戶開一份自己個 FTP 帳號密碼 - 在設定一個定期的時間,定期把內部的檔案, copy 一份到客戶的資料夾底下
做法在這邊 : https://github.com/Tagtoo/cron-jobs/wiki/Create-a-new-FTP-account