LoginSignup
2
2

More than 5 years have passed since last update.

DigdagサーバへのTreasureData接続情報設定

Last updated at Posted at 2016-10-27

やりたいこと

http://qiita.com/pilot/items/e763a67675e264ed0347 で作成したDigdagサーバに
http://qiita.com/pilot/items/ff49174adbbfd0a3c9e4#digdag%E3%81%AEtd%E3%82%B5%E3%83%BC%E3%83%90%E3%83%A2%E3%83%BC%E3%83%89 でプロジェクトをpushしたがAPIキー・エンドポイントの設定ができず実行できなかった

当該プロジェクトにTreasureData接続情報(APIキー・エンドポイント)を設定して実行できるようにしたい

結論

digdag secretsで設定する

APIキー設定

digdag secretsコマンドでサーバに設定する
以下のいずれかの方法で

方法1 - APIキー文字列をコマンドラインにべた書き

$ digdag secrets --project proj1 --set td.apikey=XXX
2016-10-26 12:43:59 +0900: Digdag v0.8.17
Secret 'td.apikey' set

ヒストリにAPIキー文字列が残る

方法2 - APIキー文字列をファイルに書く

$ vi tmpfile # APIキー文字列を書く
$ digdag secrets --project proj1 --set td.apikey=@tmpfile
2016-10-26 12:44:29 +0900: Digdag v0.8.17
Secret 'td.apikey' set
$ rm tmpfile

方法3 - td.confから抜き出し

$ digdag secrets --project proj1 --set td.apikey=`grep apikey ~/.td/td.conf | sed 's/.*= *\(.*\)/\1/'`
2016-10-26 12:45:45 +0900: Digdag v0.8.17
Secret 'td.apikey' set

digdag secretsに「td.confからAPIキーを取得」機能があると嬉しい

エンドポイント設定

前述のAPIキー設定方法のいずれかで
apikeyでなくendpoint

https://はつけない
td.confでは付いてるのでどちらかに統一してあると嬉しい

方法3だと以下

$ digdag secrets --project proj1 --set td.endpoint=`grep endpoint ~/.td/td.conf | sed 's#.*= *https://\(.*\)#\1#'`
2016-11-02 18:51:41 +0900: Digdag v0.8.18
Secret 'td.endpoint' set

実行

$ digdag start proj1 xxx --session now
2016-10-26 12:46:05 +0900: Digdag v0.8.17
Started a session attempt:
  session id: 94
  attempt id: 93
  uuid: 09141eca-f97c-4424-957e-cc76a732c58a
  project: proj1
  workflow: xxx
  session time: 2016-10-26 03:46:07 +0000
  retry attempt name:
  params: {}
  created at: 2016-10-26 12:46:08 +0900

* Use `digdag session 94` to show session status.
* Use `digdag task 93` and `digdag log 93` to show task status and logs.

~ 何度かdigdag session 94を実行して終わるのを待つ ~

$ digdag log 93
2016-10-26 12:47:11 +0900: Digdag v0.8.17
2016-10-26 12:46:08.989 +0900 [INFO] (0288@+xxx+task1) io.digdag.core.agent.OperatorManager: td>: xxx.sql
2016-10-26 12:46:09.969 +0900 [INFO] (0288@+xxx+task1) io.digdag.core.agent.OperatorManager: td>: xxx.sql
2016-10-26 12:46:11.280 +0900 [INFO] (0288@+xxx+task1) io.digdag.standards.operator.td.TdOperatorFactory$TdOperator: Started presto job id=8044900:
SELECT COUNT(*) AS count FROM xxx

2016-10-26 12:46:13.391 +0900 [INFO] (0288@+xxx+task1) io.digdag.core.agent.OperatorManager: td>: xxx.sql
2016-10-26 12:46:15.227 +0900 [INFO] (0288@+xxx+task2) io.digdag.core.agent.OperatorManager: echo>: 42
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2