QuickSightのアセット一覧・アセットの数をCLIで出力してみた

チートシートとして残しておきます
2024.02.02

はじめに

データアナリティクス事業本部 BIチームのkariyaです。
QuickSightでは、管理画面で分析などのアセットの一覧を閲覧することができます。 今回は、CLIでアセットの数をカウントする方法と、一覧を取得する方法をご紹介します。

こんな時に使えそう

  • アセットの数だけ知りたい
  • アセット名をテキストで持ってきたい

準備:CloudShellを実行する

AWSマネジメントコンソールにサインインし、画面上部にあるCloudShellへのリンクをクリックします。

ここからは各コマンド、および実行結果の例をご紹介します。

アセットの数をカウントする

ダッシュボードの数

コマンド

dashboard_count=$(aws quicksight list-dashboards --aws-account-id 999999999999 --query 'DashboardSummaryList | length(@)')
echo "ダッシュボードの数: $dashboard_count"

出力結果

ダッシュボードの数: 30

分析の数

コマンド

analysis_count=$(aws quicksight list-analyses --aws-account-id 999999999999 --query 'AnalysisSummaryList | length(@)')
echo "分析の数: $analysis_count"

出力結果

分析の数: 144

データセットの数

コマンド

dataset_count=$(aws quicksight list-data-sets --aws-account-id 999999999999 --query 'DataSetSummaries | length(@)')
echo "データセットの数: $dataset_count"

出力結果

データセットの数: 155

データソースの数

コマンド

datasource_count=$(aws quicksight list-data-sources --aws-account-id 999999999999 --query 'DataSources | length(@)')
echo "データソースの数: $datasource_count"

出力結果

データソースの数: 307

アセットの一覧を出力する

ダッシュボードの一覧

コマンド

aws quicksight list-dashboards --aws-account-id 999999999999 --query 'DashboardSummaryList[].{Name: Name, DashboardId: DashboardId}' --output table

出力結果

-----------------------------------------------------------------------------------------
|                                    ListDashboards                                     |
+---------------------------------------+-----------------------------------------------+
|              DashboardId              |                     Name                      |
+---------------------------------------+-----------------------------------------------+
|  xxxxxxxx-xxxx-xxxx-xxxx-111111111111 |  ダッシュボードA                               |
|  xxxxxxxx-xxxx-xxxx-xxxx-222222222222 |  ダッシュボードB                               |
|  ...                                  |  ...                                          |
+---------------------------------------+-----------------------------------------------+

分析の一覧

コマンド

aws quicksight list-analyses --aws-account-id 999999999999 --query 'AnalysisSummaryList[].{Name: Name, AnalysisId: AnalysisId}' --output table

出力結果

---------------------------------------------------------------------------------------------------------------
|                                                ListAnalyses                                                 |
+---------------------------------------+---------------------------------------------------------------------+
|              AnalysisId               |                                Name                                 |
+---------------------------------------+---------------------------------------------------------------------+
|  xxxxxxxx-xxxx-xxxx-xxxx-111111111111 |  分析A                                                              |
|  xxxxxxxx-xxxx-xxxx-xxxx-222222222222 |  分析B                                                              |
|  ...                                  |  ...                                                                |
+---------------------------------------+---------------------------------------------------------------------+

データセットの一覧

コマンド

aws quicksight list-data-sets --aws-account-id 999999999999 --query 'DataSetSummaries[].{Name: Name, DataSetId: DataSetId}' --output table

出力結果

-------------------------------------------------------------------------------------------------------------------------------------------
|                                                              ListDataSets                                                               |
+----------------------------------------------------------------------------+------------------------------------------------------------+
|                                  DataSetId                                 |                           Name                             |
+----------------------------------------------------------------------------+------------------------------------------------------------+
|  xxxxxxxx-xxxx-xxxx-xxxx-111111111111                                      |  データセットA                                              |
|  xxxxxxxx-xxxx-xxxx-xxxx-222222222222                                      |  データセットB                                              |
|  ...                                                                       |  ...                                                       |
+----------------------------------------------------------------------------+------------------------------------------------------------+

データソースの一覧

コマンド

aws quicksight list-data-sources --aws-account-id 999999999999 --query 'DataSources[].{Name: Name, DataSourceId: DataSourceId}' --output table

出力結果

----------------------------------------------------------------------------------------------------------
|                                             ListDataSources                                            |
+---------------------------------------+----------------------------------------------------------------+
|             DataSourceId              |                             Name                               |
+---------------------------------------+----------------------------------------------------------------+
|  xxxxxxxx-xxxx-xxxx-xxxx-111111111111 |  データソースA                                                  |
|  xxxxxxxx-xxxx-xxxx-xxxx-222222222222 |  データソースB                                                  |
|  ...                                  |  ...                                                           |
+---------------------------------------+----------------------------------------------------------------+

おわりに

CLIでQuickSightのアセットの数と一覧を出力する方法をご紹介しました。 なお、こちらのコマンドはChatGPTと相談して作成しています。コマンドの一部を変更したい場合は、ChatGPTも良い相談相手になってくれると思います。

最後までお読み頂きありがとうございました。
少しでも参考になりましたら嬉しいです。