このドキュメントでは、Pub/Sub トピックを一覧表示する方法について説明します。トピックを一覧表示するには、Google Cloud コンソール、gcloud CLI、クライアント ライブラリ、または Pub/Sub API を使用します。
準備
- トピックとメッセージのパブリッシュ ワークフローについて学習します。
- トピックを作成します。
必要なロールと権限
トピックの一覧表示と管理に必要な権限を取得するには、トピックまたはプロジェクトに対する Pub/Sub 編集者(roles/pubsub.editor
)の IAM ロールを付与するように管理者に依頼してください。ロールの付与の詳細については、アクセス権の管理に関する記事をご覧ください。
この事前定義ロールには、トピックを一覧表示して管理するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
トピックを一覧表示して管理するには、次の権限が必要です。
-
トピックを作成する:
pubsub.topics.create
-
トピックを削除する:
pubsub.topics.delete
-
トピックからサブスクリプションの接続を解除する:
pubsub.topics.detachSubscription
-
トピックを取得する:
pubsub.topics.get
-
トピックを一覧表示する:
pubsub.topics.list
-
トピックに公開する:
pubsub.topics.publish
-
トピックを更新する:
pubsub.topics.update
-
トピックの IAM ポリシーを取得する:
pubsub.topics.getIamPolicy
-
トピックの IAM ポリシーを構成する:
pubsub.topics.setIamPolicy
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
アクセス制御は、プロジェクト レベルと個々のリソースレベルで構成できます。あるプロジェクトにサブスクリプションを作成し、別のプロジェクトにあるトピックにアタッチできます。プロジェクトごとに必要な権限があることを確認します。
トピックを一覧表示する
Console
Google Cloud コンソールで、Pub/Sub の [トピック] ページに移動します。
[トピック] ページに、利用可能なすべてのトピックが一覧表示されます。
デフォルトでは、コンソールから 50 個のトピックが返されます。この値を増やして、最大 200 のトピックを返すように設定するには、[1 ページあたりの行数] プルダウン切り替えボタンを使用します。この切り替えボタンは、プロジェクトに 20 を超えるトピックがある場合のみ、コンソールに表示されます。
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
トピックを一覧表示するには、
gcloud pubsub topics list
コマンドを使用します。gcloud pubsub topics list
デフォルトでは、クエリあたり最大で 100 件の結果が返されます。ページサイズ パラメータを使用すると、最大 1,000 の代替値を指定できます。たとえば、Google Cloud CLI を使用して --page-size=1000
を指定します。
REST
トピックを一覧表示するには、projects.topics.list
メソッドを使用します。
リクエスト:
リクエストは、Authorization
ヘッダー内のアクセス トークンにより認証を受ける必要があります。現在のアプリケーションのデフォルト認証情報のアクセス トークンを取得する場合は、gcloud auth application-default print-access-token
を使用します。
GET https://pubsub.googleapis.com/v1/projects/PROJECT_ID/topics Authorization: Bearer ACCESS_TOKEN
ここで
対応:
{ "topics": [ { "name": "projects/PROJECT_ID/topics/mytopic1", ... }, { "name": "projects/PROJECT_ID/topics/mytopic2", ... } ] }
C++
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある C++ 向けの手順に従って設定を行ってください。 詳細については、Pub/Sub C++ API のリファレンス ドキュメントをご覧ください。
Pub/Sub に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
C#
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある C# 向けの手順に従って設定を行ってください。 詳細については、Pub/Sub C# API のリファレンス ドキュメントをご覧ください。
Pub/Sub に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Go
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある Go 向けの手順に従って設定を行ってください。 詳細については、Pub/Sub Go API のリファレンス ドキュメントをご覧ください。
Pub/Sub に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Java
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある Java 向けの手順に従って設定を行ってください。 詳細については、Pub/Sub Java API のリファレンス ドキュメントをご覧ください。
Pub/Sub に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Node.js
Node.js
PHP
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある PHP 向けの手順に従って設定を行ってください。 詳細については、Pub/Sub PHP API のリファレンス ドキュメントをご覧ください。
Pub/Sub に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Python
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある Python 向けの手順に従って設定を行ってください。 詳細については、Pub/Sub Python API のリファレンス ドキュメントをご覧ください。
Pub/Sub に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Ruby
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある Ruby 向けの手順に従って設定を行ってください。 詳細については、Pub/Sub Ruby API のリファレンス ドキュメントをご覧ください。
Pub/Sub に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のステップ
トピックのサブスクリプションの種類を選択する。
gcloud CLI を使用してトピックを作成または変更する。
REST API を使用してトピックを作成または変更する。