华为云用户手册

  • MDL锁视图案例分析 问题描述 用户发现对表t2执行truncate操作一直被阻塞后,业务流程中对表t2执行查询操作也全部被阻塞。 排查分析 无MDL锁视图 当发现DDL语句被阻塞后,执行show processlist查看线程信息,结果如下所示。 show processlist; +------+--------+--------------+--------+-----------+----------+-----------------------------------|-------------------------| | Id | User | Host | db | Command | Time | State |Info | +---------------+-----------------------+-----------+----------+-----------------------------------+-------------------------| | 2 | root | localhost | test | Sleep | 73 | | Null | | 3 | root | localhost | test | Sleep | 63 | | Null | | 4 | root | localhost | Null | Query | 35 | Waiting for table metadata lock | truncate table test.t2 | | 5 | root | localhost | test | Query | 17 | Waiting for table metadata lock | select * from test.t2 | | 6 | root | localhost | test | Query | 0 | starting | show processlist | +------+--------+--------------+--------+-----------+----------+-----------------------------------|-------------------------| 上述线程列表信息显示: ID=4的会话执行truncate操作时被其他会话持有的table metadata lock阻塞。 ID=5的会话执行查询操作时同样被阻塞。 无法确定哪个会话阻塞了ID=4的会话和ID=5的会话。 此时,如果随机KILL其他会话会给线上业务带来很大风险,因此只能等待其他会话释放该MDL锁。 使用MDL锁视图 执行select * from information_schema.metadata_lock_info查看元数据锁信息,结果如下所示。 select * from information_schema.metadata_lock_info; +-------------+-------------+--------------------------+----------------------+-------------------+----------------+----------------+ | THREAD_ID | LOCK_STATUS | LOCK_MODE | LOCK_TYPE | LOCK_DURATION | TABLE_SCHEMA | TABLE_NAME | +-------------+-------------+--------------------------+----------------------+-------------------+----------------+----------------+ | 2 | GRANTED | MDL_SHARED_READ | Table metadata lock | MDL_TRANSACTION | test | t1 | | 3 | GRANTED | MDL_SHARED_READ | Table metadata lock | MDL_TRANSACTION | test | t2 | | 4 | GRANTED | MDL_INTENTION_EXCLUSIVE | Global read lock | MDL_STATEMENT | | | | 4 | GRANTED | MDL_INTENTION_EXCLUSIVE | Schema metadata lock | MDL_TRANSACTION | test | | | 4 | PENDING | MDL_EXCLUSIVE | Table metadata lock | | test | t2 | | 5 | PENDING | MDL_SHARED_READ | Table metadata lock | | test | t2 | +-------------+-------------+--------------------------+----------------------+-------------------+----------------+----------------+ 结合show processlist的结果,从元数据锁视图中可以明显看出: 上述线程信息和元数据锁视图信息显示: THREAD_ID=4的会话正在等待表t2的metadata lock。 THREAD_ID=3的会话持有表t2的metadata lock,该MDL锁为事务级别,因此只要THREAD_ID=3的会话的事务不提交,THREAD_ID=4的会话将会一直阻塞。 因此,用户只需在THREAD_ID=3的会话中执行命令commit或终止THREAD_ID=3的会话,便可以让业务继续运行。
  • MDL锁视图简介 社区版MySQL如果不打开performance_schema开关,则无法获取表元数据锁(MDL)的详细信息,但通常情况下performance_schema默认关闭,当用户遇到类似“Waiting for metadata lock”的问题而阻塞DML或DDL后,由于无法确定各个会话之间的关联关系,只能重启实例,增加了解决问题的成本,对业务产生了较大影响。 在业务场景较复杂的情况下,一旦涉及对数据库元数据的互斥操作(如DDL、LOCK TABLE等),会频繁发生操作的会话被其他会话阻塞的问题,给用户带来很大的困扰。 针对以上问题,华为云RDS for MySQL推出了MDL锁视图特性,可以查看数据库各会话持有和等待的元数据锁信息,用户可以有效进行系统诊断,优化自身业务,有效降低对业务影响。
  • 功能特点 表1 INNODB_ALTER_TABLE_PROGRESS表字段详解 字段 说明 THREAD_ID 线程ID QUERY ALTER TABLE SQL语句内容 START_TIME DDL开始时间 ELAPSED_TIME 已执行的时间(s) ALTER_TABLE_STAGE 当前执行的内容 STAGE_COMPLETED 已完成的工作单位 STAGE_ESTIMATED 预估的工作单位 一个DDL从开始到结束可能有下面几个阶段(ALTER_TABLE_STAGE字段的值): stage/innodb/alter table (read PK and internal sort):读取主键。 stage/innodb/alter table (merge sort):根据主键排序,这个过程可能较慢,因为会有临时文件生成。 stage/innodb/alter table (insert):将排序后的数据插入表中。 stage/innodb/alter table (log apply index):将DDL过程中客户执行的DML日志应用到本次创建/修改的索引。 stage/innodb/alter table (flush):数据刷盘。 stage/innodb/alter table (log apply table):将DDL过程中客户执行的DML日志应用到本次创建/修改的表。 stage/innodb/alter table (end):结束阶段。
  • 请求消息 请求参数 参数 是否必选 参数类型 取值范围 描述 region_code 否 String 最大长度:64 云服务区编码,例如:“cn-north-1”。具体请参见地区和终端节点对应云服务的“区域”列的值。 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 order_id 否 String 最大长度:64 订单ID。 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 product_id 否 String 最大长度:64 产品ID,即资源包ID。 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 product_name 否 String 最大长度:256 产品名称,即资源包名称。 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 enterprise_project_id 否 String 最大长度:64 企业项目ID。 如需查询企业项目下的资源列表,必须携带该参数; 若参数不携带或携带值为空串或携带值为null时,查询除企业项目外的其他所有资源列表。 status 否 Integer [0-4] 状态: 0:未生效 1:生效中 2:已用完 3:已失效 4:已退订 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 offset 否 Integer [0-9999] 页码,如果要查询第一页,请输入1,后面依次类推。 若此参数输入0,默认查询第一页。 此参数不携带或携带值为空串或携带值为null时,默认查询第一页;不支持携带值为空。 limit 否 Integer [1-1000] 每次查询的记录数,默认为10。 此参数不携带或携带值为空串或携带值为null时,取值为10;不支持携带值为空。 请求示例 POST https://bss.myhuaweicloud.com/v2/payments/free-resources/query HTTP/1.1 Content-Type: application/json X-Auth-Token:MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ { "region_code": "cn-north-7", "order_id": "CS21043011259RWXXTA", "product_id": "90301-296014-0--0", "product_name": "华为云WeLink", "enterprise_project_id": null, "status": 1, "offset": 0, "limit": 10 }
  • 请求消息 请求参数 参数 是否必选 参数类型 取值范围 描述 region_code 否 String 最大长度:64 云服务区编码,例如:“cn-north-1”。具体请参见地区和终端节点对应云服务的“区域”列的值。 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 order_id 否 String 最大长度:64 订单ID。 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 product_id 否 String 最大长度:64 产品ID,即资源包ID。 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 product_name 否 String 最大长度:256 产品名称,即资源包名称。 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 enterprise_project_id 否 String 最大长度:64 企业项目ID。 如需查询企业项目下的资源列表,必须携带该参数; 若参数不携带或携带值为空串或携带值为null时,查询除企业项目外的其他所有资源列表。 status 否 Integer [0-4] 状态: 0:未生效 1:生效中 2:已用完 3:已失效 4:已退订 此参数不携带或携带值为空串或携带值为null时,不作为筛选条件。 offset 否 Integer [0-9999] 页码,如果要查询第一页,请输入1,后面依次类推。 若此参数输入0,默认查询第一页。 此参数不携带或携带值为空串或携带值为null时,默认查询第一页;不支持携带值为空。 limit 否 Integer [1-1000] 每次查询的记录数,默认为10。 此参数不携带或携带值为空串或携带值为null时,取值为10;不支持携带值为空。 请求示例 POST https://bss.myhuaweicloud.com/v2/payments/free-resources/query HTTP/1.1 Content-Type: application/json X-Auth-Token:MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ { "region_code": "cn-north-7", "order_id": "CS21043011259RWXXTA", "product_id": "90301-296014-0--0", "product_name": "华为云WeLink", "enterprise_project_id": null, "status": 1, "offset": 0, "limit": 10 }
  • 操作步骤 登录对象存储服务控制台。 在左侧导航栏中,选择“桶列表”。 在页面右上角,单击“创建桶”。 创建的桶用来存储媒体处理服务的媒体文件。 选择桶所属区域,输入桶名称,根据业务需要配置存储类别、桶策略等参数。 单击“立即创建”。 如果输入输出文件存放在同一个桶中,创建一次即可。否则创建两次,分别作为输入、输出桶。 表1 存储类别 存储类别 适用场景 标准存储 适用于有大量热点文件或小文件,且需要频繁访问(平均一个月多次)并快速获取数据的业务场景。 低频访问存储 适用于不频繁访问(平均一年少于12次),但需要快速获取数据的业务场景。 归档存储 适用于很少访问(平均一年一次),且对数据获取速率要求不高的业务场景。 表2 桶策略 桶策略 说明 私有 桶的所有者拥有完全控制权限,其他用户在未经授权的情况下均无访问权限。 公共读 任何用户都可以对桶内对象进行读操作,仅桶所有者可以进行写操作。 公共读写 任何用户都可以对桶内对象进行读/写/删除操作。 区域选择需要与使用的媒体处理服务的区域一致,若使用“华北-北京四”的媒体处理服务,则需要创建“华北-北京四”的桶。 如果输入文件和输出文件分别以不同的桶进行存储时,结合媒体处理服务的业务特性,推荐存储输入文件的桶设置为“低频访问存储”,存储输出文件的桶设置为“标准存储”。 配置输入文件夹。 单击步骤3中输入桶的桶名称,跳转至该桶的详情页。 界面自动跳转至“对象”页面的“对象”页签。 单击“新建文件夹”,配置媒体处理服务的输入文件夹。 图1 新建文件夹 配置输出文件夹。与步骤5类似。 单击步骤3中输出桶的桶名称,跳转至该桶的详情页。 在“对象”页面,单击“新建文件夹”,配置媒体处理服务输出文件夹。 上传音视频文件。 进入输入桶页面,单击输入文件夹的名称,进入输入文件夹路径。 单击“上传对象”,选择需要上传的视频文件。 选择上传文件的存储类别和加密方式,单击“上传”。
  • 消息通知json格式说明 订阅事件的json消息字段如表1所示。 表1 json消息体字段说明 参数 类型 说明 event_type String 事件类型。 当前支持的取值如下: TranscodeComplete:转码完成 TranscodeStart:转码启动,排完队,正式开始转码时触发此事件 ThumbnailComplete:截图完成 RemuxComplete:转封装完成 AnimatedGraphicsComplete:生成动图完成 ParseComplete:属性解析完成 transcode_info TranscodeInfo 转码信息,仅当是转码完成事件或转码启动事件才有该字段。 thumbnail_info ThumbnailInfo 截图信息,仅当是截图事件才有该字段。 animated_graphics_info AnimatedGraphicsInfo 动图信息,仅当是生成动图事件才有该字段。 remux_info RemuxInfo 转封装信息,仅当是转封装事件才有该字段。 表2 TranscodeInfo参数说明 参数 类型 说明 task_id string 任务ID。 status tring 事件状态。 TRANSCODING:转码启动 SUCCEED:转码成功 FAILED:转码失败 create_time string 任务创建时间。 start_time string 启动时间,指任务排完对正式开始执行的时间。 end_time string 任务结束时间。 intput FileAddress 转码文件输入地址。 output FileAddress 转码文件输出地址。 description string 任务描述。 media_detail MediaDetail 转码详细信息,失败时没有该字段。 表3 MediaDetail参数说明 参数 类型 说明 features String[] 任务名称。 origin_para OriginPara 原始片源信息。 output_video_paras OutputVideoPara[] 多路输出片源信息。 output_watermark_para OutputWatermarkPara 输出水印信息。 表4 OriginPara参数说明 参数 类型 说明 duration Integer 片源时长。 file_format String 文件格式。 video Video 原始片源视频信息。 audio Audio 原始片源音频信息。 表5 Video参数说明 参数 类型 说明 width Integer 视频宽度。 height Integer 视频高度。 bitrate Integer 视频码率。 frame_rate Integer 视频帧率。 codec string 视频编码格式。 表6 Audio参数说明 参数 类型 说明 codec string 音频编码格式。 sample Integer 音频采样率。 channels Integer 音频信道。 bitrate Integer 音频码率。 表7 OutputVideoPara参数说明 参数 类型 说明 template_id Integer 输出视频对应的模板ID。 size Integer 视频大小。 pack string 视频封装格式。 video Video 输出片源视频信息。 audio Audio 输出片源音频信息。 file_name string 输出片源文件名。 conver_duration double 折算时长。 error Error 错误信息。 表8 OutputWatermarkPara参数说明 参数 类型 说明 time_duration Int32 水印时长。 表9 AnimatedGraphicsInfo参数说明 参数 类型 说明 task_id String 任务ID status String 事件状态。 SUCCEED:生成动图成功 FAILED:生成动图失败 create_time String 任务创建时间。 start_time String 任务启动时间,指任务排完对正式开始执行的时间。 end_time String 任务结束时间。 description String 任务描述,如当任务异常时,此字段为异常的具体信息。 input FileAddress 源文件信息。 output FileAddress 输出文件信息。 output_param AnimatedGraphicsOutputParam 动图输出参数。 表10 FileAddress参数说明 参数名 类型 说明 location String 对象存储桶所在区域。 bucket String 对象存储桶名。 object String 文件的存储路径。 当用于“input”时,需要指定到具体对象。 当用于“output”时,只需指定到转码结果期望存放的路径。 file_name String 文件名,仅用于“output”输出。 当指定了此参数时,输出的对象名为“object/file_name”; 当不指定此参数时,输出的对象名为“object/xxx”,其中xxx由系统指定。 表11 AnimatedGraphicsOutputParam参数说明 名称 类型 说明 format String 动图格式。目前仅支持输出GIF文件。 width Integer 输出动图的宽。 height Integer 输出动图的高。 start Integer 起始时间。 单位:毫秒。 end Integer 结束时间。 frame_rate Integer 动图帧率。 表12 ThumbnailInfo参数说明 参数 类型 说明 task_id string 任务Id。 status tring 事件状态。 SUCCEED:截图成功。 FAILED:截图失败。 create_time string 开始时间。 start_time String 启动时间,指任务排完后正式开始执行的时间。 end_time string 结束时间。 intput FileAddress 源文件地址。 output FileAddress 截图文件输出地址。 description string 任务描述。 output_file_name String 输出文件名。 thumbnail_info PicInfo[] 截图详细信息,失败时没有该字段。 表13 PicInfo参数说明 参数 类型 说明 pic_name String 截图文件名。 表14 RemuxInfo参数说明 参数 类型 说明 task_id String 任务ID。 status String 事件状态。 SUCCEED:转封装成功。 FAILED:转封装失败。 create_time String 任务创建时间。 start_time String 任务启动时间,指任务排完对正式开始执行的时间。 end_time String 任务结束时间。 description String 任务描述,如当任务异常时,此字段为异常的具体信息。 input FileAddress 源文件信息。 output FileAddress 输出文件信息。 output_param RemuxOutputParam 转封装输出参数。 表15 RemuxOutputParam参数说明 参数名 类型 说明 format String 输出格式。 取值如下: HLS MP4 segment_duration Integer 分片时长,仅当format为“HLS”时有效。 取值范围:[2,10]。 默认值: 5。 单位:秒。 父主题: 附录
  • 修订记录 发布日期 修订记录 2022-03-30 第三次正式发布。 本次更新说明如下: 新增“搬迁音视频文件至华为云VOD”章节。 2023-11-30 第二次正式发布。 本次更新说明如下: 新增“H.264和H.265高清低码帮助视频网站打造极致体验”章节 新增“MPC的视频截图能力帮助视频网站客户快速构建媒体处理平台”章节 新增“MPC的视频转封装能力帮助在线教育客户实现多终端播放视频”章节 2022-11-30 第一次正式发布。
  • 在费用中心续费 登录管理控制台。 单击“控制台”页面上方“费用”,在下拉菜单中选择“续费管理”。进入“续费管理”页面。 自定义查询条件。 可在“手动续费项”“自动续费项”“到期转按需项”“到期不续费项”页签查询全部待续费资源,对资源进行手动续费的操作。 图2 续费管理 所有需手动续费的资源都可归置到“手动续费项”页签,具体操作请参见如何恢复为手动续费。 手动续费资源。 单个续费:在资源页面找到需要续费的资源,单击操作列的“续费”。 图3 单个续费 批量续费:在资源页面勾选需要续费的资源,单击列表左上角的“批量续费”。 图4 批量续费 选择云手机的续费时长,判断是否勾选“统一到期日”,将云手机到期时间统一到各个月的某一天。确认配置费用后单击“去支付”。 图5 续费确认 进入支付页面,选择支付方式,确认付款,支付订单后即可完成续费。
  • 计费模式概述 云手机服务提供包年/包月、按需计费两种计费模式,以满足不同场景下的用户需求。 包年/包月:一种预付费模式,即先付费再使用,按照订单的购买周期进行结算。一般适用于设备需求量长期稳定的成熟业务。 按需计费:一种后付费模式,即先使用再付费,按照云手机的实际使用时长计费,秒级计费,按小时结算。按需计费模式允许您根据实际业务需求灵活地调整资源使用,无需提前预置资源,从而降低预置过多或不足的风险。一般适用于设备需求量瞬间大幅波动的场景。 表1列出了计费模式的信息两种计费模式的区别。 表1 计费模式 计费模式 包年/包月 按需计费 付费方式 预付费,按照订单的购买周期结算。 后付费,按照云手机服务实际使用时长计费。 计费周期 按订单的购买周期计费。 秒级计费,按小时结算。 适用计费项 实例规格、实例数量、购买时长。 实例规格、实例数量、使用时长。 关机计费 按订单的购买周期计费。云手机实例关机对包年/包月计费无影响。 停止计费需手动删除实例。云手机实例关机后,正常计费。 变更计费模式 不支持变更为按需计费模式。 不支持变更为包年/包月计费模式。 变更规格 不支持变更实例规格。 不支持变更实例规格。 适用场景 适用于可预估资源使用周期的场景,价格比按需计费模式更优惠。对于长期使用者,推荐该方式。 适用于计算资源需求波动的场景,可以随时开通,随时删除。 父主题: 计费模式
  • 续费相关的功能 包年/包月计费模式云手机续费相关的功能如表1所示。 表1 续费相关的功能 功能 说明 手动续费 包年/包月计费模式云手机从购买到被自动删除之前,您可以随时在KooPhone控制台为云手机续费,以延长云手机的使用时间。 在一台包年/包月计费模式云手机生命周期的不同阶段,您可以根据需要选择一种方式进行续费,具体如图1所示。 图1 云手机生命周期 云手机从购买到到期前,处于正常运行阶段,资源状态为“运行中”。 到期后,资源状态变为“已过期”。 到期未续费时,云手机首先会进入宽限期,宽限期到期后仍未续费,资源状态变为“已冻结”。 超过宽限期仍未续费将进入保留期,如果保留期内仍未续费,资源将被自动删除。 华为云根据客户等级定义了不同用户的宽限期和保留期时长。
  • 计费示例 假设您在2023/02/08 15:50:04购买了一台包年/包月云手机(规格:专业版 2核 4GB内存 16GB存储)。购买时长为一个月,并在到期前手动续费1个月,则: 第一个计费周期为:2023/02/08 15:50:04 ~ 2023/03/08 23:59:59 第二个计费周期为:2023/03/09 00:00:00 ~ 2023/04/08 23:59:59 您需要为每个计费周期预先付费,总费用=实例规格单价 * 购买时长 * 购买数量。
  • 到期后影响 图1描述了包年/包月计费模式KooPhone资源各个阶段的状态。购买后,在计费周期内资源正常运行,此阶段为有效期;资源到期而未续费时,将陆续进入宽限期和保留期。 图1 包年/包月计费模式KooPhone资源生命周期 到期预警 包年/包月计费模式KooPhone资源在到期前第7天内,系统将向用户推送到期预警消息。预警消息将通过邮件、短信和站内信的方式通知到华为云账号的创建者。 到期后影响 当您的包年/包月计费模式KooPhone资源到期未续费,首先会进入宽限期,资源状态变为“已过期”。宽限期内您可以正常访问云手机。 如果您在宽限期内仍未续费包年/包月计费模式KooPhone资源,那么就会进入保留期,资源状态变为“已冻结”,您将无法对处于保留期的包年/包月资源执行任何操作。 保留期满仍未续费或充值,那么存储在KooPhone云手机实例中的数据将被删除,数据无法恢复,对应的云手机实例将被释放。 华为云根据客户等级定义了不同用户的宽限期和保留期时长。 关于续费的详细介绍请参见续费概述。
  • 适用场景 包年/包月计费模式需要用户预先支付一定时长的费用,适用于长期、稳定的业务需求。以下是一些适用于包年/包月计费模式的业务场景: 稳定业务需求:对于长期运行且资源需求相对稳定的业务,如企业客服远程协同、日常办公等,包年/包月计费模式能提供较高的成本效益。 长期项目:对于周期较长的项目,如政务项目、云游戏策划等,包年/包月计费模式可以确保在整个项目周期内资源的稳定使用。 业务高峰预测:如果能预测到业务高峰期,如促销季、节假日等,可提前购买包年/包月资源以应对高峰期的需求,避免资源紧张。 数据安全要求高:对于对数据安全性要求较高的业务,包年/包月计费模式可确保资源的持续使用,降低因资源欠费而导致的数据安全风险。
  • 计费说明 云手机服务的计费项由云手机实例规格、实例数量、购买时长或使用时长进行计费。具体内容如表1所示。 表1 云手机服务计费项 计费项 计费项说明 适用的计费模式 计费费用 实例规格 计费因子:vCPU和内存,不同规格的实例类型提供不同的计算和存储能力。 包年/包月、按需计费 相同实例规格企业版比专业版价格更高。 实例数量 购买云手机实例的数量。 包年/包月、按需计费 总费用随着实例数量线性增加。 购买时长 包周期模式下购买云手机实例的时长。 包年/包月 总费用随着购买时长的增加线性增加。 如:包2个月的费用是包1个月的2倍。
  • 计费示例 假设您在2023/04/18 9:59:30购买了一台按需计费的云手机(规格:专业版 2核 4GB内存 16GB存储),然后在2023/04/18 10:45:46将其删除,则: 第一个计费周期为9:00:00 ~ 10:00:00,在9:59:30 ~ 10:00:00间产生费用,该计费周期内的计费时长为30秒。 第二个计费周期为10:00:00 ~ 11:00:00,在10:00:00 ~ 10:45:46间产生费用,该计费周期内的计费时长为2746秒。 在购买云手机时的“配置费用”中标出了资源的每小时价格,如果您需要核对费用,请将每小时价格除以3600,得到每秒价格。总费用=实例每秒价格 * 使用时长 * 购买数量。
  • ER自定义策略样例 示例1:授权用户创建企业路由器、删除企业路由器 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "er:instances:create", "er:instances:delete" ] } ] } 示例2:拒绝用户删除企业路由器 拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先原则。 如果您给用户授予ER FullAccess的系统策略,但不希望用户拥有ER FullAccess中定义的删除企业路由器的权限,您可以创建一条拒绝删除企业路由器的自定义策略,然后同时将ER FullAccess和拒绝策略授予用户,根据Deny优先原则,则用户可以对ER执行除了删除企业路由器外的所有操作。拒绝策略示例如下: { "Version": "1.1", "Statement": [ { "Effect": "Deny", "Action": [ "er:instances:delete" ] } ] } 示例3:添加多个授权项策略 一个自定义策略中可以包含多个授权项,且除了可以包含本服务的授权项外,还可以包含其他服务的授权项,可以包含的其他服务必须跟本服务同属性,即都是项目级服务或都是全局级服务。多个授权语句策略描述如下: { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "er:*:get*", "er:*:list*", "vpc:vpcs:get", "vpc:vpcs:list", "vpc:subnets:get", "vpc:subnets:list", "dcaas:vgw:get", "dcaas:vgw:list", "cc:networkInstances:get", "cc:networkInstances:list", "cc:cloudConnections:get", "cc:cloudConnections:list" ] } ] }
  • 响应示例 状态码: 200 返回信息。 { "status" : "200", "message" : "success", "data" : [ { "id" : "1865d1ac-fa0d-468d-a18e-e05b73705f57", "callback_url" : "https://www.example.com/v1/send-resolve-status", "url_type" : 0 } ] }
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 status String 请求状态,固定200。 message String 状态描述。 data Array of Callback objects 回调地址列表。 表3 Callback 参数 参数类型 描述 callback_url String 回调地址。 id String 注册回调的唯一标识ID。 url_type Integer 回调类型。 0:智能信息单条发送回调 1:模板状态回调 2:智能信息批量发送回调 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 结果状态码。 error_msg String 结果详情。 error_message Object 结果详情。 说明: 该字段在以后可能会废弃,建议使用error_msg字段对接。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 结果状态码。 error_msg String 结果详情。 error_message Object 结果详情。 说明: 该字段在以后可能会废弃,建议使用error_msg字段对接。
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 status String 请求状态,固定200。 message String 状态描述。 data VmsCallBackList object 响应数据。 表3 VmsCallBackList 参数 参数类型 描述 callbacks Array of VmsCallBack objects 回执接口列表。 表4 VmsCallBack 参数 参数类型 描述 url_type Integer 回调类型。 0:发送状态回执 1:上行消息回执 callback_url String 回调地址。 remark String 备注。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 结果状态码。 error_msg String 结果详情。 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 结果状态码。 error_msg String 结果详情。
  • 响应示例 状态码: 200 返回信息。 { "status" : "200", "message" : "success", "data" : { "callbacks" : [ { "url_type" : 1, "callback_url" : " https://www.example.com/vms/reply-callback", "remark" : "上行消息回执" }, { "url_type" : 0, "callback_url" : " https://www.example.com/vms/send-callback", "remark" : "发送状态回执" } ] } }
  • 响应示例 状态码: 200 返回信息。 { "status" : "200", "message" : "success", "data" : { "id" : "18d1bcad-4d13-4db1-bcdd-32565457cccc", "callback_url" : "https://www.example.com/v1/send-resolve-status" } }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 data Callback object 注册详情。 status String 请求状态,固定200。 message String 状态描述。 表4 Callback 参数 参数类型 描述 callback_url String 回调地址。 id String 注册回调的唯一标识ID。 url_type Integer 回调类型。 0:智能信息单条发送回调 1:模板状态回调 2:智能信息批量发送回调 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 结果状态码。 error_msg String 结果详情。 error_message Object 结果详情。 说明: 该字段在以后可能会废弃,建议使用error_msg字段对接。 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 结果状态码。 error_msg String 结果详情。 error_message Object 结果详情。 说明: 该字段在以后可能会废弃,建议使用error_msg字段对接。
  • 请求示例 注册回执-智能信息单条发送回执 https://koomessage.myhuaweicloud.cn/v1/aim/callbacks { "callback_url" : "https://www.example.com/v1/send-resolve-status", "url_type" : 0 } 注册回执-智能信息模板状态回执 https://koomessage.myhuaweicloud.cn/v1/aim/callbacks { "callback_url" : "https://www.example.com/v1/template-status", "url_type" : 1 } 注册回执-智能信息批量发送回执 https://koomessage.myhuaweicloud.cn/v1/aim/callbacks { "callback_url" : "https://www.example.com/v1/send-resolve-status", "url_type" : 2 }
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:0 最大长度:2000 Content-Type 是 String 请求体参数类型,该字段必须设置为:application/json。 表2 请求Body参数 参数 是否必选 参数类型 描述 callback_url 是 String 回调地址。 说明: 必须http或https开头,建议使用https 支持域名或公网IP回调地址,不支持私网IP回调地址 最小长度:1 最大长度:1000 url_type 否 Integer 回调类型。 0:智能信息单条发送回调 1:模板状态回调 2:智能信息批量发送回调 缺省值:0
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 status String 请求状态,固定200。 message String 状态描述。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 结果状态码。 error_msg String 结果详情。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 结果状态码。 error_msg String 结果详情。
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:0 最大长度:2000 Content-Type 是 String 请求体参数类型,该字段必须设置为:application/json。 表2 请求Body参数 参数 是否必选 参数类型 描述 url_type 是 Integer 回调类型。 0:发送状态回执 1:上行消息回执 callback_url 是 String 回调地址,必须是http或https开头的字符串,不能为空。 说明: 建议使用https。 最小长度:1 最大长度:1000 remark 否 String 备注。 最小长度:0 最大长度:1000
  • 请求示例 智能信息基础版模板状态回执。模板ID为"800000001",模板截止有效日期为"20200131",模板审核状态正常可用;运营商审核正常可用为"cucc",模板已过期为"cmcc",审核不通过为"ctcc"。 https:// koomessage.myhuaweicloud.cn/v1/aim-basic/template-status { "tpl_id" : "800000001", "tpl_size" : 102311, "valid_time" : 20200131, "audit_state" : 0, "restags" : "三网一般", "audit_desc" : "正常可用", "status_detail" : [ { "carrier" : "cmcc", "status" : 5, "desc" : "正常可用" }, { "carrier" : "cucc", "status" : 0, "desc" : "正常可用" }, { "carrier" : "ctcc", "status" : 2, "desc" : "审核不通过,携带敏感词汇" } ], "preview_url" : "http://example.com/000001", "tpl_name" : "模板名称", "title" : "模板主题", "tpl_sign" : "华为云消息", "create_time" : "2022-01-01T00:00:00Z", "var_info" : [ { "name" : "#p_1#", "type" : "txt" }, { "name" : "#p_2#", "type" : "txt" } ] }
  • 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述 tpl_id 否 String 智能信息基础版模板ID。 tpl_size 否 String 智能信息基础版模板的大小。 说明: 单位:字节,audit_status非0时tpl_size为0。 valid_time 否 String 模板截止有效日期,格式:yyyy-MM-ddTHH:mm:ssZ,0:表示永久有效。样例:2020-01-31T23:59:59Z。 audit_state 否 String 智能信息基础版模板审核状态。 0:正常可用 1:审核中 2:审核不通过 3:模板已禁用 4:模板不存在 5:模板已过期 audit_desc 否 String 智能信息基础版模板状态的描述,若状态是审核不通过或被禁用,描述表示的是不通过或禁用的原因。 说明: 长度不超过 1024 字。 status_detail 否 Array of StatusDetail objects 运营商的模板状态详情。 preview_url 否 String 智能信息基础版模板预览地址。 tpl_name 否 String 智能信息基础版模板名称。 title 否 String 智能信息基础版模板主题。 tpl_sign 否 String 智能信息基础版模板签名。 create_time 否 String 智能信息基础版模板创建时间,格式:yyyy-MM-ddTHH:mm:ssZ。 var_info 否 Array of VarInfo objects 智能信息基础版模板动参信息,静态模板没有动参,该字段填空。 restags 否 String 资源分配标签,取值如下: 三网一般 三网抗诉 单网一般 单网抗诉 表2 StatusDetail 参数 是否必选 参数类型 描述 carrier 否 String 运营商类型。 cmcc:中国移动 cucc:中国联通 ctcc:中国电信 oversea:港澳台及国外 unknown:未知 status 否 String 模板状态。 0:正常可用 1:审核中 2:审核不通过 3:模板已禁用 4:模板不存在 5:模板已过期 desc 否 String 对模板状态的描述。 说明: 若状态是审核不通过或被禁用,描述表示的是不通过或禁用的原因。 表3 VarInfo 参数 是否必选 参数类型 描述 name 否 String 动参变量占位符名称。 说明: 格式:#p_N#(N表示第几个参数,与模板文件占位名称保持一致),如:#p_1#。 type 否 String 动参变量类型。类型为文字:txt。
  • 概述 音视频托管功能即将下线,功能下线后,将不再对新用户开放音视频托管功能。 现网还在用增量托管功能的用户,功能下线后,仍可正常使用。但是建议用户将数据从OBS桶迁移至VOD服务进行存储,不要依赖托管功能,详情请参见【下线公告】华为云视频点播VOD服务音视频托管功能下线。 若您已使用对象存储服务(OBS)存储了大量的音视频文件,但同时又想使用视频点播服务对这些音视频文件进行管理,为了减少重复上传媒体文件至点播系统耗费的存储空间以及时间,华为云视频点播服务提供了音视频托管的功能,包括存量音视频托管以及增量音视频托管。 当您将OBS桶授权给点播服务后,点播服务才可以读写桶中音视频文件,从而进行管理。 托管后,若您直接删除了桶内文件,则点播服务是无法感知对应媒资删除的,会导致该媒资在点播服务无法使用,如转码、播放等。若您在点播服务删除了媒资文件,不影响租户OBS桶内原文件。 针对OBS托管场景,建议使用标准OBS接口及SDK,不支持使用obsfs挂载文件系统的方式。 增量托管:指在开启配置后,OBS桶中一旦有新增媒资文件,点播就会自动去OBS桶中同步。 存量托管:指将已经存储在OBS桶中的媒资文件同步至点播服务。 首次使用控制台进行音视频托管时,建议您先创建存量托管任务,将需要的音视频文件同步至点播服务进行管理,然后开启增量托管配置,这样您需要的OBS桶中的新旧音视频文件,都会被托管至点播服务从而方便您管理。 您也可以参考OBS音视频托管的视频指导学习如何操作。 父主题: (即将下线)音视频托管
共100000条