HOW TO TD(User Engagement)Treasure Data User Engagement

TD ToolbeltチュートリアルTips

ホーム » TD ToolbeltチュートリアルTips

テクニカルサポートエンジニアリングチームの大村 裕です。
今回はすこし横道にそれて、複数アカウントでのtd-toolbeltの便利な使い方についてご紹介していきたいと思います。 Treasure Data CDPの環境をずっと同じユーザで使用つづける場合はtd accountコマンドでユーザID(メールアドレス)とパスワードを 登録するだけで特に問題はないかと思います。

しかし、複数アカウントを使い分ける場合、毎回、td accountとしてユーザを切り替えるのは非常に手間のかかる作業となってしまいます。そこで、apikeyや設定ファイルをコマンド起動時に指定することで簡単に切り替える方法をご紹介したいと思います。

  1. apikeyによる切り替え
  2. 設定ファイルによる切り替え

それぞれ、長所と短所がありますので使い分けてもらえるとよいかと思います。

apikeyによる切り替え

こちらは非常に簡単です。-kオプションによりapikeyを記述すればいいだけです。 例えば2ユーザが存在し、それぞれのapikeyが存在したとします。

ユーザID apikey
userA@example.com 123456/xxxxxxxxxxxxxx
userB@example.com 123456/yyyyyyyyyyyyyy

以下のようにクエリを発行するコマンドを実行すると上のコマンドの場合はuserAの権限で実行されます。 下のコマンドの場合はuserBの権限で実行されることになります。

 > td -k 123456/xxxxxxxxxxxxxx query -w -d sample_datasets "select symbol, high, low from nasdaq limit 3"
   :
   :
3 rows in set

> td -k 123456/yyyyyyyyyyyyyy query -w -d sample_datasets "select symbol, high, low from nasdaq limit 3"
   :
   :
3 rows in set


このようにapikeyを変更することで実行ユーザを変更することができます。 また、エンドポイントの切り替えもコマンド実行時に可能です。-eオプションを使用することで対象TD環境のリージョンを変更できますので、usリージョン以外でユーザの切り替えを行うときは設定が必要になります。(td-toolbeltはデフォルトでusリージョンにアクセスします。)

> td -k 654321/zzzzzz -e https://api.treasuredata.co.jp query -w -d sample_datasets "select symbol, high, low from nasdaq limit 3"
   :
   :
3 rows in set


こちらの方法はアドホックにユーザを切り替えたいという時に便利なやり方になっています。

設定ファイルによる切り換え

apikeyによるユーザの切り替えはアドホックに1度だけというような場合には便利ですが、常時切り替えが必要な環境では毎回毎回、apikeyやendpointを指定するのは少々手間がかかります。 そこで設定ファイルにこれら情報を保存し、設定ファイルを指定してユーザを切り替えるオプション(-c)が存在します。 これを使用すればapikeyやendpointをだらだらと記述することなしにユーザを切り替えることができます。使用方法としては以下のような形になります。

> td -c xxxx.conf query ....
> td -c yyyy.conf query ....


ファイル名は拡張子も含めて自由につけて大丈夫です。このようにすることでより簡単にユーザの切り替えが可能になっています。 設定ファイルのフォーマットは以下のようになっています。

[account]
  user = userA@exapmple.com
  apikey = 123456/xxxxxxxxxxxxxx
  endpoint = https://api.treasuredata.com


ユーザID(メールアドレス)、apikey、endpointを上記のように指定し、ファイルとして保存しておくだけです。 どこに保存しても構わないのですが、デフォルトのtd.conf(td accountコマンドで設定した内容)が存在する場所に保存しておくとよいかもしれません。 私の場合、Macを使っているので~/.tdディレクトリ以下にtd.conf.usやtd.conf.tokyo…というような形で保存しておき、tdコマンド実行時に以下のようにして実行しています。

> td -c ~/.td/td.conf.tokyo query ....

まとめ

td-toolbeltで実行ユーザを変更する方法についてご紹介しました。こちらを使用することで複数のtd環境にログインする必要がある方は非常に簡単に切り替えることが可能になると思いますので、是非、活用してみてください。

大村 裕

Technical Support Engineeringチーム

某SIerにてモバイル向けのアプリケーションプラットフォームやテスト自動化ツールなどの研究開発を担当する。その後、フリーとなりソフトウェアエンジニアおよびプログラミングインストラクターとして様々なソフトウェアシステムの研究開発や新人研修、OSSのサポート等を行う。2020年4月にトレジャーデータへ入社、サポートエンジニアとして日々お客様のトラブルシューティングを行っている。また、Treasure Academyの講師も担当。

得意領域 : プログラミング言語

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

Back to top button