验证架构的消息

本文档介绍如何验证 Pub/Sub 主题的架构。

您可以验证消息是否遵循特定的架构 创建架构资源之前或之后此步骤可确保 您希望通过与 然后再应用架构。

准备工作

所需的角色和权限

如需获取验证架构消息和管理消息所需的权限, 请让管理员向您授予 项目的 Pub/Sub Editor (roles/pubsub.editor) IAM 角色。 如需详细了解如何授予角色,请参阅管理访问权限

此预定义角色包含 验证架构消息和管理消息所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

如需验证和管理架构消息,您需要具备以下权限:

  • 创建架构: pubsub.schemas.create
  • 将架构附加到主题: pubsub.schemas.attach
  • 提交架构修订版本: pubsub.schemas.commit
  • 删除架构或架构修订版本: pubsub.schemas.delete
  • 获取架构或架构修订版本: pubsub.schemas.get
  • 列出架构: pubsub.schemas.list
  • 列出架构修订版本: pubsub.schemas.listRevisions
  • 回滚架构: pubsub.schemas.rollback
  • 验证消息: pubsub.schemas.validate
  • 获取架构的 IAM 政策: pubsub.schemas.getIamPolicy
  • 为架构配置 IAM 政策 pubsub.schemas.setIamPolicy

您也可以使用自定义角色或其他预定义角色来获取这些权限。

您可以向主账号(例如用户、群组、 网域或服务账号。您可以在一个项目中创建架构 将其附加到其他项目中的主题。 确保您拥有 资源。

验证架构的消息

控制台

  1. 在 Google Cloud 控制台中,前往 Pub/Sub 架构页面。

    前往“架构”

    此时会显示架构列表。

  2. 点击现有架构的架构 ID

    系统会打开架构的架构详情页面。

  3. 修订版本部分中,点击要修改的修订版本 验证消息。

  4. 详细信息部分中,点击测试消息

  5. Test message 窗口中,选择一种消息编码

  6. 消息正文中,输入测试消息。

  7. 点击测试

gcloud

  1. 在 Google Cloud 控制台中,激活 Cloud Shell。

    激活 Cloud Shell

    Cloud Shell 会话随即会在 Google Cloud 控制台的底部启动,并显示命令行提示符。Cloud Shell 是一个已安装 Google Cloud CLI 且已为当前项目设置值的 Shell 环境。该会话可能需要几秒钟时间来完成初始化。

  2. 要根据架构验证消息,请使用 gcloud pubsub schemas verify-message 命令。

    gcloud pubsub schemas validate-message --message=MESSAGE \
        --message-encoding=MESSAGE_ENCODING \
        (--schema-name=SCHEMA_NAME | \
        --type=TYPE \
        (--definition=DEFINITION | \
        --definition-file=DEFINITION_FILE))
    

    替换以下内容:

    • MESSAGE:用于根据架构验证的消息

    • MESSAGE_ENCODING:消息的编码。指定 以下值之一:binaryjson

    • SCHEMA_NAME:现有架构的名称或完整路径。

    • TYPE:内嵌架构的类型。指定 以下值:avroprotocol-buffer

    • DEFINITION:内嵌架构定义。

    • DEFINITION_FILE:包含架构定义的文件。

后续步骤