tencentcloud-sdk-nodejs
Version:
509 lines (487 loc) • 22 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Client = void 0;
/* eslint-disable @typescript-eslint/no-unused-vars */
/*
* Copyright (c) 2018 Tencent. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
const abstract_client_1 = require("../../../common/abstract_client");
/**
* trocket client
* @class
*/
class Client extends abstract_client_1.AbstractClient {
constructor(clientConfig) {
super("trocket.tencentcloudapi.com", "2023-03-08", clientConfig);
}
/**
* 消息消费验证。
当前 API 适用集群:5.x 集群。4.x 集群的消息消费验证接口文档见 [VerifyRocketMQConsume](https://cloud.tencent.com/document/api/1179/101061)。
*/
async VerifyMessageConsumption(req, cb) {
return this.request("VerifyMessageConsumption", req, cb);
}
/**
* 平滑迁移过程获取源集群group列表接口。
Filters字段为查询过滤器,支持以下字段:
* GroupName,消费组名称,支持模糊搜索
* Imported,是否已导入
* ImportStatus,导入状态,参考[SourceClusterGroupConfig](https://cloud.tencent.com/document/api/1493/96031#SourceClusterGroupConfig)的说明
* Namespace,命名空间,仅4.x集群有效
Filters示例:
[{
"Name": "GroupName",
"Values": ["group-a"]
}]
*/
async DescribeSourceClusterGroupList(req, cb) {
return this.request("DescribeSourceClusterGroupList", req, cb);
}
/**
* 写入消费组灰度路由配置
*/
async PutConsumerRouteConfig(req, cb) {
return this.request("PutConsumerRouteConfig", req, cb);
}
/**
* 查询Topic迁移状态列表。
Filters字段为查询过滤器,支持以下条件:
* TopicName 主题名称,支持模糊查询
* MigrationStatus 迁移状态,可参考[MigratingTopic](https://cloud.tencent.com/document/api/1493/96031#MigratingTopic)数据结构
* Namespace 命名空间,仅4.x集群有效
Filters示例:
[{
"Name": "TopicName",
"Values": ["topic-a"]
}]
*/
async DescribeMigratingTopicList(req, cb) {
return this.request("DescribeMigratingTopicList", req, cb);
}
/**
* 根据消息 ID 查询消息轨迹。
当前 API 适用集群:5.x 集群。4.x 集群查询消息轨迹接口文档见 [DescribeRocketMQMsgTrace](https://cloud.tencent.com/document/product/1179/97760)。
*/
async DescribeMessageTrace(req, cb) {
return this.request("DescribeMessageTrace", req, cb);
}
/**
* 修改主题属性。
当前 API 适用集群:5.x 集群。4.x 集群的修改主题属性接口文档见 [ModifyRocketMQTopic](https://cloud.tencent.com/document/api/1179/63414)。
*/
async ModifyTopic(req, cb) {
return this.request("ModifyTopic", req, cb);
}
/**
* 查询消费组订阅的主题列表,Filter参数使用说明如下:
- TopicName 主题名称,从 [DescribeTopicList](https://cloud.tencent.com/document/api/1493/96030) 接口返回的 [TopicItem](https://cloud.tencent.com/document/api/1493/96031#TopicItem) 或控制台获得。
Filters示例:
[{ "Name": "TopicName", "Values": ["test_topic"] }]
当前 API 适用集群:5.x 集群。4.x 集群的查询消费组订阅的主题列表接口文档见 [DescribeRocketMQTopicsByGroup](https://cloud.tencent.com/document/product/1179/108863)。
*/
async DescribeTopicListByGroup(req, cb) {
return this.request("DescribeTopicListByGroup", req, cb);
}
/**
* 从迁移列表中移除主题,仅当主题处于初始状态时有效
*/
async RemoveMigratingTopic(req, cb) {
return this.request("RemoveMigratingTopic", req, cb);
}
/**
* 添加角色。
当前 API 适用集群:5.x 集群。4.x 集群的创建角色接口文档见 [CreateRocketMQRole](https://cloud.tencent.com/document/product/1179/107538),给角色授权接口文档见 [CreateRocketMQEnvironmentRole](https://cloud.tencent.com/document/product/1179/107539)。
*/
async CreateRole(req, cb) {
return this.request("CreateRole", req, cb);
}
/**
* 导入消费者组列表
*/
async ImportSourceClusterConsumerGroups(req, cb) {
return this.request("ImportSourceClusterConsumerGroups", req, cb);
}
/**
* 创建消费组灰度标签
*/
async CreateConsumerLabel(req, cb) {
return this.request("CreateConsumerLabel", req, cb);
}
/**
* 用于查询平滑迁移任务列表。
查询参数Filters, 支持的字段如下:
* TaskStatus, 任务状态,支持多选
* ConnectionType,网络连接类型,支持多选,参考[SmoothMigrationTaskItem](https://cloud.tencent.com/document/api/1493/96031#SmoothMigrationTaskItem)的说明
* InstanceId,实例ID,精确搜索
* TaskName,任务名称,支持模糊搜索
Filters示例:
[{
"Name": "InstanceId",
"Values": ["rmq-1gzecldfg"]
}]
*/
async DescribeSmoothMigrationTaskList(req, cb) {
return this.request("DescribeSmoothMigrationTaskList", req, cb);
}
/**
* 发送 RocketMQ 消息,该接口仅用于控制台发送少量测试消息,不保证 SLA,且云 API 存在限流,在真实业务场景下,请使用 RocketMQ SDK 发送消息。
当前 API 适用集群:5.x 集群。4.x 集群的发送消息接口文档见 [SendRocketMQMessage](https://cloud.tencent.com/document/api/1179/94179)。
*/
async SendMessage(req, cb) {
return this.request("SendMessage", req, cb);
}
/**
* 删除 RocketMQ 5.x 集群,删除前请先删除正在使用的主题、消费组和角色信息。
当前 API 适用集群:5.x 集群。删除 4.x 集群接口文档见 [DeleteRocketMQVipInstance](https://cloud.tencent.com/document/product/1179/95802)。
*/
async DeleteInstance(req, cb) {
return this.request("DeleteInstance", req, cb);
}
/**
* 创建消费组。
当前 API 适用集群:5.x 集群。4.x 集群的创建消费组接口文档见 [CreateRocketMQGroup](https://cloud.tencent.com/document/api/1179/63428)。
*/
async CreateConsumerGroup(req, cb) {
return this.request("CreateConsumerGroup", req, cb);
}
/**
* 查询角色列表,Filter参数使用说明如下:
- RoleName 角色名称,支持模糊搜索,从本接口返回值或控制台获得
- AccessKey AccessKey,支持模糊搜索,从本接口返回值或控制台获得
Filters示例:
[{ "Name": "RoleName", "Values": ["test_role"] }]
当前 API 适用集群:5.x 集群。4.x 集群的查询角色列表接口文档见 [DescribeRocketMQRoles](https://cloud.tencent.com/document/product/1179/107534),查询角色授权列表接口文档见 [DescribeRocketMQEnvironmentRoles](https://cloud.tencent.com/document/product/1179/107535)。
*/
async DescribeRoleList(req, cb) {
return this.request("DescribeRoleList", req, cb);
}
/**
* 查询消费组某个灰度标签详情
*/
async DescribeConsumerLabel(req, cb) {
return this.request("DescribeConsumerLabel", req, cb);
}
/**
* 检查迁移中的主题是否处于正常状态,只有处于正常状态的主题,才可以进入下一个迁移阶段
*/
async DoHealthCheckOnMigratingTopic(req, cb) {
return this.request("DoHealthCheckOnMigratingTopic", req, cb);
}
/**
* 查询消息详情。
当前 API 适用集群:5.x 集群。4.x 集群的查询消息详情接口文档见 [DescribeRocketMQMsg](https://cloud.tencent.com/document/product/1179/91055)。
*/
async DescribeMessage(req, cb) {
return this.request("DescribeMessage", req, cb);
}
/**
* 重置消费位点。
当前 API 适用集群:5.x 集群。4.x 集群的重置消费位点接口文档见 [ResetRocketMQConsumerOffSet](https://cloud.tencent.com/document/api/1179/71662)。
*/
async ResetConsumerGroupOffset(req, cb) {
return this.request("ResetConsumerGroupOffset", req, cb);
}
/**
* 删除消费组。消费者组删除后,消费者组的所有配置和相关数据都会被清空,且无法找回。删除后,在线的消费者客户端会出现报错,建议您提前下线客户端。
当前 API 适用集群:5.x 集群。4.x 集群的删除消费组接口文档见 [DeleteRocketMQGroup](https://cloud.tencent.com/document/api/1179/63424)。
*/
async DeleteConsumerGroup(req, cb) {
return this.request("DeleteConsumerGroup", req, cb);
}
/**
* 修改消费组属性。
当前 API 适用集群:5.x 集群。4.x 集群的修改消费组属性接口文档见 [ModifyRocketMQGroup](https://cloud.tencent.com/document/api/1179/63416)。
*/
async ModifyConsumerGroup(req, cb) {
return this.request("ModifyConsumerGroup", req, cb);
}
/**
* 查询消费组下灰度标签列表
*/
async DescribeConsumerLabelList(req, cb) {
return this.request("DescribeConsumerLabelList", req, cb);
}
/**
* 查询消费者客户端详情。
当前 API 适用集群:5.x 集群。4.x 集群的查询消费者客户端详情接口文档见 [DescribeRocketMQConsumerConnectionDetail](https://cloud.tencent.com/document/product/1179/102490)。
*/
async DescribeConsumerClient(req, cb) {
return this.request("DescribeConsumerClient", req, cb);
}
/**
* 查看迁移消费组的实时信息
*/
async DescribeMigratingGroupStats(req, cb) {
return this.request("DescribeMigratingGroupStats", req, cb);
}
/**
* 删除角色。请确保该角色相关信息不在当前代码中被使用。删除角色后,原先使用该角色进行生产或消费消息的密钥(AccessKey 和 SecretKey)将立即失效。
当前 API 适用集群:5.x 集群。4.x 集群的删除角色接口文档见 [DeleteRocketMQRoles](https://cloud.tencent.com/document/product/1179/107536),删除角色授权接口文档见 [DeleteRocketMQEnvironmentRoles](https://cloud.tencent.com/document/product/1179/107537)。
*/
async DeleteRole(req, cb) {
return this.request("DeleteRole", req, cb);
}
/**
* 查询产品售卖规格,针对 RocketMQ 5.x 集群。
*/
async DescribeProductSKUs(req, cb) {
return this.request("DescribeProductSKUs", req, cb);
}
/**
* 获取主题队列级别的消费详情
当前 API 适用集群:5.x 铂金版集群
*/
async DescribeTopicStats(req, cb) {
return this.request("DescribeTopicStats", req, cb);
}
/**
* 修改迁移中的Topic状态进入下一步
*/
async ChangeMigratingTopicToNextStage(req, cb) {
return this.request("ChangeMigratingTopicToNextStage", req, cb);
}
/**
* 查询指定消费组堆积数。
当前 API 适用集群:4.x 集群和 5.x 集群。
*/
async DescribeConsumerLag(req, cb) {
return this.request("DescribeConsumerLag", req, cb);
}
/**
* 导入topic列表
*/
async ImportSourceClusterTopics(req, cb) {
return this.request("ImportSourceClusterTopics", req, cb);
}
/**
* 查询消费组详情。
当前 API 适用集群:5.x 集群。4.x 集群的查询消费组详情接口文档见 [DescribeRocketMQConsumerConnections](https://cloud.tencent.com/document/product/1179/100460)。
*/
async DescribeConsumerGroup(req, cb) {
return this.request("DescribeConsumerGroup", req, cb);
}
/**
* 创建 RocketMQ 主题。
当前 API 适用集群:5.x 集群。4.x 集群的创建主题接口文档见 [CreateRocketMQTopic](https://cloud.tencent.com/document/api/1179/63426)
*/
async CreateTopic(req, cb) {
return this.request("CreateTopic", req, cb);
}
/**
* 查询消息列表。如果查询死信消息,请设置ConsumerGroup参数。
当前 API 适用集群:5.x 集群。4.x 集群的查询消息列表接口文档见 [DescribeRocketMQTopicMsgs](https://cloud.tencent.com/document/product/1179/97761)。
*/
async DescribeMessageList(req, cb) {
return this.request("DescribeMessageList", req, cb);
}
/**
* 创建 RocketMQ 5.x 集群。
当前 API 适用集群:5.x 集群。创建 4.x 专享/通用集群的接口文档见 [CreateRocketMQVipInstance](https://cloud.tencent.com/document/product/1179/95721)。
*/
async CreateInstance(req, cb) {
return this.request("CreateInstance", req, cb);
}
/**
* 查询 RocketMQ 5.x 集群信息。
当前 API 适用集群:5.x 集群。查询 4.x 专享/通用集群信息的接口文档见 [DescribeRocketMQVipInstanceDetail](https://cloud.tencent.com/document/product/1179/86725)。
*/
async DescribeInstance(req, cb) {
return this.request("DescribeInstance", req, cb);
}
/**
* 修改 RocketMQ 5.x 集群接入点,操作前请先确认接入点已存在。
*/
async ModifyInstanceEndpoint(req, cb) {
return this.request("ModifyInstanceEndpoint", req, cb);
}
/**
* 获取主题列表,Filter参数使用说明如下:
- TopicName 主题名称,支持模糊搜索,从 [DescribeTopicList](https://cloud.tencent.com/document/api/1493/96030) 接口返回的 [TopicItem](https://cloud.tencent.com/document/api/1493/96031#TopicItem) 或控制台获得
- TopicType 主题类型查询,支持多选,参考 [DescribeTopic](https://cloud.tencent.com/document/api/1493/97945) 接口 TopicType 字段
Filters示例:
[{ "Name": "TopicName", "Values": ["test_topic"] }]
当前 API 适用集群:5.x 集群。4.x 集群的获取主题列表接口文档见 [DescribeRocketMQTopics](https://cloud.tencent.com/document/api/1179/63418)。
*/
async DescribeTopicList(req, cb) {
return this.request("DescribeTopicList", req, cb);
}
/**
* 重新发送死信消息。
当前 API 适用集群:5.x集群。4.x 集群的重发死信消息接口文档见 [RetryRocketMQDlqMessage](https://cloud.tencent.com/document/api/1179/114595)。
*/
async ResendDeadLetterMessage(req, cb) {
return this.request("ResendDeadLetterMessage", req, cb);
}
/**
* 查询消费组灰度路由配置版本列表
*/
async DescribeConsumerRouteVersionList(req, cb) {
return this.request("DescribeConsumerRouteVersionList", req, cb);
}
/**
* 创建元数据迁移上云任务
*/
async CreateMigrationTask(req, cb) {
return this.request("CreateMigrationTask", req, cb);
}
/**
* 查询主题关联的生产者列表信息,Filters支持以下筛选条件:
- ClientIP,客户端IP
- ClientID,客户端ID
当前 API 适用集群:5.x 集群。4.x 集群的查询生产者客户端列表接口文档见 [DescribeRocketMQProducers](https://cloud.tencent.com/document/api/1179/122749)。
*/
async DescribeProducerList(req, cb) {
return this.request("DescribeProducerList", req, cb);
}
/**
* 查询集群列表,仅支持 5.x 集群。Filters参数使用说明如下:
- InstanceName 集群名称,支持模糊搜索
- InstanceId 腾讯云 RocketMQ 实例 ID,从 [DescribeFusionInstanceList](https://cloud.tencent.com/document/api/1493/106745) 接口或控制台获得
- InstanceType 集群类型,可参考 [InstanceItem](https://cloud.tencent.com/document/api/1493/96031#InstanceItem) 数据结构,支持多选
- InstanceStatus 集群状态,可参考 [InstanceItem](https://cloud.tencent.com/document/api/1493/96031#InstanceItem) 数据结构,支持多选
Filters示例:
[{
"Name": "InstanceId",
"Values": ["rmq-72mo3a9o"]
}]
*/
async DescribeInstanceList(req, cb) {
return this.request("DescribeInstanceList", req, cb);
}
/**
* 查询集群列表,支持 4.x 和 5.x 集群,其中 Filters 参数使用说明如下:
- InstanceName: 集群名称,支持模糊查询,从本接口返回值或控制台获得
- InstanceId: 集群ID,精确查询,从当前接口或控制台获得
- InstanceType: 集群类型,可参考 [InstanceItem](https://cloud.tencent.com/document/api/1493/96031#InstanceItem) 数据结构,支持多选
- Version: 集群版本,枚举值如下:
- 4 RocketMQ 4.x 集群
- 5 RocketMQ 5.x 集群
- InstanceStatus: 集群状态筛选条件,支持多选,枚举值如下:
- RUNNING:运行中
- ABNORMAL:异常
- OVERDUE:隔离中
- DESTROYED:已销毁
- CREATING:创建中
- MODIFYING:变配中
- CREATE_FAILURE:创建失败
- MODIFY_FAILURE:变配失败
- DELETING:删除中
Filters示例:
[{ "Name": "InstanceId", "Values": ["rmq-72mo3a9o"] }]
*/
async DescribeFusionInstanceList(req, cb) {
return this.request("DescribeFusionInstanceList", req, cb);
}
/**
* 获取消费组列表,Filter参数使用说明如下:
- ConsumerGroupName 消费组名称,支持模糊查询,从 [DescribeConsumerGroupList](https://cloud.tencent.com/document/api/1493/101535) 接口返回的 [ConsumeGroupItem](https://cloud.tencent.com/document/api/1493/96031#ConsumeGroupItem) 或控制台获得。
- ConsumeMessageOrderly,投递顺序性,枚举值如下:
- true 顺序投递
- false 并发投递
- RetryPolicy,重试策略,枚举值如下:
- EXPONENTIAL:固定间隔
- CUSTOMIZED:阶梯退避
Filters示例:
[{ "Name": "ConsumeMessageOrderly", "Values": ["true"] }]
当前 API 适用集群:5.x 集群。4.x 集群的获取消费组列表接口文档见 [DescribeRocketMQGroups](https://cloud.tencent.com/document/api/1179/63420)。
*/
async DescribeConsumerGroupList(req, cb) {
return this.request("DescribeConsumerGroupList", req, cb);
}
/**
* 修改角色。
当前 API 适用集群:5.x 集群。4.x 集群的修改角色接口文档见 [ModifyRocketMQRole](https://cloud.tencent.com/document/product/1179/107532),修改角色的授权接口文档见 [ModifyRocketMQEnvironmentRole](https://cloud.tencent.com/document/product/1179/107533)。
*/
async ModifyRole(req, cb) {
return this.request("ModifyRole", req, cb);
}
/**
* 删除消费组灰度路由配置
*/
async DeleteConsumerRouteConfig(req, cb) {
return this.request("DeleteConsumerRouteConfig", req, cb);
}
/**
* 查询主题详情,Offset和Limit参数是指订阅该主题的消费组查询分页参数,Filter参数使用说明如下:
- ConsumerGroup 消费组名称,从 [DescribeConsumerGroupList](https://cloud.tencent.com/document/api/1493/101535) 接口返回的 [ConsumeGroupItem](https://cloud.tencent.com/document/api/1493/96031#ConsumeGroupItem) 或控制台获得。
Filters示例:
[{ "Name": "ConsumerGroup", "Values": ["test_group"] }]
*/
async DescribeTopic(req, cb) {
return this.request("DescribeTopic", req, cb);
}
/**
* 获取数据迁移任务列表,Filter参数使用说明如下:
TaskId,根据任务ID精确查找
InstanceId,根据实例ID精确查找
Type,根据任务类型精确查找
*/
async DescribeMigrationTaskList(req, cb) {
return this.request("DescribeMigrationTaskList", req, cb);
}
/**
* 删除消费组灰度标签
*/
async DeleteConsumerLabel(req, cb) {
return this.request("DeleteConsumerLabel", req, cb);
}
/**
* 查询消费组当前生效的灰度路由配置
*/
async DescribeConsumerRouteConfig(req, cb) {
return this.request("DescribeConsumerRouteConfig", req, cb);
}
/**
* 查询消费组下的客户端连接列表。
当前 API 适用集群:5.x 集群。4.x 集群的查询消费组下的客户端列表接口文档见 [DescribeRocketMQConsumerConnections](https://cloud.tencent.com/document/product/1179/100460)。
*/
async DescribeConsumerClientList(req, cb) {
return this.request("DescribeConsumerClientList", req, cb);
}
/**
* 用于查询迁移主题的实时数据
*/
async DescribeMigratingTopicStats(req, cb) {
return this.request("DescribeMigratingTopicStats", req, cb);
}
/**
* 删除主题。主题删除后,主题的所有配置和相关数据都会被清空,且无法找回。
当前 API 适用集群:5.x 集群。4.x 集群的删除主题接口文档见 [DeleteRocketMQTopic](https://cloud.tencent.com/document/api/1179/63423)。
*/
async DeleteTopic(req, cb) {
return this.request("DeleteTopic", req, cb);
}
/**
* 删除平滑迁移任务,只有被取消的任务才可删除
*/
async DeleteSmoothMigrationTask(req, cb) {
return this.request("DeleteSmoothMigrationTask", req, cb);
}
/**
* 回滚正在迁移的主题至前一个阶段
*/
async RollbackMigratingTopicStage(req, cb) {
return this.request("RollbackMigratingTopicStage", req, cb);
}
/**
* 修改 RocketMQ 5.x 集群属性,仅支持修改运行中的集群。
当前 API 适用集群:5.x 集群。修改 4.x 集群属性的接口文档见 [ModifyRocketMQInstance](https://cloud.tencent.com/document/product/1179/108862)。
*/
async ModifyInstance(req, cb) {
return this.request("ModifyInstance", req, cb);
}
}
exports.Client = Client;