メタデータを同期する(Domo)

DomoのDataSetをMashuにメタデータとして同期するための設定手順と、同期に必要なDomo側の設定について説明します。

1. Domoの設定

MashuがDomoのDataSetを同期するためには、DomoインスタンスのClient IDとSecretが必要です。以下の手順に従って、Client IDとSecretを生成してください。

  1. Domoインスタンス名を確認します
    1. Domoインスタンス名は、URLの「domo.com」の前の部分です。
      例: Domo の URLが「instance.domo.com」の場合、インスタンス名は「instance」になります。
    2. このインスタンス名を控えておきます。
      ※これは後のMashu側設定で使用します。
  2. 開発者ポータルにアクセスします
    1. 以下のリンクから開発者ポータルにアクセスします
      開発者ポータルログインリンク 
    2. 先ほど控えたインスタンス名を入力します。

  3.  ログインする
    1. Domoアカウントのメールアドレスとパスワードを入力してログインします。
  4. Client IDとSecretを生成する
    1. Create a Client」リンクをクリックし、Client作成画面に移動します。domo-client
    2. 各項目を以下のように設定します
      1. Name:任意の名前

      2. Description:任意の説明

      3. Scopedata にチェックを入れます。

    3. CREATE」ボタンを押下し、Client IDとSecretを生成します。
5. Client IDとSecretを控える
    1. 生成されたClient IDおよびSecretを安全な場所に控えておきます。
      ※これらは後のMashu側設定で使用します。

2. データソースの作成

タイプとして「Domo」を選択してデータソースを作成します。

3. 接続情報設定

データソース画面の「接続設定」タブで、Domo への接続情報を設定します。

  • インスタンス名: 手順1.1で控えたインスタンス名を指定します。
  • ClientID: 手順1.5で控えた ClientID を指定します。
  • Secret: 手順1.5で控えた Secret を指定します。

4. データソース設定(メタデータ同期オプション)

「データソース設定」タブでは、メタデータの同期に関する2つのオプション(マッピング、マージ)を設定します。

1. マッピング設定

DomoのDataSetの説明を、Mashuのメタデータのどの項目にマッピングするかを選択します。

  • エイリアス: DataSetの説明を「エイリアス」にマッピングします。
  • 説明: DataSetの説明を「説明」にマッピングします。
  • エイリアスと説明: DataSetの説明を「エイリアス」と「説明」の両方にマッピングします。

2. メタデータマージ設定

2回目以降の同期時に、DataSetの説明でMashu上の「エイリアス」と「説明」を上書きする際のルールを設定します。

  • チェックがONの場合(デフォルト): DataSetの説明に値が存在すれば、Mashu側の「エイリアス」や「説明」をDataSetの説明で上書きします。ただし、DataSetの説明が空の場合は上書きしません。

  • チェックがOFFの場合: Mashu側の「エイリアス」や「説明」が空の場合にのみ、DataSetの説明で上書きします。ただし、既に「エイリアス」や「説明」に値が入力されている場合は上書きしません。

5. メタデータの同期実行

「メタデータ」タブに移動し、「メタデータ同期」ボタンを押下することで、Domoからメタデータを同期します。

6. トラブルシューティング

メタデータ同期に失敗し、以下のエラーが表示された場合は、それぞれの原因と対処方法を確認してください。

  1. domo api error: status: 401, message: {"error":"invalid_client"}
    Client ID または Secret が正しいか確認してください。

  2. domo api error: status: 400, message: {"error":"invalid_scope"}
    登録した Client ID / Secret に設定されているスコープに、data が含まれているか確認してください。