文档首页/ 测试计划 CodeArts TestPlan/ API参考/ API/ 拨测仪表盘信息管理/ 仪表盘根据测试服务ID获取MsgInfo详细信息
更新时间:2025-07-24 GMT+08:00
分享

仪表盘根据测试服务ID获取MsgInfo详细信息

功能介绍

成功返回MsgInfo的详细信息列表,返回值为Model的List

调用方法

请参见如何调用API

URI

POST /v2/projects/{service_id}/dashboards/alarm/msgs

表1 路径参数

参数

是否必选

参数类型

描述

service_id

String

参数解释:

项目的32位uuid,项目唯一标识,通过获取CodeArts项目ID接口查询项目列表获取。

约束限制

不涉及

取值范围

32个字符组成的字符串

默认取值

不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释

用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)

约束限制

不涉及

取值范围

字符串长度不少于1,不超过100000

默认取值

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

alert_types

Array of strings

告警类型

case_id

String

用例id

case_name

String

用例名

end_time

Long

结束时间

page_num

Integer

页码

page_size

Integer

分页大小

send_alert_type

String

发送类型

start_time

Long

开始时间

task_id

String

任务id

task_name

String

任务名

响应参数

状态码:200

表4 响应Body参数

参数

参数类型

描述

list

Array of MsgInfoVo objects

返回结果

page_num

Integer

页码

page_size

Integer

分页大小

total_page

Integer

总页数

total_size

Long

总条数

表5 MsgInfoVo

参数

参数类型

描述

alert_channels

String

告警渠道

alert_groups

String

告警分组

alert_level

Integer

告警级别

alert_num

Integer

总告警次数

alert_time

Integer

告警时间

alert_type

String

告警类型

content

String

告警内容

id

String

MsgInfo的id

link

String

链接

location_names

String

执行机区域

send_alert_type

String

发送告警类型

sub_task_case_id

String

子任务用例id

sub_task_case_start_time

String

子任务用例开始时间

sub_task_id

String

子任务id

sub_task_start_time

String

子任务开始时间

task_id

String

任务id

task_name

String

任务名

test_case_id

String

用例id

test_case_name

String

用例名称

test_suite_type

Integer

测试套类型

状态码:201

Created

状态码:401

表6 响应Body参数

参数

参数类型

描述

error_code

String

错误编码

error_msg

String

错误原因

状态码:403

表7 响应Body参数

参数

参数类型

描述

error_code

String

错误编码

error_msg

String

错误原因

状态码:404

表8 响应Body参数

参数

参数类型

描述

error_code

String

错误编码

error_msg

String

错误原因

请求示例

post https://{endpoint}/v1/projects/1234567abc/dashboards/alarm/msgs

{
  "alert_types" : [ "7" ],
  "page_num" : 1,
  "page_size" : 5,
  "start_time" : 1745824494068,
  "end_time" : 1745828094068
}

响应示例

状态码:200

OK

{
  "list" : [ {
    "id" : "d0c909aeee594422bb4f0f74bd786557",
    "task_id" : "taskConfigOperationNoticeTaskId",
    "alert_channels" : "EMAIL",
    "alert_type" : 7,
    "send_alert_type" : "OPERATION_NOTICE",
    "test_suite_type" : 1,
    "alert_time" : 1745827846000,
    "location_names" : "cn-north-7",
    "content" : "[操作通知]服务名称:xxx 操作内容:用户xxx在2025-xx-xx xx:xx:xx GMT+08:00修改了任务配置,任务最长执行时间由长期运行更改为长期运行",
    "link" : "https://{hosturl}/echotest/project/1234567890/echotest/configurations/clearTask",
    "alert_num" : 1,
    "alert_level" : 0
  } ],
  "page_num" : 1,
  "page_size" : 5,
  "total_page" : 1,
  "total_size" : 2
}

状态码:401

Unauthorized

{
  "error_code" : "DEV.00000003",
  "error_msg" : "认证信息过期"
}

SDK代码示例

SDK代码示例如下。

Java

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.cloudtest.v1.region.CloudtestRegion;
import com.huaweicloud.sdk.cloudtest.v1.*;
import com.huaweicloud.sdk.cloudtest.v1.model.*;

import java.util.List;
import java.util.ArrayList;

public class ListMsgInfosUsingSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new BasicCredentials()
                .withAk(ak)
                .withSk(sk);

        CloudtestClient client = CloudtestClient.newBuilder()
                .withCredential(auth)
                .withRegion(CloudtestRegion.valueOf("<YOUR REGION>"))
                .build();
        ListMsgInfosUsingRequest request = new ListMsgInfosUsingRequest();
        request.withServiceId("{service_id}");
        MsgInfoQuery body = new MsgInfoQuery();
        List<MsgInfoQuery.AlertTypesEnum> listbodyAlertTypes = new ArrayList<>();
        listbodyAlertTypes.add(MsgInfoQuery.AlertTypesEnum.fromValue("7"));
        body.withStartTime(1745824494068L);
        body.withPageSize(5);
        body.withPageNum(1);
        body.withEndTime(1745828094068L);
        body.withAlertTypes(listbodyAlertTypes);
        request.withBody(body);
        try {
            ListMsgInfosUsingResponse response = client.listMsgInfosUsing(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}

Python

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcloudtest.v1.region.cloudtest_region import CloudtestRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcloudtest.v1 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]

    credentials = BasicCredentials(ak, sk)

    client = CloudtestClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(CloudtestRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListMsgInfosUsingRequest()
        request.service_id = "{service_id}"
        listAlertTypesbody = [
            "7"
        ]
        request.body = MsgInfoQuery(
            start_time=1745824494068,
            page_size=5,
            page_num=1,
            end_time=1745828094068,
            alert_types=listAlertTypesbody
        )
        response = client.list_msg_infos_using(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

Go

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    cloudtest "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cloudtest/v1"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cloudtest/v1/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cloudtest/v1/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        Build()

    client := cloudtest.NewCloudtestClient(
        cloudtest.CloudtestClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListMsgInfosUsingRequest{}
	request.ServiceId = "{service_id}"
	var listAlertTypesbody = []model.MsgInfoQueryAlertTypes{
        model.GetMsgInfoQueryAlertTypesEnum().E_7,
    }
	startTimeMsgInfoQuery:= int64(1745824494068)
	pageSizeMsgInfoQuery:= int32(5)
	pageNumMsgInfoQuery:= int32(1)
	endTimeMsgInfoQuery:= int64(1745828094068)
	request.Body = &model.MsgInfoQuery{
		StartTime: &startTimeMsgInfoQuery,
		PageSize: &pageSizeMsgInfoQuery,
		PageNum: &pageNumMsgInfoQuery,
		EndTime: &endTimeMsgInfoQuery,
		AlertTypes: &listAlertTypesbody,
	}
	response, err := client.ListMsgInfosUsing(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

OK

201

Created

401

Unauthorized

403

Forbidden

404

Not Found

错误码

请参见错误码

相关文档