summaryrefslogtreecommitdiff
path: root/data/en_us/cms/2019-01-01/api-docs.php
diff options
context:
space:
mode:
authorZhineng Li <[email protected]>2026-02-13 10:54:11 +0800
committerZhineng Li <[email protected]>2026-02-13 10:54:11 +0800
commit7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch)
tree0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/en_us/cms/2019-01-01/api-docs.php
downloadacs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.tar.gz
acs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.zip
Diffstat (limited to 'data/en_us/cms/2019-01-01/api-docs.php')
-rw-r--r--data/en_us/cms/2019-01-01/api-docs.php40150
1 files changed, 40150 insertions, 0 deletions
diff --git a/data/en_us/cms/2019-01-01/api-docs.php b/data/en_us/cms/2019-01-01/api-docs.php
new file mode 100644
index 0000000..9ec4475
--- /dev/null
+++ b/data/en_us/cms/2019-01-01/api-docs.php
@@ -0,0 +1,40150 @@
+<?php return [
+ 'version' => '1.0',
+ 'info' => [
+ 'style' => 'RPC',
+ 'product' => 'Cms',
+ 'version' => '2019-01-01',
+ ],
+ 'directories' => [
+ [
+ 'id' => 184857,
+ 'title' => 'Application groups',
+ 'type' => 'directory',
+ 'children' => [
+ [
+ 'id' => 59483,
+ 'title' => 'Manage application groups',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateMonitorGroup',
+ 'ModifyMonitorGroup',
+ 'DeleteMonitorGroup',
+ 'DescribeMonitorGroups',
+ 'CreateMonitorGroupInstances',
+ 'ModifyMonitorGroupInstances',
+ 'DescribeMonitorGroupInstances',
+ 'DescribeMonitorGroupDynamicRules',
+ 'DescribeMonitorGroupInstanceAttribute',
+ 'DeleteMonitorGroupDynamicRule',
+ 'DeleteMonitorGroupInstances',
+ 'DescribeMonitorGroupCategories',
+ 'PutMonitorGroupDynamicRule',
+ 'CreateGroupMonitoringAgentProcess',
+ 'ModifyGroupMonitoringAgentProcess',
+ 'DeleteGroupMonitoringAgentProcess',
+ 'DescribeGroupMonitoringAgentProcess',
+ 'CreateMonitorGroupNotifyPolicy',
+ 'DeleteMonitorGroupNotifyPolicy',
+ 'DescribeMonitorGroupNotifyPolicyList',
+ ],
+ ],
+ [
+ 'id' => 59517,
+ 'title' => 'Label',
+ 'type' => 'directory',
+ 'children' => [
+ 'AddTags',
+ 'CreateDynamicTagGroup',
+ 'DeleteDynamicTagGroup',
+ 'DescribeTagValueList',
+ 'DescribeTagKeyList',
+ 'DescribeProductResourceTagKeyList',
+ 'DescribeDynamicTagRuleList',
+ 'RemoveTags',
+ ],
+ ],
+ [
+ 'id' => 59436,
+ 'title' => 'Availability monitoring',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateHostAvailability',
+ 'DeleteHostAvailability',
+ 'EnableHostAvailability',
+ 'DisableHostAvailability',
+ 'ModifyHostAvailability',
+ 'DescribeUnhealthyHostAvailability',
+ 'DescribeHostAvailabilityList',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'id' => 59416,
+ 'title' => 'Host monitoring',
+ 'type' => 'directory',
+ 'children' => [
+ 'InstallMonitoringAgent',
+ 'DescribeMonitoringAgentHosts',
+ 'DescribeMonitoringAgentAccessKey',
+ 'DescribeMonitoringAgentConfig',
+ 'DescribeMonitoringAgentStatuses',
+ 'ModifyHostInfo',
+ 'DescribeMonitoringConfig',
+ 'PutMonitoringConfig',
+ 'UninstallMonitoringAgent',
+ 'CreateMonitoringAgentProcess',
+ 'CreateMonitorAgentProcess',
+ 'DescribeMonitoringAgentProcesses',
+ 'DeleteMonitoringAgentProcess',
+ ],
+ ],
+ [
+ 'id' => 184858,
+ 'title' => 'Event center',
+ 'type' => 'directory',
+ 'children' => [
+ [
+ 'id' => 59447,
+ 'title' => 'System events',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeSystemEventHistogram',
+ 'DescribeSystemEventMetaList',
+ 'DescribeSystemEventAttribute',
+ 'DescribeSystemEventCount',
+ 'DescribeMonitorResourceQuotaAttribute',
+ 'SendDryRunSystemEvent',
+ ],
+ ],
+ [
+ 'id' => 59478,
+ 'title' => 'Custom events',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeCustomEventCount',
+ 'DescribeCustomEventHistogram',
+ 'DescribeCustomEventAttribute',
+ 'PutCustomEvent',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'id' => 59473,
+ 'title' => 'Custom monitoring',
+ 'type' => 'directory',
+ 'children' => [
+ 'PutCustomMetric',
+ 'PutCustomMetricRule',
+ 'DescribeCustomMetricList',
+ 'DeleteCustomMetric',
+ ],
+ ],
+ [
+ 'id' => 59526,
+ 'title' => 'Log monitoring',
+ 'type' => 'directory',
+ 'children' => [
+ 'PutLogMonitor',
+ 'DeleteLogMonitor',
+ 'DescribeLogMonitorList',
+ 'DescribeLogMonitorAttribute',
+ ],
+ ],
+ [
+ 'id' => 184946,
+ 'title' => 'Site monitoring',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateMonitorGroupByResourceGroupId',
+ 'CreateSiteMonitor',
+ 'CreateInstantSiteMonitor',
+ 'BatchCreateInstantSiteMonitor',
+ 'DeleteSiteMonitors',
+ 'DisableSiteMonitors',
+ 'ModifySiteMonitor',
+ 'EnableSiteMonitors',
+ 'DescribeSiteMonitorQuota',
+ 'DescribeSiteMonitorAttribute',
+ 'DescribeSiteMonitorISPCityList',
+ 'DescribeSiteMonitorData',
+ 'DescribeSiteMonitorStatistics',
+ 'DescribeSiteMonitorList',
+ 'DescribeSiteMonitorLog',
+ ],
+ ],
+ [
+ 'id' => 59386,
+ 'title' => 'Cloud products',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeMetricLast',
+ 'DescribeMetricList',
+ 'DescribeMetricData',
+ 'DescribeMetricMetaList',
+ 'DescribeProjectMeta',
+ 'DeleteExporterOutput',
+ 'DeleteExporterRule',
+ 'DescribeExporterOutputList',
+ 'DescribeExporterRuleList',
+ 'DescribeMetricTop',
+ 'PutExporterOutput',
+ 'PutExporterRule',
+ ],
+ ],
+ [
+ 'id' => 184862,
+ 'title' => 'Alert service',
+ 'type' => 'directory',
+ 'children' => [
+ [
+ 'id' => 184895,
+ 'title' => 'Alert history',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeAlertHistoryList',
+ 'DescribeAlertLogCount',
+ 'DescribeAlertLogList',
+ 'DescribeAlertLogHistogram',
+ ],
+ ],
+ [
+ 'id' => 184896,
+ 'title' => 'Initiative alert list',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeProductsOfActiveMetricRule',
+ 'DescribeActiveMetricRuleList',
+ 'EnableActiveMetricRule',
+ 'DisableActiveMetricRule',
+ ],
+ ],
+ [
+ 'id' => 59454,
+ 'title' => 'Alert templates',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateMetricRuleTemplate',
+ 'DeleteMetricRuleTemplate',
+ 'ModifyMetricRuleTemplate',
+ 'DescribeMetricRuleTemplateAttribute',
+ 'DescribeMetricRuleTemplateList',
+ 'ApplyMetricRuleTemplate',
+ ],
+ ],
+ [
+ 'id' => 59396,
+ 'title' => 'Threshold-triggered alert rules',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeMetricRuleList',
+ 'CreateGroupMetricRules',
+ 'CreateMetricRuleResources',
+ 'DeleteMetricRuleTargets',
+ 'DeleteMetricRules',
+ 'DeleteMetricRuleResources',
+ 'EnableMetricRules',
+ 'DisableMetricRules',
+ 'DescribeMetricRuleTargets',
+ 'DescribeMetricRuleCount',
+ 'DescribeAlertingMetricRuleResources',
+ 'PutMetricRuleTargets',
+ 'PutResourceMetricRule',
+ 'PutResourceMetricRules',
+ 'PutGroupMetricRule',
+ ],
+ ],
+ [
+ 'id' => 59461,
+ 'title' => 'Event-triggered alert rules',
+ 'type' => 'directory',
+ 'children' => [
+ 'DeleteEventRuleTargets',
+ 'DeleteEventRules',
+ 'EnableEventRules',
+ 'DisableEventRules',
+ 'DescribeEventRuleAttribute',
+ 'DescribeEventRuleList',
+ 'DescribeEventRuleTargetList',
+ 'PutEventRuleTargets',
+ 'PutEventRule',
+ 'PutCustomEventRule',
+ ],
+ ],
+ [
+ 'id' => 184863,
+ 'title' => 'Alert blacklists',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateMetricRuleBlackList',
+ 'ModifyMetricRuleBlackList',
+ 'DeleteMetricRuleBlackList',
+ 'DescribeMetricRuleBlackList',
+ 'EnableMetricRuleBlackList',
+ ],
+ ],
+ [
+ 'id' => 59428,
+ 'title' => 'Alert contacts',
+ 'type' => 'directory',
+ 'children' => [
+ 'DeleteContactGroup',
+ 'DeleteContact',
+ 'DescribeContactListByContactGroup',
+ 'DescribeContactGroupList',
+ 'DescribeContactList',
+ 'PutContact',
+ 'PutContactGroup',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'id' => 166246,
+ 'title' => 'Hybrid cloud monitoring',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateHybridMonitorNamespace',
+ 'ModifyHybridMonitorNamespace',
+ 'DeleteHybridMonitorNamespace',
+ 'DescribeHybridMonitorNamespaceList',
+ 'CreateHybridMonitorTask',
+ 'ModifyHybridMonitorTask',
+ 'DeleteHybridMonitorTask',
+ 'DescribeHybridMonitorTaskList',
+ 'PutHybridMonitorMetricData',
+ 'DescribeHybridMonitorDataList',
+ 'CreateHybridMonitorSLSGroup',
+ 'ModifyHybridMonitorSLSGroup',
+ 'DeleteHybridMonitorSLSGroup',
+ 'DescribeHybridMonitorSLSGroup',
+ 'Cursor',
+ 'BatchExport',
+ ],
+ ],
+ [
+ 'id' => 313480,
+ 'title' => null,
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeSyntheticProbeList',
+ ],
+ ],
+ ],
+ 'components' => [
+ 'schemas' => [
+ 'Dimension' => [
+ 'title' => 'Dimension',
+ 'description' => 'The dimension information of the metric.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'object',
+ 'properties' => [
+ 'Label' => [
+ 'title' => 'Dimension label',
+ 'description' => 'The name of the metric dimension.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'string',
+ 'example' => 'instanceId',
+ 'backendName' => 'label',
+ ],
+ 'Value' => [
+ 'title' => 'Dimension value',
+ 'description' => 'The value of the metric dimension.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'string',
+ 'example' => 'i-dferwret*****',
+ 'backendName' => 'value',
+ ],
+ ],
+ ],
+ 'Matcher' => [
+ 'title' => 'mathcer',
+ 'description' => 'The dimension of the metric.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'title' => 'value',
+ 'description' => 'The value of the metric dimension.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'string',
+ 'example' => 'instanceId',
+ 'backendName' => 'value',
+ ],
+ 'Label' => [
+ 'title' => 'label',
+ 'description' => 'The name of the metric dimension.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'string',
+ 'example' => 'i-fewrewr*****',
+ 'backendName' => 'label',
+ ],
+ 'Operator' => [
+ 'title' => 'operator',
+ 'description' => 'The matching mode of the metric dimension. Only EQUALS is supported. Default value: EQUALS.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'string',
+ 'example' => 'EQUALS',
+ 'backendName' => 'operator',
+ ],
+ ],
+ ],
+ 'MetricStat' => [
+ 'title' => '',
+ 'description' => 'The data queried by BatchExport.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'object',
+ 'properties' => [
+ 'Namespace' => [
+ 'title' => 'namespace',
+ 'description' => 'The namespace of the cloud service.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ 'backendName' => 'namespace',
+ ],
+ 'Metric' => [
+ 'title' => 'metric',
+ 'description' => 'The metric that is used to monitor the cloud service.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'string',
+ 'example' => 'cpu_idle',
+ 'backendName' => 'metric',
+ ],
+ 'Period' => [
+ 'title' => 'period',
+ 'description' => 'The time interval based on which the metric value is measured.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ 'backendName' => 'period',
+ ],
+ 'Timestamp' => [
+ 'title' => 'timestamp',
+ 'description' => 'The timestamp of the monitoring data. Unit: milliseconds.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1641454680000',
+ 'backendName' => 'timestamp',
+ ],
+ 'Dimensions' => [
+ 'title' => 'dimensions',
+ 'description' => 'The dimension information that is used to identify the monitored object (instance).'."\n",
+ 'visibility' => 'public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The dimension information that is used to identify the monitored object (instance).'."\n",
+ 'visibility' => 'public',
+ 'extendType' => 'true',
+ '$ref' => '#/components/schemas/Dimension',
+ ],
+ 'backendName' => 'dimensions',
+ 'itemName' => 'Dimension',
+ ],
+ 'Associated' => [
+ 'title' => 'associated',
+ 'description' => 'The additional information about the monitored object (instance).'."\n",
+ 'visibility' => 'public',
+ 'type' => 'object',
+ 'additionalProperties' => [
+ 'description' => 'The additional information about the monitored object (instance).'."\n",
+ 'visibility' => 'public',
+ 'type' => 'string',
+ 'example' => '{"group":"test****", "name":"Alice"}',
+ ],
+ 'backendName' => 'associated',
+ ],
+ 'Measurements' => [
+ 'title' => 'measurements',
+ 'description' => 'The measured value of the metric. The parameter contains multiple values by default.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'object',
+ 'additionalProperties' => [
+ 'description' => 'The measured value of the metric. The parameter contains multiple values by default.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'any',
+ 'example' => '{"Average":60,"Maximum":85}',
+ ],
+ 'backendName' => 'measurements',
+ ],
+ 'LogTime' => [
+ 'title' => 'logTime',
+ 'description' => 'The recorded time of the monitoring data. Unit: milliseconds. For non-raw data (aggregated data), the value of LogTime is NULL.'."\n",
+ 'visibility' => 'public',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1683686550073',
+ 'backendName' => 'logTime',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'apis' => [
+ 'CreateMonitorGroup' => [
+ 'summary' => 'Creates an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroups',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert contact group. The alert notifications of the application group are sent to the alert contacts that belong to the alert contact group.'."\n"
+ ."\n"
+ .'> An alert contact group can contain one or more alert contacts. For information about how to create alert contacts and alert contact groups, see [PutContact](~~PutContact~~) and [PutContactGroup](~~PutContactGroup~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Alert_Group',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '83C89BA6-ABD4-4398-A175-83E86C47A001',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1234567',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'InvalidClientTokenId',
+ 'errorMessage' => 'not allow this operation.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => 'ResourcesOverLimit',
+ 'errorMessage' => 'Resources over limit.',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"83C89BA6-ABD4-4398-A175-83E86C47A001\\",\\n \\"GroupId\\": 1234567,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateMonitorGroupResponse>\\n\\t<RequestId>83C89BA6-ABD4-4398-A175-83E86C47A001</RequestId>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n\\t<GroupId>1234567</GroupId>\\n</CreateMonitorGroupResponse>\\t","errorExample":""}]',
+ 'title' => 'CreateMonitorGroup',
+ 'description' => 'In this example, an application group named `ECS_Group` is created.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyMonitorGroup' => [
+ 'summary' => '修改应用分组',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'GroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs_group',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroups',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert groups that can receive alert notifications for the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'alarm_ecs_group',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => 'C85A2870-5DF4-4269-BC50-ECB5E4591A80',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"C85A2870-5DF4-4269-BC50-ECB5E4591A80\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'ModifyMonitorGroup',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteMonitorGroup' => [
+ 'summary' => 'Deletes an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => 'CA35B3AE-4FFD-4A33-AE67-67EF68711EFA',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. The value true indicates a success. The value false indicates a failure.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Group' => [
+ 'description' => 'The deleted application group.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'GroupName' => [
+ 'description' => 'The name of the application group.',
+ 'type' => 'string',
+ 'example' => 'ECS_test',
+ ],
+ 'ContactGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactGroup' => [
+ 'description' => 'The alert groups that receive alert notifications for the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => 'The name of the alert group.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ [
+ 'errorCode' => 'InvalidClientTokenId',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"CA35B3AE-4FFD-4A33-AE67-67EF68711EFA\\",\\n \\"Success\\": true,\\n \\"Group\\": {\\n \\"GroupName\\": \\"ECS_test\\",\\n \\"ContactGroups\\": {\\n \\"ContactGroup\\": [\\n {\\n \\"Name\\": \\"ECS_Group\\"\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DeleteMonitorGroup>\\n\\t\\t<Group>\\n\\t\\t\\t<GroupName>ECS_test</GroupName>\\n\\t\\t\\t<ContactGroups>\\n\\t\\t\\t\\t<ContactGroup>\\n\\t\\t\\t\\t\\t<Name>ECS_Group</Name>\\n\\t\\t\\t\\t</ContactGroup>\\n\\t\\t\\t</ContactGroups>\\n\\t\\t</Group>\\n\\t\\t<RequestId>EFB8C3EC-3460-4EC9-8603-A9FE9D0A6C2C</RequestId>\\n\\t\\t<Code>200</Code>\\n\\t\\t<Success>true</Success>\\n</DeleteMonitorGroup>","errorExample":""}]',
+ 'title' => 'DeleteMonitorGroup',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitorGroups' => [
+ 'summary' => 'Queries application groups.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SelectContactGroups',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to include the alert contact groups in the response. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of the page to return.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries to return on each page.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 30.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ ],
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword that is used for the search.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The instance ID. This parameter is used to query the application group to which the specified instance belongs.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-abcdefgh12****',
+ ],
+ ],
+ [
+ 'name' => 'GroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testGroup124',
+ ],
+ ],
+ [
+ 'name' => 'IncludeTemplateHistory',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to include the historical alert templates that are applied to the application group in the response. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'Type',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the application group. Valid values:'."\n"
+ ."\n"
+ .'* custom: a self-managed application group'."\n"
+ .'* ehpc_cluster: an application group that is synchronized from an E-HPC cluster'."\n"
+ .'* kubernetes: an application group that is synchronized from an ACK cluster'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'custom',
+ 'enum' => [
+ 'custom',
+ 'ehpc_cluster',
+ 'kubernetes',
+ 'tag',
+ 'aone_group',
+ 'resMgr',
+ 'ess',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'DynamicTagRuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the tag rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '6b882d9a-5117-42e2-9d0c-4749a0c6****',
+ ],
+ ],
+ [
+ 'name' => 'GroupFounderTagKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The tag key that is created for the application group by using the tag rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GroupKey1',
+ ],
+ ],
+ [
+ 'name' => 'GroupFounderTagValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The tag value that is created for the application group by using the tag rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GroupValue1',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group. Separate multiple application group IDs with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '92****',
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The tags of the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key of the application group. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagKey1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value of the application group. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagValue1',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'Types',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the application group. Valid values:'."\n"
+ ."\n"
+ .'* custom: a self-managed application group'."\n"
+ .'* ehpc_cluster: an application group that is synchronized from an Elastic High Performance Computing (E-HPC) cluster'."\n"
+ .'* kubernetes: an application group that is synchronized from a Container Service for Kubernetes (ACK) cluster'."\n"
+ .'* tag: an application group that is automatically created by using tags'."\n"
+ .'* resMgr: an application group that is created by using resource groups'."\n"
+ .'* ess: an application group that is synchronized from Auto Scaling (ESS)'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'custom',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'headers' => [],
+ 'schema' => [
+ 'description' => 'The results returned.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'F02B299A-D374-4595-9F55-7534D604F132',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number of the returned page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries returned per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of returned entries.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'Resources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The resources that are associated with the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The resources that are associated with the application group.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => [
+ 'description' => 'The type of the application group. Valid values:'."\n"
+ ."\n"
+ .'* custom: a self-managed application group'."\n"
+ .'* ehpc_cluster: an application group that is synchronized from an E-HPC cluster'."\n"
+ .'* kubernetes: an application group that is synchronized from an ACK cluster'."\n",
+ 'type' => 'string',
+ 'example' => 'custom',
+ ],
+ 'GroupFounderTagValue' => [
+ 'description' => 'The tag value that is created for the application group by using the tag rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'GroupValue1',
+ ],
+ 'BindUrl' => [
+ 'description' => 'The URL of the ACK cluster from which the application group is synchronized.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://aliyun.com',
+ ],
+ 'GroupName' => [
+ 'description' => 'The name of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => 'test123',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12345',
+ ],
+ 'ServiceId' => [
+ 'description' => 'The ID of the Alibaba Cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => '49****',
+ ],
+ 'DynamicTagRuleId' => [
+ 'description' => 'The ID of the tag rule.'."\n",
+ 'type' => 'string',
+ 'example' => '6b882d9a-5117-42e2-9d0c-4749a0c6****',
+ ],
+ 'GmtCreate' => [
+ 'description' => 'The timestamp when the application group was created. Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1603181891000',
+ ],
+ 'GroupFounderTagKey' => [
+ 'description' => 'The tag key that is created for the application group by using the tag rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'GroupKey1',
+ ],
+ 'GmtModified' => [
+ 'description' => 'The timestamp when the application group was modified. Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1603181891000',
+ ],
+ 'ContactGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactGroup' => [
+ 'description' => 'The alert contact groups.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => 'The name of the alert contact group.'."\n",
+ 'type' => 'string',
+ 'example' => 'CloudMonitor',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Tags' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tag' => [
+ 'description' => 'The tags that are attached to the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => 'tagKey1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => 'tagValue1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'TemplateIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TemplateId' => [
+ 'description' => 'The ID of the template.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert templates that are applied to the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '92****',
+ ],
+ ],
+ ],
+ ],
+ 'ResourceGroupId' => [
+ 'description' => 'The resource ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'rg-aek2hopjh*******',
+ ],
+ 'TemplateInfos' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TemplateInfo' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EffectTime' => [
+ 'type' => 'integer',
+ 'format' => 'int64',
+ ],
+ 'TemplateId' => [
+ 'type' => 'string',
+ ],
+ 'Ver' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F02B299A-D374-4595-9F55-7534D604F132\\",\\n \\"Success\\": true,\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 30,\\n \\"Total\\": 10,\\n \\"Resources\\": {\\n \\"Resource\\": [\\n {\\n \\"Type\\": \\"custom\\",\\n \\"GroupFounderTagValue\\": \\"GroupValue1\\",\\n \\"BindUrl\\": \\"https://aliyun.com\\",\\n \\"GroupName\\": \\"test123\\",\\n \\"GroupId\\": 12345,\\n \\"ServiceId\\": \\"49****\\",\\n \\"DynamicTagRuleId\\": \\"6b882d9a-5117-42e2-9d0c-4749a0c6****\\",\\n \\"GmtCreate\\": 1603181891000,\\n \\"GroupFounderTagKey\\": \\"GroupKey1\\",\\n \\"GmtModified\\": 1603181891000,\\n \\"ContactGroups\\": {\\n \\"ContactGroup\\": [\\n {\\n \\"Name\\": \\"CloudMonitor\\"\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"tagKey1\\",\\n \\"Value\\": \\"tagValue1\\"\\n }\\n ]\\n },\\n \\"TemplateIds\\": {\\n \\"TemplateId\\": [\\n \\"92****\\"\\n ]\\n },\\n \\"ResourceGroupId\\": \\"rg-aek2hopjh*******\\",\\n \\"TemplateInfos\\": {\\n \\"TemplateInfo\\": [\\n {\\n \\"EffectTime\\": 1603181891000,\\n \\"TemplateId\\": \\"123***\\",\\n \\"Ver\\": \\"0\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitorGroupsResponse>\\n <RequestId>F02B299A-D374-4595-9F55-7534D604F132</RequestId>\\n <PageSize>30</PageSize>\\n <PageNumber>1</PageNumber>\\n <Total>2</Total>\\n <Resources>\\n <Resource>\\n <GroupName>testGroup124</GroupName>\\n <ContactGroups>\\n <ContactGroup>\\n <Name>CloudMonitor</Name>\\n </ContactGroup>\\n </ContactGroups>\\n <Type>custom</Type>\\n <GmtCreate>1603181891000</GmtCreate>\\n <GmtModified>1603181891000</GmtModified>\\n <GroupFounderTagKey>1204</GroupFounderTagKey>\\n <GroupFounderTagValue>001</GroupFounderTagValue>\\n <TemplateIds>\\n <TemplateId>92****</TemplateId>\\n </TemplateIds>\\n <Tags>\\n <Tag>\\n <Value>tagKey1</Value>\\n <Key>tagValue1</Key>\\n </Tag>\\n </Tags>\\n <GroupId>7301****</GroupId>\\n </Resource>\\n <Resource>\\n <GroupName>test123</GroupName>\\n <ContactGroups>\\n <ContactGroup>\\n <Name>CloudMonitor</Name>\\n </ContactGroup>\\n </ContactGroups>\\n <Type>tag</Type>\\n <GmtCreate>1603181891000</GmtCreate>\\n <DynamicTagRuleId>6b882d9a-5117-42e2-9d0c-4749a0c6****</DynamicTagRuleId>\\n <GmtModified>1603181891000</GmtModified>\\n <GroupFounderTagKey>GroupKey1</GroupFounderTagKey>\\n <GroupFounderTagValue>GroupValue1</GroupFounderTagValue>\\n <TemplateIds>\\n </TemplateIds>\\n <Tags>\\n </Tags>\\n <GroupId>92****</GroupId>\\n </Resource>\\n </Resources>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeMonitorGroupsResponse>","errorExample":""}]',
+ 'title' => 'DescribeMonitorGroups',
+ 'description' => 'This topic provides an example of how to query the application groups of the current account. The response shows that the current account has two application groups: `testGroup124` and `test123`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateMonitorGroupInstances' => [
+ 'summary' => 'Adds resources to an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '3607****',
+ ],
+ ],
+ [
+ 'name' => 'Instances',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The instances that you want to add to the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceName' => [
+ 'description' => 'The instance name.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-instance-ecs',
+ ],
+ 'Category' => [
+ 'description' => 'The abbreviation of the Alibaba Cloud service name.'."\n"
+ ."\n"
+ .'To obtain the abbreviation of an Alibaba Cloud service name, call the [DescribeProjectMeta](~~114916~~) operation. The `metricCategory` tag in the `Labels` response parameter indicates the abbreviation of the Alibaba Cloud service name.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-2ze26xj5wwy12****',
+ ],
+ 'RegionId' => [
+ 'description' => 'The region ID of the instance.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => ' cn-hangzhou',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 2000,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '1BC69FEB-56CD-4555-A0E2-02536A24A946',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'InvalidClientTokenId',
+ 'errorMessage' => 'not allow this operation.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => 'ResourcesOverLimit',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"1BC69FEB-56CD-4555-A0E2-02536A24A946\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateMonitorGroupInstancesResponse>\\n <RequestId>1BC69FEB-56CD-4555-A0E2-02536A24A946</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n</CreateMonitorGroupInstancesResponse>","errorExample":""}]',
+ 'title' => 'CreateMonitorGroupInstances',
+ 'description' => 'You can add a maximum of 1,000 instances to an application group at a time. You can add a maximum of 3,000 instances of an Alibaba Cloud service to an application group. The total number of instances that you can add to an application group is unlimited.'."\n"
+ ."\n"
+ .'In this example, an Elastic Compute Service (ECS) instance in the `China (Hangzhou)` region is added to the `3607****` application group. The instance ID is `i-2ze26xj5wwy12****` and the instance name is `test-instance-ecs`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyMonitorGroupInstances' => [
+ 'summary' => '修改应用分组中的资源',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '12345',
+ ],
+ ],
+ [
+ 'name' => 'Instances',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceName' => [
+ 'description' => 'The name of the instance. Valid values of N: 1 to 2000.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'HostName',
+ ],
+ 'Category' => [
+ 'description' => 'The abbreviation of the name of the service to which the instances to be added to the application group belong. Valid values:'."\n"
+ ."\n"
+ .'* ECS: Elastic Compute Service (ECS) instances provided by Alibaba Cloud and hosts not provided by Alibaba Cloud'."\n"
+ ."\n"
+ .'* RDS: ApsaraDB for RDS'."\n"
+ ."\n"
+ .'* ADS: AnalyticDB'."\n"
+ ."\n"
+ .'* SLB: Server Load Balancer (SLB)'."\n"
+ ."\n"
+ .'* VPC: Virtual Private Cloud (VPC)'."\n"
+ ."\n"
+ .'* APIGATEWAY: API Gateway'."\n"
+ ."\n"
+ .'* CDN: Alibaba Cloud Content Delivery Network (CDN)'."\n"
+ ."\n"
+ .'* CS: Container Service for Swarm'."\n"
+ ."\n"
+ .'* DCDN: Dynamic Route for CDN'."\n"
+ ."\n"
+ .'* DDoS: Anti-DDoS Pro'."\n"
+ ."\n"
+ .'* EIP: Elastic IP Address (EIP)'."\n"
+ ."\n"
+ .'* ELASTICSEARCH: Elasticsearch'."\n"
+ ."\n"
+ .'* EMR: E-MapReduce'."\n"
+ ."\n"
+ .'* ESS: Auto Scaling'."\n"
+ ."\n"
+ .'* HBASE: ApsaraDB for Hbase'."\n"
+ ."\n"
+ .'* IOT_EDGE: IoT Edge'."\n"
+ ."\n"
+ .'* K8S_POD: pods in Container Service for Kubernetes'."\n"
+ ."\n"
+ .'* KVSTORE_SHARDING: ApsaraDB for Redis of the cluster architecture'."\n"
+ ."\n"
+ .'* KVSTORE_SPLITRW: ApsaraDB for Redis of the read/write splitting architecture'."\n"
+ ."\n"
+ .'* KVSTORE_STANDARD: ApsaraDB for Redis of the standard architecture'."\n"
+ ."\n"
+ .'* MEMCACHE: ApsaraDB for Memcache'."\n"
+ ."\n"
+ .'* MNS: Message Service (MNS)'."\n"
+ ."\n"
+ .'* MONGODB: ApsaraDB for MongoDB of the replica set architecture'."\n"
+ ."\n"
+ .'* MONGODB_CLUSTER: ApsaraDB for MongoDB of the cluster architecture'."\n"
+ ."\n"
+ .'* MONGODB_SHARDING: ApsaraDB for MongoDB of the sharded cluster architecture'."\n"
+ ."\n"
+ .'* MQ_TOPIC: MNS topics'."\n"
+ ."\n"
+ .'* OCS: ApsaraDB for Memcache of earlier versions'."\n"
+ ."\n"
+ .'* OPENSEARCH: Open Search'."\n"
+ ."\n"
+ .'* OSS: Object Storage Service (OSS)'."\n"
+ ."\n"
+ .'* POLARDB: PolarDB'."\n"
+ ."\n"
+ .'* PETADATA: HybridDB for MySQL'."\n"
+ ."\n"
+ .'* SCDN: Secure Content Delivery Network (SCDN)'."\n"
+ ."\n"
+ .'* SHAREBANDWIDTHPACKAGES: EIP Bandwidth Plan'."\n"
+ ."\n"
+ .'* SLS: Log Service'."\n"
+ ."\n"
+ .'* VPN: VPN Gateway'."\n"
+ ."\n"
+ .' Valid values of N: 1 to 2000.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The ID of the instance. Valid values of N: 1 to 2000.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-a2d5q7pm12****',
+ ],
+ 'RegionId' => [
+ 'description' => 'The ID of the region where the instance resides. Valid values of N: 1 to 2000.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 2000,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => 'FEC7EDB3-9B08-4AC0-A42A-329F5D14B95A',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. The value true indicates a success. The value false indicates a failure.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Parameter invalid.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => 'ResourcesOverLimit',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"FEC7EDB3-9B08-4AC0-A42A-329F5D14B95A\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ModifyMonitorGroupInstancesResponse>\\n <RequestId>02977C39-9E74-430A-B35B-04CFBF0E7F64</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n</ModifyMonitorGroupInstancesResponse>","errorExample":""}]',
+ 'title' => 'ModifyMonitorGroupInstances',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitorGroupInstances' => [
+ 'summary' => 'Queries the resources in an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '12345',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the cloud service name. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> For more information about how to obtain the abbreviation of a cloud service name, see `metricCategory` in the response parameter `Labels` of the [DescribeProjectMeta](~~114916~~) operation.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs',
+ ],
+ ],
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword used to search for instances. Fuzzy search based on instance names is supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 's1',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The instance ID. You can query multiple instances by specifying multiple IDs.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-x1234568',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '97F2A410-9412-499C-9AD1-76EF7EC02DF2',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '12',
+ ],
+ 'Resources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The information about the resources in the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Category' => [
+ 'description' => 'The abbreviation of the service name.'."\n",
+ 'type' => 'string',
+ 'example' => 'ecs',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-2ze3w55tr2r****',
+ ],
+ 'InstanceName' => [
+ 'description' => 'The instance name.'."\n",
+ 'type' => 'string',
+ 'example' => 'hostIP',
+ ],
+ 'Id' => [
+ 'description' => 'The resource ID.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12345',
+ ],
+ 'RegionId' => [
+ 'description' => 'The ID of the region where the instance resides.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"97F2A410-9412-499C-9AD1-76EF7EC02DF2\\",\\n \\"Success\\": true,\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 12,\\n \\"Resources\\": {\\n \\"Resource\\": [\\n {\\n \\"Category\\": \\"ecs\\",\\n \\"InstanceId\\": \\"i-bp12g4xbl4i0brkn****\\",\\n \\"InstanceName\\": \\"test-s1\\",\\n \\"Id\\": 0,\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<PageNumber>1</PageNumber>\\n<PageSize>30</PageSize>\\n<RequestId>7670220A-0725-42EE-9252-8200C4F810D9</RequestId>\\n<Success>true</Success>\\n<Code>200</Code>\\n<Total>1</Total>\\n<Resources>\\n <Resource>\\n <Category>ECS</Category>\\n <InstanceId>i-2ze3w55tr2rcpejp****</InstanceId>\\n <RegionId>cn-beijing</RegionId>\\n <InstanceName>dynamic_group_1</InstanceName>\\n </Resource>\\n</Resources>","errorExample":""}]',
+ 'title' => 'DescribeMonitorGroupInstances',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitorGroupDynamicRules' => [
+ 'summary' => 'Queries the dynamic rules of an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '123456',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The returned data.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '2170B94A-1576-4D65-900E-2093037CDAF3',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resource' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The resources that are associated with the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Category' => [
+ 'description' => 'The type of the cloud service to which the dynamic rule belongs. Valid values:'."\n"
+ ."\n"
+ .'* ecs: Elastic Compute Service (ECS)'."\n"
+ .'* rds: ApsaraDB RDS'."\n"
+ .'* slb: Server Load Balancer (SLB)'."\n",
+ 'type' => 'string',
+ 'example' => 'ecs',
+ ],
+ 'FilterRelation' => [
+ 'description' => 'The filter condition. Valid values:'."\n"
+ ."\n"
+ .'* and: queries the instances that meet all alert rules.'."\n"
+ .'* or: queries the instances that meet any alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'and',
+ ],
+ 'Filters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Filter' => [
+ 'description' => 'The dynamic rules of the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => 'The value of the dynamic rule.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Function' => [
+ 'description' => 'The method that is used to filter the instances. Valid values:'."\n"
+ ."\n"
+ .'* contains: contains'."\n"
+ .'* startWith: starts with a prefix'."\n"
+ .'* endWith: ends with a suffix'."\n",
+ 'type' => 'string',
+ 'example' => 'contains',
+ ],
+ 'Name' => [
+ 'description' => 'The instance name.'."\n",
+ 'type' => 'string',
+ 'example' => 'hostName',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"2170B94A-1576-4D65-900E-2093037CDAF3\\",\\n \\"Success\\": true,\\n \\"Resource\\": {\\n \\"Resource\\": [\\n {\\n \\"Category\\": \\"ecs\\",\\n \\"FilterRelation\\": \\"and\\",\\n \\"Filters\\": {\\n \\"Filter\\": [\\n {\\n \\"Value\\": \\"1\\",\\n \\"Function\\": \\"contains\\",\\n \\"Name\\": \\"hostName\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitorGroupDynamicRulesResponse>\\r\\n\\t<RequestId>38D0A8B4-7231-4E3E-A39F-D8CE3E242AC7</RequestId>\\r\\n\\t<Resource>\\r\\n\\t\\t<Resource>\\r\\n\\t\\t\\t<FilterRelation>and</FilterRelation>\\r\\n\\t\\t\\t<Filters>\\r\\n\\t\\t\\t\\t<Filter>\\r\\n\\t\\t\\t\\t\\t<Function>contains</Function>\\r\\n\\t\\t\\t\\t\\t<Value>1</Value>\\r\\n\\t\\t\\t\\t\\t<Name>hostName</Name>\\r\\n\\t\\t\\t\\t</Filter>\\r\\n\\t\\t\\t</Filters>\\r\\n\\t\\t\\t<Category>ecs</Category>\\r\\n\\t\\t</Resource>\\r\\n\\t</Resource>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeMonitorGroupDynamicRulesResponse>","errorExample":""}]',
+ 'title' => 'DescribeMonitorGroupDynamicRules',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitorGroupInstanceAttribute' => [
+ 'summary' => 'Queries the details of the resources in an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Valid values: 1 to 1000000000.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Valid values: 1 to 1000000000.'."\n"
+ ."\n"
+ .'Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Total',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to return the total number of resources in the specified application group. Valid values:'."\n"
+ ."\n"
+ .'* true (default)'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the cloud service name.'."\n"
+ ."\n"
+ .'For more information about how to obtain the abbreviation of a cloud service name, see `metricCategory` in the response parameter `Labels` of the [DescribeProjectMeta](~~2513265~~) operation.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs',
+ ],
+ ],
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword that is used to search for resources.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'portal',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resource ID. Separate multiple resource IDs with commas (,). You can query the details about a maximum of 20 resources at a time.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-m5e0k0bexac8tykr****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '9FB8EA79-7279-4482-8D6D-3D28EEDD871A',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '12',
+ ],
+ 'Resources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The resources that are associated with the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceName' => [
+ 'description' => 'The instance name.'."\n",
+ 'type' => 'string',
+ 'example' => 'hostName',
+ ],
+ 'Dimension' => [
+ 'description' => 'The dimensions of the resource that is associated with the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '{"instanceId":"i-m5e0k0bexac8tykr****"}',
+ ],
+ 'Category' => [
+ 'description' => 'The name of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'ecs',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-m5e0k0bexac8tykr****',
+ ],
+ 'NetworkType' => [
+ 'description' => 'The network type.'."\n",
+ 'type' => 'string',
+ 'example' => 'vpc',
+ ],
+ 'Desc' => [
+ 'description' => 'The resource description.'."\n",
+ 'type' => 'string',
+ 'example' => 'desc_test',
+ ],
+ 'Tags' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tag' => [
+ 'description' => 'The tag of the resource.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key.'."\n",
+ 'type' => 'string',
+ 'example' => 'instanceNetworkType',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value.'."\n",
+ 'type' => 'string',
+ 'example' => 'VPC',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Region' => [
+ 'description' => 'The region.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'AvailabilityZone' => [
+ 'description' => 'The zone.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-f',
+ ],
+ 'RegionId' => [
+ 'description' => 'The region ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'Vpc' => [
+ 'description' => 'The VPC description.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'VswitchInstanceId' => [
+ 'description' => 'The vSwitch ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'vsw-2ze36seq79n992****',
+ ],
+ 'VpcInstanceId' => [
+ 'description' => 'The VPC ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'vpc-2zew7etgiceg21****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9FB8EA79-7279-4482-8D6D-3D28EEDD871A\\",\\n \\"Success\\": true,\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 2,\\n \\"Total\\": 12,\\n \\"Resources\\": {\\n \\"Resource\\": [\\n {\\n \\"InstanceName\\": \\"hostName\\",\\n \\"Dimension\\": \\"{\\\\\\"instanceId\\\\\\":\\\\\\"i-m5e0k0bexac8tykr****\\\\\\"}\\",\\n \\"Category\\": \\"ecs\\",\\n \\"InstanceId\\": \\"i-m5e0k0bexac8tykr****\\",\\n \\"NetworkType\\": \\"vpc\\",\\n \\"Desc\\": \\"desc_test\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"instanceNetworkType\\",\\n \\"Value\\": \\"VPC\\"\\n }\\n ]\\n },\\n \\"Region\\": {\\n \\"AvailabilityZone\\": \\"cn-hangzhou-f\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n },\\n \\"Vpc\\": {\\n \\"VswitchInstanceId\\": \\"vsw-2ze36seq79n992****\\",\\n \\"VpcInstanceId\\": \\"vpc-2zew7etgiceg21****\\"\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitorGroupInstanceAttributeResponse>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<PageSize>30</PageSize>\\r\\n\\t<RequestId>7DB8DA3D-EDA6-46F8-9222-70C52416AE7D</RequestId>\\r\\n\\t<Success>true</Success>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Total>1</Total>\\r\\n\\t<Resources>\\r\\n\\t\\t<Resource>\\r\\n\\t\\t\\t<Vpc>\\r\\n\\t\\t\\t\\t<VswitchInstanceId>vsw-2ze36seq79n992****</VswitchInstanceId>\\r\\n\\t\\t\\t\\t<VpcInstanceId>vpc-2zew7etgiceg21****</VpcInstanceId>\\r\\n\\t\\t\\t</Vpc>\\r\\n\\t\\t\\t<Tags>\\r\\n\\t\\t\\t\\t<Tag>\\r\\n\\t\\t\\t\\t\\t<Value>12345</Value>\\r\\n\\t\\t\\t\\t\\t<Key>aliUid</Key>\\r\\n\\t\\t\\t\\t</Tag>\\r\\n\\t\\t\\t\\t<Tag>\\r\\n\\t\\t\\t\\t\\t<Value>26842</Value>\\r\\n\\t\\t\\t\\t\\t<Key>bid</Key>\\r\\n\\t\\t\\t\\t</Tag>\\r\\n\\t\\t\\t</Tags>\\r\\n\\t\\t\\t<NetworkType>VPC</NetworkType>\\r\\n\\t\\t\\t<Category>RDS</Category>\\r\\n\\t\\t\\t<Region>\\r\\n\\t\\t\\t\\t<RegionId>cn-hangzhou</RegionId>\\r\\n\\t\\t\\t\\t<AvailabilityZone>cn-hangzhou-MAZ8(f,g)</AvailabilityZone>\\r\\n\\t\\t\\t</Region>\\r\\n\\t\\t\\t<AliUid>127067667954****</AliUid>\\r\\n\\t\\t\\t<InstanceId>i-m5e0k0bexac8tykr****</InstanceId>\\r\\n\\t\\t\\t<Dimension>{\\\\\\"userId\\\\\\":\\\\\\"127067667954****\\\\\\",\\\\\\"instanceId\\\\\\":\\\\\\"rm-bp179a8xfaz4i****\\\\\\"}</Dimension>\\r\\n\\t\\t\\t<Desc>test_name</Desc>\\r\\n\\t\\t\\t<InstanceName>test_name</InstanceName>\\r\\n\\t\\t</Resource>\\r\\n\\t</Resources>\\r\\n</DescribeMonitorGroupInstanceAttributeResponse>","errorExample":""}]',
+ 'title' => 'DescribeMonitorGroupInstanceAttribute',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteMonitorGroupDynamicRule' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The service to which the rule applies. Valid values: ecs, rds, and slb.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'ecs',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '56B4516A-EB44-4C66-8854-0393B35F636B',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"56B4516A-EB44-4C66-8854-0393B35F636B\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteMonitorGroupDynamicRuleResponse>\\n <RequestId>56B4516A-EB44-4C66-8854-0393B35F636B</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n</DeleteMonitorGroupDynamicRuleResponse>","errorExample":""}]',
+ 'title' => 'DeleteMonitorGroupDynamicRule',
+ 'summary' => 'Deletes a rule that is used to dynamically add the instances of a service to an application group.',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteMonitorGroupInstances' => [
+ 'summary' => 'Removes instances from an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIdList',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The instances to be removed from the application group. Separate multiple instances with commas (,). You can remove a maximum of 20 instances from an application group at a time.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-a2d5q7pm3f912****,i-a2d5q7pm3f222****',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the cloud service name.'."\n"
+ ."\n"
+ .'> For more information about how to obtain the abbreviation of a cloud service name, see `metricCategory` in the response parameter `Labels` of the [DescribeProjectMeta](~~114916~~) operation.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '5351B0F2-26A9-4BC9-87FF-1B74034D12C3',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"5351B0F2-26A9-4BC9-87FF-1B74034D12C3\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteMonitorGroupInstancesResponse>\\n <RequestId>C5C6924C-237E-40B2-9510-41BF8F671102</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n</DeleteMonitorGroupInstancesResponse>","errorExample":""}]',
+ 'title' => 'DeleteMonitorGroupInstances',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitorGroupCategories' => [
+ 'summary' => 'Queries the cloud services to which the resources in an application group belong and the number of resources that belong to each cloud service in the application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '9E0347B0-EBC3-4769-A78D-D96F21C6BB52',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The request was successful.'."\n"
+ .'* false: The request failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'MonitorGroupCategories' => [
+ 'description' => 'The cloud services to which the resources in the application group belong and the number of resources that belong to the cloud service.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123456',
+ ],
+ 'MonitorGroupCategory' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'CategoryItem' => [
+ 'description' => 'The cloud services to which the resources in the application group belong and the number of resources that belong to the cloud service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Count' => [
+ 'description' => 'The number of resources that belong to the cloud service.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Category' => [
+ 'description' => 'The abbreviation of the cloud service name.'."\n"
+ ."\n"
+ .'> For more information about how to obtain the abbreviation of a cloud service name, see `metricCategory` in the response parameter `Labels` of the [DescribeProjectMeta](~~114916~~) operation.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"9E0347B0-EBC3-4769-A78D-D96F21C6BB52\\",\\n \\"Success\\": true,\\n \\"MonitorGroupCategories\\": {\\n \\"GroupId\\": 123456,\\n \\"MonitorGroupCategory\\": {\\n \\"CategoryItem\\": [\\n {\\n \\"Count\\": 1,\\n \\"Category\\": \\"ecs\\"\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitorGroupCategoriesResponse>\\r\\n\\t<RequestId>B7C9F725-E743-4F2E-81A2-4CC19783DC42</RequestId>\\r\\n\\t<MonitorGroupCategories>\\r\\n\\t\\t<MonitorGroupCategory>\\r\\n\\t\\t\\t<CategoryItem>\\r\\n\\t\\t\\t\\t<Category>ECS</Category>\\r\\n\\t\\t\\t\\t<Count>39</Count>\\r\\n\\t\\t\\t</CategoryItem>\\r\\n\\t\\t</MonitorGroupCategory>\\r\\n\\t\\t<GroupId>123456</GroupId>\\r\\n\\t</MonitorGroupCategories>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeMonitorGroupCategoriesResponse>","errorExample":""}]',
+ 'title' => 'DescribeMonitorGroupCategories',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutMonitorGroupDynamicRule' => [
+ 'summary' => 'Creates or modifies an alert rule to dynamically add instances that meet the rule to an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'GroupRules',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'FilterRelation' => [
+ 'description' => 'The logical operator used between conditional expressions in the alert rule. Valid values of N: 1 to 3. Valid values:'."\n"
+ ."\n"
+ .'* and: The instances that meet all the conditional expressions are automatically added to the application group.'."\n"
+ .'* or: The instances that meet one of the conditional expressions are automatically added to the application group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'and',
+ ],
+ 'Filters' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => 'The value to be matched with the specified field. Valid values of N: 1 to 3.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nginx',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the field based on which instances are filtered. Valid values of N: 1 to 3.'."\n"
+ ."\n"
+ .'Only hostnames are supported. Example: hostName.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'hostName',
+ ],
+ 'Function' => [
+ 'description' => 'The method that is used to filter instances. Valid values of N: 1 to 3. Valid values:'."\n"
+ ."\n"
+ .'* contains: contains'."\n"
+ .'* notContains: does not contain'."\n"
+ .'* startWith: starts with a prefix'."\n"
+ .'* endWith: ends with a suffix'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'contains',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 10,
+ ],
+ 'Category' => [
+ 'description' => 'The cloud service to which the alert rule is applied. Valid values of N: 1 to 3. Valid values:'."\n"
+ ."\n"
+ .'* ecs: Elastic Compute Service (ECS)'."\n"
+ .'* rds: ApsaraDB RDS'."\n"
+ .'* slb: Server Load Balancer (SLB)'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 50,
+ ],
+ ],
+ [
+ 'name' => 'IsAsync',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mode for creating the alert rule. Valid values:'."\n"
+ ."\n"
+ .'* true: creates asynchronously'."\n"
+ .'* false (default): creates synchronously'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3E73F1AB-D195-438A-BCA7-2F4355789C58',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => 'OverLimit',
+ 'errorMessage' => 'Matched instances count was over limit',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"3E73F1AB-D195-438A-BCA7-2F4355789C58\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<PutMonitorGroupDynamicRuleResponse>\\n\\t<RequestId>3E73F1AB-D195-438A-BCA7-2F4355789C58</RequestId>\\n\\t<Success>true</Success>\\n\\t<Code>200</Code>\\n</PutMonitorGroupDynamicRuleResponse>\\t","errorExample":""}]',
+ 'title' => 'PutMonitorGroupDynamicRule',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateGroupMonitoringAgentProcess' => [
+ 'summary' => 'Creates a process monitoring task for an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n"
+ ."\n"
+ .'For more information about how to obtain the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'ProcessName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The process name.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test1',
+ ],
+ ],
+ [
+ 'name' => 'MatchExpressFilterRelation',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The logical operator used between conditional expressions that are used to match instances. Valid values:'."\n"
+ ."\n"
+ .'* all'."\n"
+ .'* and'."\n"
+ .'* or'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'and',
+ ],
+ ],
+ [
+ 'name' => 'MatchExpress',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The expressions used to match instances.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The expression used to match instances.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => 'The keyword used to match the instance name.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'portalHost',
+ ],
+ 'Name' => [
+ 'description' => 'The criteria based on which the instances are matched.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n"
+ ."\n"
+ .'> Set the value to name. The value name indicates that the instances are matched based on the instance name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'name1',
+ ],
+ 'Function' => [
+ 'description' => 'The matching condition. Valid values:'."\n"
+ ."\n"
+ .'* all (default value): matches all'."\n"
+ .'* startWith: starts with a prefix'."\n"
+ .'* endWith: ends with a suffix'."\n"
+ .'* contains: contains'."\n"
+ .'* notContains: does not contain'."\n"
+ .'* equals: equals'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'startWith',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 3,
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'The alert rule configurations.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert rule configuration.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alert notifications are not sent even if the trigger conditions are met. Unit: seconds. Minimum value: 3600, which is equivalent to one hour. Default value: 86400, which is equivalent to one day.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n"
+ ."\n"
+ .'> Only one alert notification is sent during a mute period even if the metric value exceeds the alert threshold during consecutive checks.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '86400',
+ 'default' => '86400',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the previous monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http://www.aliyun.com',
+ ],
+ 'Times' => [
+ 'description' => 'The number of times for which the threshold can be consecutively exceeded. Default value: 3.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n"
+ ."\n"
+ .'> A metric triggers an alert only after the metric value reaches the threshold consecutively for the specified times.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '3',
+ ],
+ 'EscalationsLevel' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* critical (default)'."\n"
+ .'* warn'."\n"
+ .'* info'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'warn',
+ ],
+ 'EffectiveInterval' => [
+ 'description' => 'The period of time during which the alert rule is effective.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-23:59',
+ ],
+ 'NoEffectiveInterval' => [
+ 'description' => 'This parameter is deprecated.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-23:59',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '5',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical aggregation method that is used to calculate the metric values.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3.'."\n"
+ ."\n"
+ .'> Set the value to Average.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Average',
+ ],
+ 'TargetList' => [
+ 'description' => 'The alert triggers.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert trigger.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the resource for which alerts are triggered.'."\n"
+ ."\n"
+ .'For more information about how to obtain the ID of a resource for which alerts are triggered, see [DescribeMetricRuleTargets](~~121592~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the resource.'."\n"
+ ."\n"
+ .'For more information about how to query the ARN of a resource, see [DescribeMetricRuleTargets](~~121592~~).'."\n"
+ ."\n"
+ .'Format: `acs:{Service name abbreviation}:{regionId}:{userId}:/{Resource type}/{Resource name}/message`. Example: `acs:mns:cn-hangzhou:120886317861****:/queues/test123/message`. Fields:'."\n"
+ ."\n"
+ .'* {Service name abbreviation}: the abbreviation of the service name. Set the value to Simple Message Queue (formerly MNS) (SMQ).'."\n"
+ ."\n"
+ .'* {userId}: the ID of the Alibaba Cloud account.'."\n"
+ ."\n"
+ .'* {regionId}: the region ID of the SMQ queue or topic.'."\n"
+ ."\n"
+ .'* {Resource type}: the type of the resource that triggers the alert. Valid values:'."\n"
+ ."\n"
+ .' * **queues**'."\n"
+ .' * **topics**'."\n"
+ ."\n"
+ .'* {Resource name}: the resource name.'."\n"
+ ."\n"
+ .' * If the resource type is **queues**, the resource name is the queue name.'."\n"
+ .' * If the resource type is **topics**, the resource name is the topic name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:mns:cn-hangzhou:120886317861****:/queues/test/message',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* INFO'."\n"
+ .'* WARN'."\n"
+ .'* CRITICAL'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["INFO", "WARN", "CRITICAL"]',
+ ],
+ 'JsonParams' => [
+ 'description' => 'The parameters of the alert callback. The parameters are in the JSON format.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"customField1":"value1","customField2":"$.name"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 3,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call is successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3F6150F9-45C7-43F9-9578-A58B2E726C90',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call is successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call is successful.'."\n"
+ .'* false: The call fails.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resource' => [
+ 'description' => 'The group process information.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'GroupProcessId' => [
+ 'description' => 'The ID of the group process.'."\n",
+ 'type' => 'string',
+ 'example' => '7F2B0024-4F21-48B9-A764-211CEC48****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"718FEA81-64C3-4F23-8F90-0531F7489FC1\\",\\n \\"Success\\": true,\\n \\"Resource\\": {\\n \\"GroupProcessId\\": \\"7F2B0024-4F21-48B9-A764-211CEC48****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateGroupMonitoringAgentProcessResponse>\\n <Code>200</Code>\\n <RequestId>718FEA81-64C3-4F23-8F90-0531F7489FC1</RequestId>\\n <Success>true</Success>\\n <Resource>\\n <GroupProcessId>7F2B0024-4F21-48B9-A764-211CEC48****</GroupProcessId>\\n </Resource>\\n</CreateGroupMonitoringAgentProcessResponse>","errorExample":""}]',
+ 'title' => 'CreateGroupMonitoringAgentProcess',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyGroupMonitoringAgentProcess' => [
+ 'summary' => '修改应用分组内的进程监控',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the process monitoring task.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '92E3065F-0980-4E31-9AA0-BA6****',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '6780****',
+ ],
+ ],
+ [
+ 'name' => 'MatchExpressFilterRelation',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The logical operator used between conditional expressions that are used to match instances. Valid values:'."\n"
+ ."\n"
+ .'* all'."\n"
+ .'* and'."\n"
+ .'* or'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'and',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'The alert rule configurations.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert rule configurations.',
+ 'type' => 'object',
+ 'properties' => [
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alerts are not sent even if the trigger conditions are met. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'Unit: seconds. Minimum value: 3600, which is equivalent to one hour. Default value: 86400, which is equivalent to one day.'."\n"
+ ."\n"
+ .'> Only one alert notification is sent during a mute period even if the metric value exceeds the alert threshold during consecutive checks.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '86400',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold. Valid values of N: 1 to 200. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold.'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday.'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL to which a POST request is sent when an alert is triggered based on the alert rule. Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http://www.aliyun.com',
+ ],
+ 'Times' => [
+ 'description' => 'The number of times for which the threshold can be consecutively exceeded. Valid values of N: 1 to 200. Default value: 3.'."\n"
+ ."\n"
+ .'> A metric triggers an alert only after the metric value reaches the threshold consecutively for the specified times.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '3',
+ ],
+ 'EscalationsLevel' => [
+ 'description' => 'The level of the alert. Valid values of N: 1 to 200. Valid values:'."\n"
+ ."\n"
+ .'* critical (default value): critical'."\n"
+ .'* warn: warning'."\n"
+ .'* info: information'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'warn',
+ ],
+ 'EffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is effective. Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-22:59',
+ ],
+ 'NoEffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is ineffective. Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '23:00-23:59',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold. Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '5',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical aggregation method that is used to calculate the metric values. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> Set the value to Average.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'TargetList' => [
+ 'description' => 'The alert trigger.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert trigger.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the resource for which alerts are triggered.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of a resource for which alerts are triggered, see [DescribeMetricRuleTargets](~~121592~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the resource.'."\n"
+ ."\n"
+ .'For information about how to obtain the ARN of a resource, see [DescribeMetricRuleTargets](~~121592~~).'."\n"
+ ."\n"
+ .'Format: `acs:{Service name abbreviation}:{regionId}:{userId}:/{Resource type}/{Resource name}/message`. Example: `acs:mns:cn-hangzhou:120886317861****:/queues/test123/message`. Fields:'."\n"
+ ."\n"
+ .'- {Service name abbreviation}: the abbreviation of the service name. Valid value: mns.'."\n"
+ .'- {userId}: the ID of the Alibaba Cloud account.'."\n"
+ .'- {regionId}: the region ID of the message queue or topic.'."\n"
+ .'- {Resource type}: the type of the resource for which alerts are triggered. Valid values: '."\n"
+ .' - **queues** '."\n"
+ .' - **topics** '."\n"
+ .'- {Resourcename}: the name of the resource. '."\n"
+ .' - If the resource type is set to **queues**, the resource name is the name of the message queue. '."\n"
+ .' - If the resource type is set to **topics**, the resource name is the name of the topic.`',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:mns:cn-hangzhou:120886317861****:/queues/test/message',
+ ],
+ 'Level' => [
+ 'description' => 'The level of the alert. Valid values:'."\n"
+ ."\n"
+ .'* INFO: information'."\n"
+ .'* WARN: warning'."\n"
+ .'* CRITICAL: critical'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["INFO", "WARN", "CRITICAL"]',
+ ],
+ 'JsonParams' => [
+ 'description' => 'The parameters of the alert callback. The parameters are in the JSON format.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"customField1":"value1","customField2":"$.name"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 3,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'N/A.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '7985D471-3FA8-4EE9-8F4B-45C19DF3D36F',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"7985D471-3FA8-4EE9-8F4B-45C19DF3D36F\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ModifyGroupMonitoringAgentProcess>\\n\\t\\t<RequestId>7985D471-3FA8-4EE9-8F4B-45C19DF3D36F</RequestId>\\n\\t\\t<Success>true</Success>\\n\\t\\t<Code>200</Code>\\n</ModifyGroupMonitoringAgentProcess>","errorExample":""}]',
+ 'title' => 'ModifyGroupMonitoringAgentProcess',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteGroupMonitoringAgentProcess' => [
+ 'summary' => 'Deletes a process monitoring task for an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the process monitoring task.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '48F83746-C817-478C-9B06-7158F56B****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3F6150F9-45C7-43F9-9578-A58B2E726C90',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"3F6150F9-45C7-43F9-9578-A58B2E726C90\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteGroupMonitoringAgentProcessResponse>\\n\\t\\t<RequestId>7985D471-3FA8-4EE9-8F4B-45C19DF3D36F</RequestId>\\n\\t\\t<Success>true</Success>\\n\\t\\t<Code>200</Code>\\n</DeleteGroupMonitoringAgentProcessResponse>","errorExample":""}]',
+ 'title' => 'DeleteGroupMonitoringAgentProcess',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeGroupMonitoringAgentProcess' => [
+ 'summary' => 'Queries the process monitoring tasks for an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '12345',
+ ],
+ ],
+ [
+ 'name' => 'ProcessName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The process name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sshd',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number. Default value: 1'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '30',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The response parameters.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '7985D471-3FA8-4EE9-8F4B-45C19DF3D36F',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status codes.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number. Default value: 1'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page. Default value: 10.'."\n",
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of returned entries.'."\n",
+ 'type' => 'string',
+ 'example' => '28',
+ ],
+ 'Processes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Process' => [
+ 'description' => 'The process monitoring tasks.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The process monitoring task.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ProcessName' => [
+ 'description' => 'The process name.'."\n",
+ 'type' => 'string',
+ 'example' => 'sshd',
+ ],
+ 'MatchExpressFilterRelation' => [
+ 'description' => 'The logical operator used between conditional expressions that are used to match instances. Valid values:'."\n"
+ ."\n"
+ .'* all'."\n"
+ .'* and'."\n"
+ .'* or'."\n",
+ 'type' => 'string',
+ 'example' => 'and',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '12345',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the process monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => '3F6150F9-45C7-43F9-9578-A58B2E72****',
+ ],
+ 'MatchExpress' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'MatchExpress' => [
+ 'description' => 'The matching conditions.'."\n"
+ ."\n"
+ .'> Only the instances that meet the conditional expressions are monitored by the process monitoring task.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => 'The keyword used to match the instance name.'."\n",
+ 'type' => 'string',
+ 'example' => 'portalHost',
+ ],
+ 'Name' => [
+ 'description' => 'The criteria based on which the instances are matched.'."\n"
+ ."\n"
+ .'> Set the value to `name`. The value name indicates that the instances are matched based on the instance name.'."\n",
+ 'type' => 'string',
+ 'example' => 'name',
+ ],
+ 'Function' => [
+ 'description' => 'The matching condition. Valid values:'."\n"
+ ."\n"
+ .'* all (default): matches all'."\n"
+ .'* startWith: starts with a prefix'."\n"
+ .'* endWith: ends with a suffix'."\n"
+ .'* contains: contains'."\n"
+ .'* notContains: excludes'."\n"
+ .'* equals: equals'."\n"
+ ."\n"
+ .'> The matched instances are monitored by the process monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'all',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'AlertConfig' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'AlertConfig' => [
+ 'description' => 'The alert rule configurations.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert rule configuration.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday.'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alert notifications are not sent even if the trigger conditions are met. Unit: seconds. Minimum value: 3600, which is equivalent to one hour. Default value: 86400, which is equivalent to one day.'."\n"
+ ."\n"
+ .'> Only one alert notification is sent during each mute period even if the metric value exceeds the alert threshold several times.'."\n",
+ 'type' => 'string',
+ 'example' => '86400',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL to which a POST request is sent when an alert is triggered based on the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'http://www.aliyun.com',
+ ],
+ 'Times' => [
+ 'description' => 'The number of times for which the threshold can be consecutively exceeded.'."\n"
+ ."\n"
+ .'> A metric triggers an alert only after the metric value reaches the threshold consecutively for the specified times.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'EscalationsLevel' => [
+ 'description' => 'The level of the alert. Valid values:'."\n"
+ ."\n"
+ .'* critical'."\n"
+ .'* warn'."\n"
+ .'* Info'."\n",
+ 'type' => 'string',
+ 'example' => 'warn',
+ ],
+ 'NoEffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is ineffective.'."\n",
+ 'type' => 'string',
+ 'example' => '00:00-23:59',
+ ],
+ 'EffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is effective.'."\n",
+ 'type' => 'string',
+ 'example' => '00:00-23:59',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'example' => '5',
+ ],
+ 'Statistics' => [
+ 'description' => 'The method used to calculate metric values that trigger alerts.'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'TargetList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Target' => [
+ 'description' => 'The resources for which alerts are triggered.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The resource for which alerts are triggered.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the resource for which alerts are triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '123',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the resource. Format: acs:{Service name abbreviation}:{regionId}:{userId}:/{Resource type}/{Resource name}/message. Example: acs:mns:cn-hangzhou:120886317861\\*\\*\\*\\*:/queues/test123/message. Fields:'."\n"
+ ."\n"
+ .'* {Service name abbreviation}: the abbreviation of the service name. Set the value to Simple Message Queue (formerly MNS) (SMQ).'."\n"
+ ."\n"
+ .'* {userId}: the ID of the Alibaba Cloud account.'."\n"
+ ."\n"
+ .'* {regionId}: the region ID of the SMQ queue or topic.'."\n"
+ ."\n"
+ .'* {Resource type}: the type of the resource for which alerts are triggered. Valid values:'."\n"
+ ."\n"
+ .' * **queues**'."\n"
+ .' * **topics**'."\n"
+ ."\n"
+ .'* {Resource name}: the resource name.'."\n"
+ ."\n"
+ .' * If the resource type is **queues**, the resource name is the queue name.'."\n"
+ .' * If the resource type is **topics**, the resource name is the topic name.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs:mns:cn-hangzhou:120886317861****:/queues/test/message',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* INFO'."\n"
+ .'* WARN'."\n"
+ .'* CRITICAL'."\n",
+ 'type' => 'string',
+ 'example' => 'CRITICAL',
+ ],
+ 'JsonParmas' => [
+ 'description' => 'The parameters of the alert callback. The parameters are in the JSON format.'."\n",
+ 'type' => 'string',
+ 'example' => '{"customField1":"value1","customField2":"$.name"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7985D471-3FA8-4EE9-8F4B-45C19DF3D36F\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"PageSize\\": \\"10\\",\\n \\"Total\\": \\"28\\",\\n \\"Processes\\": {\\n \\"Process\\": [\\n {\\n \\"ProcessName\\": \\"sshd\\",\\n \\"MatchExpressFilterRelation\\": \\"and\\",\\n \\"GroupId\\": \\"12345\\",\\n \\"Id\\": \\"3F6150F9-45C7-43F9-9578-A58B2E72****\\",\\n \\"MatchExpress\\": {\\n \\"MatchExpress\\": [\\n {\\n \\"Value\\": \\"portalHost\\",\\n \\"Name\\": \\"name\\",\\n \\"Function\\": \\"all\\"\\n }\\n ]\\n },\\n \\"AlertConfig\\": {\\n \\"AlertConfig\\": [\\n {\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"SilenceTime\\": \\"86400\\",\\n \\"Webhook\\": \\"http://www.aliyun.com\\",\\n \\"Times\\": \\"3\\",\\n \\"EscalationsLevel\\": \\"warn\\",\\n \\"NoEffectiveInterval\\": \\"00:00-23:59\\",\\n \\"EffectiveInterval\\": \\"00:00-23:59\\",\\n \\"Threshold\\": \\"5\\",\\n \\"Statistics\\": \\"Average\\",\\n \\"TargetList\\": {\\n \\"Target\\": [\\n {\\n \\"Id\\": \\"123\\",\\n \\"Arn\\": \\"acs:mns:cn-hangzhou:120886317861****:/queues/test/message\\",\\n \\"Level\\": \\"CRITICAL\\",\\n \\"JsonParmas\\": \\"{\\\\\\"customField1\\\\\\":\\\\\\"value1\\\\\\",\\\\\\"customField2\\\\\\":\\\\\\"$.name\\\\\\"}\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeGroupMonitoringAgentProcess>\\r\\n\\t\\t<RequestId>7985D471-3FA8-4EE9-8F4B-45C19DF3D36F</RequestId>\\r\\n\\t\\t<PageSize>10</PageSize>\\r\\n\\t\\t<PageNumber>1</PageNumber>\\r\\n\\t\\t<Total>28</Total>\\r\\n\\t\\t<Processes>\\r\\n\\t\\t\\t<Process>\\r\\n\\t\\t\\t\\t<ProcessName>sshd</ProcessName>\\r\\n\\t\\t\\t\\t<MatchExpressFilterRelation>and</MatchExpressFilterRelation>\\r\\n\\t\\t\\t\\t<Id>3F6150F9-45C7-43F9-9578-A58B2E72****</Id>\\r\\n\\t\\t\\t\\t<GroupId>12345</GroupId>\\r\\n\\t\\t\\t</Process>\\r\\n\\t\\t\\t<Process>\\r\\n\\t\\t\\t\\t<AlertConfig>\\r\\n\\t\\t\\t\\t\\t<AlertConfig>\\r\\n\\t\\t\\t\\t\\t\\t<Function>all</Function>\\r\\n\\t\\t\\t\\t\\t\\t<Value>portalHost</Value>\\r\\n\\t\\t\\t\\t\\t\\t<Name>name</Name>\\r\\n\\t\\t\\t\\t\\t</AlertConfig>\\r\\n\\t\\t\\t\\t\\t<AlertConfig>\\r\\n\\t\\t\\t\\t\\t\\t<NoEffectiveInterval>00:00-23:59</NoEffectiveInterval>\\r\\n\\t\\t\\t\\t\\t\\t<SilenceTime>86400</SilenceTime>\\r\\n\\t\\t\\t\\t\\t\\t<ComparisonOperator>GreaterThanOrEqualToThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t\\t\\t<Times>3</Times>\\r\\n\\t\\t\\t\\t\\t\\t<Webhook>http://www.aliyun.com</Webhook>\\r\\n\\t\\t\\t\\t\\t\\t<EffectiveInterval>00:00-23:59</EffectiveInterval>\\r\\n\\t\\t\\t\\t\\t\\t<EscalationsLevel>warn</EscalationsLevel>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>5</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertConfig>\\r\\n\\t\\t\\t\\t</AlertConfig>\\r\\n\\t\\t\\t\\t<MatchExpress>\\r\\n\\t\\t\\t\\t\\t<MatchExpress>\\r\\n\\t\\t\\t\\t\\t\\t<Function>all</Function>\\r\\n\\t\\t\\t\\t\\t\\t<Value>portalHost</Value>\\r\\n\\t\\t\\t\\t\\t\\t<Name>name</Name>\\r\\n\\t\\t\\t\\t\\t</MatchExpress>\\r\\n\\t\\t\\t\\t\\t<MatchExpress>\\r\\n\\t\\t\\t\\t\\t\\t<NoEffectiveInterval>00:00-23:59</NoEffectiveInterval>\\r\\n\\t\\t\\t\\t\\t\\t<SilenceTime>86400</SilenceTime>\\r\\n\\t\\t\\t\\t\\t\\t<ComparisonOperator>GreaterThanOrEqualToThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t\\t\\t<Times>3</Times>\\r\\n\\t\\t\\t\\t\\t\\t<Webhook>http://www.aliyun.com</Webhook>\\r\\n\\t\\t\\t\\t\\t\\t<EffectiveInterval>00:00-23:59</EffectiveInterval>\\r\\n\\t\\t\\t\\t\\t\\t<EscalationsLevel>warn</EscalationsLevel>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>5</Threshold>\\r\\n\\t\\t\\t\\t\\t</MatchExpress>\\r\\n\\t\\t\\t\\t</MatchExpress>\\r\\n\\t\\t\\t</Process>\\r\\n\\t\\t</Processes>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeGroupMonitoringAgentProcess>\\r\\n","errorExample":""}]',
+ 'title' => 'DescribeGroupMonitoringAgentProcess',
+ 'description' => 'You can create a process monitoring task to monitor all or the specified Elastic Compute Service (ECS) instances in an application group and configure alert rules for the process monitoring task.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateMonitorGroupNotifyPolicy' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PolicyType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The policy type. Valid value: PauseNotify.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'PauseNotify',
+ 'enum' => [
+ 'PauseNotify',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '7301****',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start time of the validity period for the policy.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '1622949300000',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end time of the validity period for the policy.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '1623208500000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '13356BCA-3EC3-4748-A771-2064DA69AEF1',
+ ],
+ 'Result' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 204 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error. ',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"13356BCA-3EC3-4748-A771-2064DA69AEF1\\",\\n \\"Result\\": 1,\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateMonitorGroupNotifyPolicyResponse>\\n\\t\\t<RequestId>13356BCA-3EC3-4748-A771-2064DA69AEF1</RequestId>\\n\\t\\t<Result>1</Result>\\n\\t\\t<Success>true</Success>\\n\\t\\t<Code>200</Code>\\n</CreateMonitorGroupNotifyPolicyResponse>","errorExample":""}]',
+ 'title' => 'CreateMonitorGroupNotifyPolicy',
+ 'summary' => 'Creates a policy to pause alert notifications for an application group.',
+ 'description' => 'If the policy is valid, no alert notifications are sent for the application group.'."\n"
+ ."\n"
+ .'This topic describes how to create a `PauseNotify` policy to pause alert notifications for the `7301****` application group. The StartTime parameter is set to `1622949300000` and the EndTime parameter is set to `1623208500000`. This indicates that the policy is valid from `2021-06-06 11:15:00 UTC+8` to `2021-06-09 11:15:00 UTC+8`.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteMonitorGroupNotifyPolicy' => [
+ 'summary' => 'Deletes a policy that is used to pause alert notifications for an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PolicyType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the policy.'."\n"
+ ."\n"
+ .'Valid value: PauseNotify.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'PauseNotify',
+ 'enum' => [
+ 'PauseNotify',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '6780****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'B7AF834D-D38B-4A46-920B-FE974EB7E135',
+ ],
+ 'Result' => [
+ 'description' => 'The number of affected rows.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error. ',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"B7AF834D-D38B-4A46-920B-FE974EB7E135\\",\\n \\"Result\\": 1,\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteMonitorGroupNotifyPolicyResponse>\\n <Result>1</Result>\\n <Success>true</Success>\\n <Code>200</Code>\\n</DeleteMonitorGroupNotifyPolicyResponse>","errorExample":""}]',
+ 'title' => 'DeleteMonitorGroupNotifyPolicy',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitorGroupNotifyPolicyList' => [
+ 'summary' => 'Queries the policies that are used to pause alert notifications for an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PolicyType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the policy.'."\n"
+ ."\n"
+ .'Valid value: PauseNotify.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'PauseNotify',
+ 'enum' => [
+ 'PauseNotify',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '6780****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '6072F026-C441-41A6-B114-35A1E8F8FDD3',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '11',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'NotifyPolicyList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NotifyPolicy' => [
+ 'description' => 'The returned policies.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'EndTime' => [
+ 'description' => 'The end of the time range to query.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1551761781273',
+ ],
+ 'Type' => [
+ 'description' => 'The policy type.'."\n",
+ 'type' => 'string',
+ 'example' => 'PauseNotify',
+ ],
+ 'StartTime' => [
+ 'description' => 'The beginning of the time range to query.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1551761781273',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '6780****',
+ ],
+ 'Id' => [
+ 'description' => 'The policy ID.'."\n",
+ 'type' => 'string',
+ 'example' => '123****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 204 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error. ',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"6072F026-C441-41A6-B114-35A1E8F8FDD3\\",\\n \\"Total\\": 11,\\n \\"Success\\": \\"true\\",\\n \\"NotifyPolicyList\\": {\\n \\"NotifyPolicy\\": [\\n {\\n \\"EndTime\\": 1551761781273,\\n \\"Type\\": \\"PauseNotify\\",\\n \\"StartTime\\": 1551761781273,\\n \\"GroupId\\": \\"6780****\\",\\n \\"Id\\": \\"123****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitorGroupNotifyPolicyListResponse>\\n <NotifyPolicyList>\\n <NotifyPolicy>\\n <Type>PauseNotify</Type>\\n <EndTime>1551763581273</EndTime>\\n <Id>123****</Id>\\n <StartTime>1551761781273</StartTime>\\n <GroupId>6780****</GroupId>\\n </NotifyPolicy>\\n </NotifyPolicyList>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Total>1</Total>\\n</DescribeMonitorGroupNotifyPolicyListResponse>","errorExample":""}]',
+ 'title' => 'DescribeMonitorGroupNotifyPolicyList',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'AddTags' => [
+ 'summary' => 'Adds tags to an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The tags.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3. A tag key can be 1 to 64 characters in length.'."\n"
+ ."\n"
+ .'You can create a tag key or specify an existing tag key. For more information about how to obtain a tag key, see [DescribeTagKeyList](~~2513189~~).'."\n"
+ ."\n"
+ .'> The tag key cannot start with `aliyun` or `acs:`. The tag key (`Tag.N.Key`) and tag value (`Tag.N.Value`) must be specified at the same time.',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'key1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 3. A tag value can be 1 to 64 characters in length.'."\n"
+ ."\n"
+ .'You can create a tag value or specify an existing tag value. For more information about how to obtain a tag value, see [DescribeTagValueList](~~2513188~~).'."\n"
+ ."\n"
+ .'> The tag value cannot start with `aliyun` or `acs:`. The tag key (`Tag.N.Key`) and tag value (`Tag.N.Value`) must be specified at the same time.',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'value1',
+ ],
+ ],
+ 'required' => false,
+ 'description' => '',
+ ],
+ 'required' => true,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'GroupIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 20.'."\n"
+ ."\n"
+ .'For information about how to query the IDs of application groups, see [DescribeMonitorGroups](~~2513168~~).',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'description' => '',
+ ],
+ 'required' => true,
+ 'example' => '7301****',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'DAE4B115-3847-5438-8709-423627F0A3A3',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"DAE4B115-3847-5438-8709-423627F0A3A3\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<AddTagsResponse>\\r\\n\\t<RequestId>DAE4B115-3847-5438-8709-423627F0A3A3</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</AddTagsResponse>\\t","errorExample":""}]',
+ 'title' => 'AddTags',
+ 'description' => 'This topic provides an example on how to add a tag to an application group whose ID is `7301****`. In this example, the key of the tag is `key1` and the value of the tag is `value1`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~315526~~).',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateDynamicTagGroup' => [
+ 'summary' => 'Creates an application group based on the tags of cloud resources.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TagKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The tag keys of the cloud resources.'."\n"
+ ."\n"
+ .'For more information about how to obtain tag keys, see [DescribeTagKeyList](~~145558~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs_instance',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroupList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert contact groups. Valid values of N: 1 to 100. The alert notifications of the application group are sent to the alert contacts that belong to the specified alert contact groups.'."\n"
+ ."\n"
+ .'An alert contact group can contain one or more alert contacts. For information about how to create alert contacts and alert contact groups, see [PutContact](~~114923~~) and [PutContactGroup](~~114929~~). For information about how to obtain alert contact groups, see [DescribeContactGroupList](~~114922~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'ECS_Group',
+ ],
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'ECS_Group',
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'MatchExpress',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The conditional expressions used to create an application group based on the tag.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The conditional expressions used to create an application group based on the tag. Valid values of N: 1 to 3.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'TagValueMatchFunction' => [
+ 'description' => 'The method that is used to match the tag values of the cloud resources. Set the value of N to 1. Valid values:'."\n"
+ ."\n"
+ .'* contains: contains'."\n"
+ .'* startWith: starts with a prefix'."\n"
+ .'* endWith: ends with a suffix'."\n"
+ .'* notContains: does not contain'."\n"
+ .'* equals: equals'."\n"
+ .'* all: matches all'."\n"
+ ."\n"
+ .'> If you set the `MatchExpress.N.TagValueMatchFunction` parameter, you must also set the `MatchExpress.N.TagValue` parameter.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'contains',
+ ],
+ 'TagValue' => [
+ 'description' => 'The tag values of the cloud resources. Set the value of N to 1.'."\n"
+ ."\n"
+ .'> If you set the `MatchExpress.N.TagValueMatchFunction` parameter, you must also set the `MatchExpress.N.TagValue` parameter.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'instance',
+ ],
+ 'TagName' => [
+ 'description' => 'The keys of the tags that are used to create the application group. If a specified key is attached to multiple resources, the resources that have the same key-value pair are added to the same group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'appname',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 3,
+ ],
+ ],
+ [
+ 'name' => 'TagRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the region to which the tags belong.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'EnableSubscribeEvent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether the application group automatically subscribes to event notifications. If events whose severity level is critical or warning occur on resources in an application group, CloudMonitor sends alert notifications. Valid values:'."\n"
+ ."\n"
+ .'* true: The application group automatically subscribes to event notifications.'."\n"
+ .'* false (default value): The application group does not automatically subscribe to event notifications.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'EnableInstallAgent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether the CloudMonitor agent is automatically installed for the application group. CloudMonitor determines whether to automatically install the CloudMonitor agent for the hosts in an application group based on the value of this parameter. Valid values:'."\n"
+ ."\n"
+ .'* true: The CloudMonitor agent is automatically installed.'."\n"
+ .'* false (default value): The CloudMonitor agent is not automatically installed.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'MatchExpressFilterRelation',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The relationship between the conditional expressions for the tag values of the cloud resources. Valid values:'."\n"
+ ."\n"
+ .'* and (default)'."\n"
+ .'* or'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'and',
+ 'default' => 'and',
+ ],
+ ],
+ [
+ 'name' => 'TemplateIdList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The IDs of the alert templates.'."\n"
+ ."\n"
+ .'For more information about how to query alert template IDs, see [DescribeMetricRuleTemplateList](~~114982~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '70****',
+ ],
+ 'required' => false,
+ 'example' => '85****',
+ 'maxItems' => 10,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call is successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '84AC6F0B-7945-466A-AA44-99BB5A561F86',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call is successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call is successful.'."\n"
+ .'* false: The call fails.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the tag matching rule.'."\n",
+ 'type' => 'string',
+ 'example' => '2534dc0a-e3e5-4ae1-a2fc-75ef166c****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ResourceOverLimit',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"84AC6F0B-7945-466A-AA44-99BB5A561F86\\",\\n \\"Success\\": true,\\n \\"Id\\": \\"2534dc0a-e3e5-4ae1-a2fc-75ef166c****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDynamicTagGroupResponse>\\r\\n\\t<RequestId>84AC6F0B-7945-466A-AA44-99BB5A561F86</RequestId>\\r\\n\\t<Id>2534dc0a-e3e5-4ae1-a2fc-75ef166c****</Id>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</CreateDynamicTagGroupResponse>\\t","errorExample":""}]',
+ 'title' => 'CreateDynamicTagGroup',
+ 'description' => 'This operation is available for Elastic Compute Service (ECS), ApsaraDB RDS, and Server Load Balancer (SLB).'."\n"
+ ."\n"
+ .'This topic provides an example to show how to create an application group for resources whose tag key is `ecs_instance`. In this example, the alert contact group of the application group is `ECS_Group`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteDynamicTagGroup' => [
+ 'summary' => 'Deletes a tag rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DynamicTagRuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the tag rule.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of a tag rule, see [DescribeDynamicTagRuleList](~~150126~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '6b882d9a-5117-42e2-9d0c-4749a0c6****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '08AAE67E-77B5-485B-9C79-D7C8C059150A',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"08AAE67E-77B5-485B-9C79-D7C8C059150A\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteDynamicTagGroupResponse>\\n <RequestId>08AAE67E-77B5-485B-9C79-D7C8C059150A</RequestId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteDynamicTagGroupResponse>","errorExample":""}]',
+ 'title' => 'DeleteDynamicTagGroup',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeTagValueList' => [
+ 'summary' => 'Queries the tag values corresponding to a specified tag key.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Valid values: 1 to 100. Default value: 50.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '100',
+ ],
+ ],
+ [
+ 'name' => 'TagKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The tag key.'."\n"
+ ."\n"
+ .'For more information about how to obtain a tag key, see [DescribeTagKeyList](~~145558~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'tagKey1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'B04B8CF3-4489-432D-83BA-6F128E4F2295',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'TagValues' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TagValue' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The queried tag values.'."\n",
+ 'type' => 'string',
+ 'example' => '["tagValue1", "tagValue2"]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"B04B8CF3-4489-432D-83BA-6F128E4F2295\\",\\n \\"Success\\": true,\\n \\"TagValues\\": {\\n \\"TagValue\\": [\\n \\"si-65d55ff37d6c4b4ea3b3\\"\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeTagValueList',
+ 'description' => 'This topic provides an example of how to query the tag values corresponding to `tagKey1`. The return results are `tagValue1` and `tagValue2`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeTagKeyList' => [
+ 'summary' => 'Queries tag keys.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Maximum value: 100. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '100',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Specified parameter PageSize is not valid.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'B04B8CF3-4489-432D-83BA-6F128E5F2293',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'TagKeys' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TagKey' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The queried tag keys.'."\n",
+ 'type' => 'string',
+ 'example' => 'tagKey1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Specified parameter PageSize is not valid.\\",\\n \\"RequestId\\": \\"B04B8CF3-4489-432D-83BA-6F128E5F2293\\",\\n \\"Success\\": true,\\n \\"TagKeys\\": {\\n \\"TagKey\\": [\\n \\"t0et07752s_\\"\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeTagKeyList',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeProductResourceTagKeyList' => [
+ 'summary' => 'Queries the keys of all tags that are attached to cloud resources in a region.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The pagination token.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'dbc2826f237e****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The request processing has failed due to some unknown error.',
+ ],
+ 'NextToken' => [
+ 'description' => 'The pagination token. If more entries are to be returned on the next page, a pagination token is returned.'."\n"
+ ."\n"
+ .'> If the value of this parameter is not null, more entries are to be returned on the next page. You can use the returned pagination token as a request parameter to retrieve a new page of results. If the value of this parameter is null, all the entries have been returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'dbc2826f237e****',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '945ACAA9-89F2-4A62-8913-076FDEDAA8DB',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'TagKeys' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TagKey' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The tag key.'."\n",
+ 'type' => 'string',
+ 'example' => 'tagKey1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"NextToken\\": \\"dbc2826f237e****\\",\\n \\"RequestId\\": \\"945ACAA9-89F2-4A62-8913-076FDEDAA8DB\\",\\n \\"Success\\": true,\\n \\"TagKeys\\": {\\n \\"TagKey\\": [\\n \\"tag_******\\"\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeProductResourceTagKeyList',
+ 'description' => '> If a tag is attached to multiple cloud resources in the region, the key of the tag is returned only once.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeDynamicTagRuleList' => [
+ 'summary' => 'Queries tag rules.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TagRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the region to which the tags belong.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'TagKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The tag key.'."\n"
+ ."\n"
+ .'For more information about how to obtain a tag key, see [DescribeTagKeyList](~~145558~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagkey1',
+ ],
+ ],
+ [
+ 'name' => 'TagValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The tag value.'."\n"
+ ."\n"
+ .'For more information about how to obtain a tag value, see [DescribeTagKeyList](~~145557~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '*',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of the page to return.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 1.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries to return on each page.'."\n"
+ ."\n"
+ .'Minimum value: 1. Default value: 30.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ ],
+ [
+ 'name' => 'DynamicTagRuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the tag rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '004155fa-15ba-466d-b61a-***********',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '0D50523D-8D59-4A61-B58E-E2286ECFB3A9',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries returned per page.'."\n",
+ 'type' => 'string',
+ 'example' => '30',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number of the returned page.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of returned entries.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'TagGroupList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TagGroup' => [
+ 'description' => 'The tag rules of application groups.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => 'The status of adding instances that meet the tag rule to the application group. Valid values:'."\n"
+ ."\n"
+ .'* `RUNNING`'."\n"
+ .'* `FINISH`'."\n",
+ 'type' => 'string',
+ 'example' => 'FINISH',
+ ],
+ 'MatchExpressFilterRelation' => [
+ 'description' => 'The logical operator that is used between conditional expressions. Valid values:'."\n"
+ ."\n"
+ .'* `and`'."\n"
+ .'* `or`'."\n"
+ ."\n"
+ .'> Only one logical operator can be used in a request.'."\n",
+ 'type' => 'string',
+ 'example' => 'or',
+ ],
+ 'RegionId' => [
+ 'description' => 'The ID of the region to which the tags belong.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'TagKey' => [
+ 'description' => 'The tag key.'."\n",
+ 'type' => 'string',
+ 'example' => 'tagkey1',
+ ],
+ 'DynamicTagRuleId' => [
+ 'description' => 'The ID of the tag rule.'."\n",
+ 'type' => 'string',
+ 'example' => '1536df65-a719-429d-8813-73cc40d7****',
+ ],
+ 'MatchExpress' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'MatchExpress' => [
+ 'description' => 'The conditional expressions used to create an application group based on the tag.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'TagValue' => [
+ 'description' => 'The tag value.'."\n"
+ ."\n"
+ .'The `TagValue` and `TagValueMatchFunction` parameters must be used in pairs.'."\n",
+ 'type' => 'string',
+ 'example' => '*',
+ ],
+ 'TagValueMatchFunction' => [
+ 'description' => 'The method that is used to match tag values. Valid values:'."\n"
+ ."\n"
+ .'* all: includes all'."\n"
+ .'* startWith: starts with a prefix'."\n"
+ .'* endWith: ends with a suffix'."\n"
+ .'* contains: contains'."\n"
+ .'* notContains: does not contain'."\n"
+ .'* equals: equals'."\n",
+ 'type' => 'string',
+ 'example' => 'all',
+ ],
+ 'TagKey' => [
+ 'description' => 'The tag key.'."\n",
+ 'type' => 'string',
+ 'example' => 'azone-version',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'TemplateIdList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TemplateIdList' => [
+ 'description' => 'The IDs of the alert templates.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '71****',
+ ],
+ ],
+ ],
+ ],
+ 'ContactGroupList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactGroupList' => [
+ 'description' => 'The alert contact group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'CloudMonitor',
+ ],
+ ],
+ ],
+ ],
+ 'TagValueBlacklist' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TagValueBlacklist' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0D50523D-8D59-4A61-B58E-E2286ECFB3A9\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"PageSize\\": \\"30\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"Total\\": 2,\\n \\"TagGroupList\\": {\\n \\"TagGroup\\": [\\n {\\n \\"Status\\": \\"FINISH\\",\\n \\"MatchExpressFilterRelation\\": \\"or\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"TagKey\\": \\"tagkey1\\",\\n \\"DynamicTagRuleId\\": \\"1536df65-a719-429d-8813-73cc40d7****\\",\\n \\"MatchExpress\\": {\\n \\"MatchExpress\\": [\\n {\\n \\"TagValue\\": \\"*\\",\\n \\"TagValueMatchFunction\\": \\"all\\",\\n \\"TagKey\\": \\"azone-version\\"\\n }\\n ]\\n },\\n \\"TemplateIdList\\": {\\n \\"TemplateIdList\\": [\\n \\"71****\\"\\n ]\\n },\\n \\"ContactGroupList\\": {\\n \\"ContactGroupList\\": [\\n \\"CloudMonitor\\"\\n ]\\n },\\n \\"TagValueBlacklist\\": {\\n \\"TagValueBlacklist\\": [\\n \\"test、offline\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDynamicTagRuleListResponse>\\r\\n\\t<PageSize>30</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<Total>2</Total>\\r\\n\\t<TagGroupList>\\r\\n\\t\\t<TagGroup>\\r\\n\\t\\t\\t<Status>FINISH</Status>\\r\\n\\t\\t\\t<ContactGroupList>\\r\\n\\t\\t\\t\\t<ContactGroupList>CloudMonitor</ContactGroupList>\\r\\n\\t\\t\\t</ContactGroupList>\\r\\n\\t\\t\\t<MatchExpressFilterRelation>or</MatchExpressFilterRelation>\\r\\n\\t\\t\\t<DynamicTagRuleId>1536df65-a719-429d-8813-73cc40d7****</DynamicTagRuleId>\\r\\n\\t\\t\\t<TemplateIdList>\\r\\n\\t\\t\\t\\t<TemplateIdList>71****</TemplateIdList>\\r\\n\\t\\t\\t</TemplateIdList>\\r\\n\\t\\t\\t<TagKey>tagkey1</TagKey>\\r\\n\\t\\t\\t<MatchExpress>\\r\\n\\t\\t\\t\\t<MatchExpress>\\r\\n\\t\\t\\t\\t\\t<TagValue>*</TagValue>\\r\\n\\t\\t\\t\\t\\t<TagValueMatchFunction>all</TagValueMatchFunction>\\r\\n\\t\\t\\t\\t</MatchExpress>\\r\\n\\t\\t\\t</MatchExpress>\\r\\n\\t\\t\\t<RegionId>cn-hangzhou</RegionId>\\r\\n\\t\\t</TagGroup>\\r\\n\\t\\t<TagGroup>\\r\\n\\t\\t\\t<Status>FINISH</Status>\\r\\n\\t\\t\\t<ContactGroupList>\\r\\n\\t\\t\\t\\t<ContactGroupList>CloudMonitor</ContactGroupList>\\r\\n\\t\\t\\t</ContactGroupList>\\r\\n\\t\\t\\t<MatchExpressFilterRelation>or</MatchExpressFilterRelation>\\r\\n\\t\\t\\t<DynamicTagRuleId>56e8cebb-b3d7-4a91-9880-78a8c84f****</DynamicTagRuleId>\\r\\n\\t\\t\\t<TemplateIdList>\\r\\n\\t\\t\\t\\t<TemplateIdList>71****</TemplateIdList>\\r\\n\\t\\t\\t</TemplateIdList>\\r\\n\\t\\t\\t<TagKey>tagkey1</TagKey>\\r\\n\\t\\t\\t<MatchExpress>\\r\\n\\t\\t\\t\\t<MatchExpress>\\r\\n\\t\\t\\t\\t\\t<TagValue>*</TagValue>\\r\\n\\t\\t\\t\\t\\t<TagValueMatchFunction>all</TagValueMatchFunction>\\r\\n\\t\\t\\t\\t</MatchExpress>\\r\\n\\t\\t\\t</MatchExpress>\\r\\n\\t\\t\\t<RegionId>cn-hangzhou</RegionId>\\r\\n\\t\\t</TagGroup>\\r\\n\\t</TagGroupList>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeDynamicTagRuleListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeDynamicTagRuleList',
+ 'description' => 'This topic provides an example to show how to query tag rules that are related to `tagkey1`. The sample responses indicate that two tag rules are found. The rule IDs are `1536df65-a719-429d-8813-73cc40d7****` and `56e8cebb-b3d7-4a91-9880-78a8c84f****`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'RemoveTags' => [
+ 'summary' => 'Deletes tags.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The tags.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key.'."\n"
+ ."\n"
+ .'> The tag key (`Tag.N.Key`) and tag value (`Tag.N.Value`) must be specified at the same time.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Key1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value.'."\n"
+ ."\n"
+ .'> The tag key (`Tag.N.Key`) and tag value (`Tag.N.Value`) must be specified at the same time.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Value1',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'GroupIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The IDs of the application groups.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'description' => '',
+ ],
+ 'required' => true,
+ 'example' => '12345',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Illegal parameters.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '195390D2-69D0-4D9E-81AA-A7F5BC1B91EB',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Tag' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tags' => [
+ 'description' => 'The deleted tags.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'tag1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Illegal parameters.\\",\\n \\"RequestId\\": \\"195390D2-69D0-4D9E-81AA-A7F5BC1B91EB\\",\\n \\"Success\\": true,\\n \\"Tag\\": {\\n \\"Tags\\": [\\n \\"tag1\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<RemoveTagsResponse>\\n\\t\\t<RequestId>E15C718E-067E-49D0-86F7-BC7242230091</RequestId>\\n\\t\\t<Code>200</Code>\\n\\t\\t<Success>true</Success>\\n</RemoveTagsResponse>","errorExample":""}]',
+ 'title' => 'RemoveTags',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateHostAvailability' => [
+ 'summary' => 'Creates an availability monitoring task.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'TaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the availability monitoring task. The name must be 4 to 100 characters in length, and can contain letters, digits, and underscores (\\_).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'task1',
+ ],
+ ],
+ [
+ 'name' => 'TaskScope',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The range of instances that are monitored by the availability monitoring task. Valid values:'."\n"
+ ."\n"
+ .'* GROUP: All ECS instances in the application group are monitored.'."\n"
+ .'* GROUP_SPEC_INSTANCE: Specified ECS instances in the application group are monitored. The TaskScope parameter must be used in combination with the InstanceList parameter. The InstanceList parameter specifies the ECS instances to be monitored.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GROUP',
+ 'default' => 'GROUP',
+ ],
+ ],
+ [
+ 'name' => 'TaskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The monitoring type of the availability monitoring task. Valid values:'."\n"
+ ."\n"
+ .'* PING'."\n"
+ .'* TELNET'."\n"
+ .'* HTTP'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'HTTP',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpURI',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The URI that you want to monitor. This parameter is required if the TaskType parameter is set to HTTP or Telnet.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.TelnetOrPingHost',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The domain name or IP address that you want to monitor.'."\n"
+ ."\n"
+ .'> This parameter is required if the TaskType parameter is set to PING.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpResponseCharset',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The character set that is used in the HTTP response.'."\n"
+ ."\n"
+ .'> Only UTF-8 is supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'UTF-8',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpPostContent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The content of the HTTP POST request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'params1=paramsValue1',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpResponseMatchContent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The response to the HTTP request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ok',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpMethod',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The HTTP request method. Valid values:'."\n"
+ ."\n"
+ .'* GET'."\n"
+ .'* POST'."\n"
+ .'* HEAD'."\n"
+ ."\n"
+ .'> This parameter must be specified when TaskType is set to HTTP.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GET',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpNegative',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The method to trigger an alert. The alert can be triggered based on whether the specified alert rule is included in the response body. Valid values:'."\n"
+ ."\n"
+ .'* true: If the HTTP response body includes the alert rule, an alert is triggered.'."\n"
+ .'* false: If the HTTP response does not include the alert rule, an alert is triggered.'."\n"
+ ."\n"
+ .'> This parameter must be specified when TaskType is set to HTTP.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpHeader',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The header of the HTTP request. Format: `Parameter name:Parameter value`. Separate multiple parameters with carriage return characters. Example:'."\n"
+ ."\n"
+ .' params1:value1'."\n"
+ .' params2:value2'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'token:testTokenValue',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.Interval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The interval at which detection requests are sent. Unit: seconds. Valid values: 15, 30, 60, 120, 300, 900, 1800, and 3600.'."\n"
+ ."\n"
+ .'> This parameter is available only for the CloudMonitor agent V3.5.1 or later.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.NotifyType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert notification methods. Valid values:'."\n"
+ ."\n"
+ .'0: Alert notifications are sent by using emails and DingTalk chatbots.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time range during which the alert rule is effective. Valid values: 0 to 23.'."\n"
+ ."\n"
+ .'For example, if the `AlertConfig.StartTime` parameter is set to 0 and the `AlertConfig.EndTime` parameter is set to 22, the alert rule is effective from 00:00:00 to 22:00:00.'."\n"
+ ."\n"
+ .'> Alert notifications are sent based on the specified threshold only if the alert rule is effective.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range during which the alert rule is effective. Valid values: 0 to 23.'."\n"
+ ."\n"
+ .'For example, if the `AlertConfig.StartTime` parameter is set to 0 and the `AlertConfig.EndTime` parameter is set to 22, the alert rule is effective from 00:00:00 to 22:00:00.'."\n"
+ ."\n"
+ .'> Alert notifications are sent based on the specified threshold only if the alert rule is effective.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.SilenceTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mute period during which new alerts are not sent even if the trigger conditions are met. Unit: seconds. Default value: 86400. The default value indicates one day.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '86400',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.WebHook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The callback URL.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com/webhook.json',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfigEscalationList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric for which the alert feature is enabled. Valid values of N: 1 to 21. Valid values:'."\n"
+ ."\n"
+ .'* HttpStatus: HTTP status code'."\n"
+ .'* HttpLatency: HTTP response time'."\n"
+ .'* TelnetStatus: Telnet status code'."\n"
+ .'* TelnetLatency: Telnet response time'."\n"
+ .'* PingLostRate: Ping packet loss rate'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'HttpStatus',
+ ],
+ 'Value' => [
+ 'description' => 'The alert threshold. Valid values of N: 1 to 21.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered. Valid values of N: 1 to 21.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Operator' => [
+ 'description' => 'The comparison operator that is used in the alert rule. Valid values of N: 1 to 21. Valid values:'."\n"
+ ."\n"
+ .'* `>`'."\n"
+ .'* `>=`'."\n"
+ .'* `<`'."\n"
+ .'* `<=`'."\n"
+ .'* `=`'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '>',
+ ],
+ 'Aggregate' => [
+ 'description' => 'The method used to calculate the metric values that trigger alerts. Valid values of N: 1 to 21. Valid values:'."\n"
+ ."\n"
+ .'* HttpStatus: Value'."\n"
+ .'* HttpLatency: Average'."\n"
+ .'* TelnetStatus: Value'."\n"
+ .'* TelnetLatency: Average'."\n"
+ .'* PingLostRate: Average'."\n"
+ ."\n"
+ .'> The value Value indicates the original value and is used for metrics such as status codes. The value Average indicates the average value and is used for metrics such as the latency and packet loss rate.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Value',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'InstanceList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The ECS instances that are monitored. Valid values of N: 1 to 21.'."\n"
+ ."\n"
+ .'> This parameter must be specified when `TaskScope` is set to `GROUP_SPEC_INSTANCE`.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The ECS instances that are monitored. Valid values of N: 1 to 21.'."\n"
+ ."\n"
+ .'> This parameter must be specified when `TaskScope` is set to `GROUP_SPEC_INSTANCE`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'required' => false,
+ 'example' => 'i-absdfkwl321****',
+ 'maxItems' => 1000,
+ ],
+ ],
+ [
+ 'name' => 'AlertConfigTargetList',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'The resources for which alerts are triggered.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The resource for which alerts are triggered.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the resource for which alerts are triggered.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the resource. Format: `acs:{Service name abbreviation}:{regionId}:{userId}:/{Resource type}/{Resource name}/message`. Example: `acs:mns:cn-hangzhou:120886317861****:/queues/test123/message`. Fields:'."\n"
+ ."\n"
+ .'* {Service name abbreviation}: the abbreviation of the service name. Set the value to Simple Message Queue (formerly MNS) (SMQ).'."\n"
+ ."\n"
+ .'* {userId}: the ID of the Alibaba Cloud account.'."\n"
+ ."\n"
+ .'* {regionId}: the region ID of the SMQ queue or topic.'."\n"
+ ."\n"
+ .'* {Resource type}: the type of the resource for which alerts are triggered. Valid values:'."\n"
+ ."\n"
+ .' * **queues**'."\n"
+ .' * **topics**'."\n"
+ ."\n"
+ .'* {Resource name}: the resource name.'."\n"
+ ."\n"
+ .' * If the resource type is **queues**, the resource name is the queue name.'."\n"
+ .' * If the resource type is **topics**, the resource name is the topic name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:mns:cn-hangzhou:120886317861****:/queues/test/message',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* INFO'."\n"
+ .'* WARN'."\n"
+ .'* CRITICAL'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["INFO", "WARN", "CRITICAL"]',
+ ],
+ 'JsonParams' => [
+ 'description' => 'The parameters of the alert callback. The parameters are in the JSON format.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"customField1":"value1","customField2":"$.name"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'ACBDBB40-DFB6-4F4C-8957-51FFB233969C',
+ ],
+ 'TaskId' => [
+ 'description' => 'The ID of the availability monitoring task.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12345',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Parameter invalid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => 'ResouceOverLimit',
+ 'errorMessage' => 'The task over limit',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"ACBDBB40-DFB6-4F4C-8957-51FFB233969C\\",\\n \\"TaskId\\": 12345,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateHostAvailabilityResponse>\\n\\t<TaskId>12345</TaskId>\\n\\t<RequestId>CDA78493-F10F-485F-98AD-B4C0B40AB225</RequestId>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</CreateHostAvailabilityResponse>","errorExample":""}]',
+ 'title' => 'CreateHostAvailability',
+ 'description' => 'This topic provides an example on how to create an availability monitoring task named `task1` in an application group named `123456`. The TaskType parameter of the task is set to `HTTP`. After you start the task, the system sends alerts by using the specified email address and DingTalk chatbot.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteHostAvailability' => [
+ 'summary' => 'Deletes availability monitoring tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The task ID. Valid values of N: 1 to 20.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'description' => '',
+ 'example' => '1191346',
+ ],
+ 'required' => true,
+ 'example' => '12456',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '57C782E6-B235-4842-AD2B-DB94961761EB',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"57C782E6-B235-4842-AD2B-DB94961761EB\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'DeleteHostAvailability',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'EnableHostAvailability' => [
+ 'summary' => 'Enables availability monitoring tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The ID of the availability monitoring task. Valid values of N: 1 to 20.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'description' => '',
+ ],
+ 'required' => true,
+ 'example' => '123456',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'User not authorized to operate on the specified resource.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'ACBDBB40-DFB6-4F4C-8957-51FFB233969C',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"User not authorized to operate on the specified resource.\\",\\n \\"RequestId\\": \\"ACBDBB40-DFB6-4F4C-8957-51FFB233969C\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'EnableHostAvailability',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DisableHostAvailability' => [
+ 'summary' => 'Disables availability monitoring tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The ID of the availability monitoring task. Valid values of N: 1 to 20.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'description' => '',
+ ],
+ 'required' => true,
+ 'example' => '12345',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'User not authorized to operate on the specified resource.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'ACBDBB40-DFB6-4F4C-8957-51FFB233969C',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"User not authorized to operate on the specified resource.\\",\\n \\"RequestId\\": \\"ACBDBB40-DFB6-4F4C-8957-51FFB233969C\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'DisableHostAvailability',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyHostAvailability' => [
+ 'summary' => 'Modifies an availability monitoring task.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the availability monitoring task.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '12345',
+ ],
+ ],
+ [
+ 'name' => 'TaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the availability monitoring task.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'task2',
+ ],
+ ],
+ [
+ 'name' => 'TaskScope',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The range of instances that are monitored by the availability monitoring task. Valid values:'."\n"
+ ."\n"
+ .'* GROUP: All ECS instances in the application group are monitored.'."\n"
+ .'* GROUP_SPEC_INSTANCE: Specified ECS instances in the application group are monitored. The TaskScope parameter must be used in combination with the InstanceList parameter. The InstanceList parameter specifies the ECS instances to be monitored.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GROUP',
+ 'default' => 'GROUP',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpURI',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The URI that you want to monitor. This parameter is required if the TaskType parameter is set to HTTP or Telnet.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.TelnetOrPingHost',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The domain name or IP address that you want to monitor.'."\n"
+ ."\n"
+ .'> This parameter is required if the TaskType parameter is set to PING. For more information about how to set the TaskType parameter, see [CreateHostAvailability](~~115317~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpResponseCharset',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The character set that is used in the HTTP response.'."\n"
+ ."\n"
+ .'> Only UTF-8 is supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'UTF-8',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpPostContent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The content of the HTTP POST request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'params1=value1',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpResponseMatchContent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The response to the HTTP request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ok',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpMethod',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The HTTP request method. Valid values:'."\n"
+ ."\n"
+ .'* GET'."\n"
+ .'* POST'."\n"
+ .'* HEAD'."\n"
+ ."\n"
+ .'> This parameter must be specified when TaskType is set to HTTP. For more information about how to configure the TaskType parameter, see [CreateHostAvailability](~~115317~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GET',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpNegative',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The method to trigger an alert. The alert can be triggered based on whether the specified alert rule is included in the response body. Valid values:'."\n"
+ ."\n"
+ .'* true: If the HTTP response body includes the alert rule, an alert is triggered.'."\n"
+ .'* false: If the HTTP response does not include the alert rule, an alert is triggered.'."\n"
+ ."\n"
+ .'> This parameter must be specified when TaskType is set to HTTP. For more information about how to configure the TaskType parameter, see [CreateHostAvailability](~~115317~~).'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.HttpHeader',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The header of the HTTP request. Format: `Parameter name:Parameter value`. Separate multiple parameters with carriage return characters. Example:'."\n"
+ ."\n"
+ .' params1:value1'."\n"
+ .' params2:value2'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'params1:value1',
+ ],
+ ],
+ [
+ 'name' => 'TaskOption.Interval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The interval at which detection requests are sent. Unit: seconds. Valid values: 15, 30, 60, 120, 300, 900, 1800, and 3600.'."\n"
+ ."\n"
+ .'> This parameter is available only for the CloudMonitor agent V3.5.1 or later.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.NotifyType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert notification methods. Valid values:'."\n"
+ ."\n"
+ .'0: Alert notifications are sent by using emails and DingTalk chatbots.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time range during which the alert rule is effective. Valid values: 0 to 23.'."\n"
+ ."\n"
+ .'For example, if the `AlertConfig.StartTime` parameter is set to 0 and the `AlertConfig.EndTime` parameter is set to 22, the alert rule is effective from 00:00:00 to 22:00:00.'."\n"
+ ."\n"
+ .'> Alert notifications are sent based on the specified threshold only if the alert rule is effective.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range during which the alert rule is effective. Valid values: 0 to 23.'."\n"
+ ."\n"
+ .'For example, if the `AlertConfig.StartTime` parameter is set to 0 and the `AlertConfig.EndTime` parameter is set to 22, the alert rule is effective from 00:00:00 to 22:00:00.'."\n"
+ ."\n"
+ .'> Alert notifications are sent based on the specified threshold only if the alert rule is effective.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.SilenceTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mute period during which new alerts are not sent even if the trigger conditions are met. Unit: seconds. Default value: 86400. The default value indicates one day.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '86400',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfig.WebHook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The callback URL.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com/webhook.json',
+ ],
+ ],
+ [
+ 'name' => 'AlertConfigEscalationList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The alert configurations.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert configurations.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric for which the alert feature is enabled. Valid values of N: 1 to 21. Valid values:'."\n"
+ ."\n"
+ .'* HttpStatus: HTTP status code'."\n"
+ .'* HttpLatency: HTTP response time'."\n"
+ .'* TelnetStatus: Telnet status code'."\n"
+ .'* TelnetLatency: Telnet response time'."\n"
+ .'* PingLostRate: Ping packet loss rate'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'HttpStatus',
+ ],
+ 'Value' => [
+ 'description' => 'The alert threshold. Valid values of N: 1 to 21.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered. Valid values of N: 1 to 21.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Operator' => [
+ 'description' => 'The comparison operator that is used in the alert rule. Valid values of N: 1 to 21. Valid values:'."\n"
+ ."\n"
+ .'* `>`'."\n"
+ .'* `>=`'."\n"
+ .'* `<`'."\n"
+ .'* `<=`'."\n"
+ .'* `=`'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '>',
+ ],
+ 'Aggregate' => [
+ 'description' => 'The method used to calculate the metric values that trigger alerts. Valid values of N: 1 to 21. The value of this parameter varies based on the metric. The following items show the correspondence between metrics and calculation methods:'."\n"
+ ."\n"
+ .'* HttpStatus: Value'."\n"
+ .'* HttpLatency: Average'."\n"
+ .'* TelnetStatus: Value'."\n"
+ .'* TelnetLatency: Average'."\n"
+ .'* PingLostRate: Average'."\n"
+ ."\n"
+ .'> The value Value indicates the original value and is used for metrics such as status codes. The value Average indicates the average value and is used for metrics such as the latency and packet loss rate.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Value',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'InstanceList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The ECS instances that are monitored. Valid values of N: 1 to 21.'."\n"
+ ."\n"
+ .'> This parameter must be specified when `TaskScope` is set to `GROUP_SPEC_INSTANCE`.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The ECS instances that are monitored. Valid values of N: 1 to 21.'."\n"
+ ."\n"
+ .'> This parameter must be specified when `TaskScope` is set to `GROUP_SPEC_INSTANCE`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'required' => false,
+ 'example' => 'i-absdfkwl321****',
+ 'maxItems' => 1000,
+ ],
+ ],
+ [
+ 'name' => 'AlertConfigTargetList',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'The information about the resources for which alerts are triggered.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The information about the resource for which alerts are triggered.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the resource for which alerts are triggered.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the resource.'."\n"
+ ."\n"
+ .'Format: `acs:{Service name abbreviation}:{regionId}:{userId}:/{Resource type}/{Resource name}/message`. Example: `acs:mns:cn-hangzhou:120886317861****:/queues/test123/message`. Fields:'."\n"
+ ."\n"
+ .'* {Service name abbreviation}: the abbreviation of the service name. Set the value to Simple Message Queue (formerly MNS) (SMQ).'."\n"
+ ."\n"
+ .'* {userId}: the ID of the Alibaba Cloud account.'."\n"
+ ."\n"
+ .'* {regionId}: the region ID of the SMQ queue or topic.'."\n"
+ ."\n"
+ .'* {Resource type}: the type of the resource for which alerts are triggered. Valid values:'."\n"
+ ."\n"
+ .' * **queues**'."\n"
+ .' * **topics**'."\n"
+ ."\n"
+ .'* {Resource name}: the resource name.'."\n"
+ ."\n"
+ .' * If the resource type is **queues**, the resource name is the queue name.'."\n"
+ .' * If the resource type is **topics**, the resource name is the topic name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:mns:cn-hangzhou:111:/queues/test/message',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* INFO'."\n"
+ .'* WARN'."\n"
+ .'* CRITICAL'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["INFO", "WARN", "CRITICAL"]',
+ ],
+ 'JsonParams' => [
+ 'description' => 'The parameters of the alert callback. The parameters are in the JSON format.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"customField1":"value1","customField2":"$.name"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '16E815A3-47E1-4290-87F9-D5C99471FF45',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"16E815A3-47E1-4290-87F9-D5C99471FF45\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ModifyHostAvailabilityResponse>\\n\\t\\t<RequestId>16E815A3-47E1-4290-87F9-D5C99471FF45</RequestId>\\n\\t\\t<Success>true</Success>\\n\\t\\t<Code>200</Code>\\n</ModifyHostAvailabilityResponse>","errorExample":""}]',
+ 'title' => 'ModifyHostAvailability',
+ 'description' => 'This topic provides an example on how to change the name of an availability monitoring task named `12345` in an application group named `123456` to `task2`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeUnhealthyHostAvailability' => [
+ 'summary' => 'Queries unhealthy instances detected by availability monitoring tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The ID of the availability monitoring task. Valid values of N: 1 to 20.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'description' => '',
+ ],
+ 'required' => true,
+ 'example' => '123456',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'User not authorized to operate on the specified resource.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'ACBDBB40-DFB6-4F4C-8957-51FFB233969C',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'UnhealthyList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NodeTaskInstance' => [
+ 'description' => 'The unhealthy instances that are detected by the specified availability monitoring tasks.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the availability monitoring task.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123456',
+ ],
+ 'InstanceList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'String' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The unhealthy instances that are detected by the availability monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-a34b581****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"User not authorized to operate on the specified resource.\\",\\n \\"RequestId\\": \\"ACBDBB40-DFB6-4F4C-8957-51FFB233969C\\",\\n \\"Success\\": true,\\n \\"UnhealthyList\\": {\\n \\"NodeTaskInstance\\": [\\n {\\n \\"Id\\": 0,\\n \\"InstanceList\\": {\\n \\"String\\": [\\n \\"i-*****\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeUnhealthyHostAvailability',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeHostAvailabilityList' => [
+ 'summary' => 'Queries availability monitoring tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the availability monitoring task.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'Ids',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The IDs of the availability monitoring tasks. Separate multiple IDs with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123456,345678',
+ ],
+ ],
+ [
+ 'name' => 'TaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the availability monitoring task.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs_instance',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Minimum value: 1. Default value: 10'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '12345',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '4A288E86-45C3-4858-9DB0-6D85B10BD92A',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of returned entries.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'TaskList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NodeTaskConfig' => [
+ 'description' => 'The details of the availability monitoring tasks.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskType' => [
+ 'description' => 'The task type. Valid values:'."\n"
+ ."\n"
+ .'* PING'."\n"
+ .'* TELNET'."\n"
+ .'* HTTP'."\n",
+ 'type' => 'string',
+ 'example' => 'HTTP',
+ ],
+ 'GroupName' => [
+ 'description' => 'The name of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => 'Group_ECS',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12345',
+ ],
+ 'TaskName' => [
+ 'description' => 'The name of the availability monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'ecs_instance',
+ ],
+ 'Disabled' => [
+ 'description' => 'Indicates whether the availability monitoring task is disabled. Valid values:'."\n"
+ ."\n"
+ .'* true: The availability monitoring task is disabled.'."\n"
+ .'* false: The availability monitoring task is enabled.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'TaskScope' => [
+ 'description' => 'The range of instances that are monitored by the availability monitoring task. Valid values:'."\n"
+ ."\n"
+ .'* GROUP: All ECS instances in the application group are monitored.'."\n"
+ .'* GROUP_SPEC_INSTANCE: Specified ECS instances in the application group are monitored.'."\n",
+ 'type' => 'string',
+ 'example' => 'GROUP',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the availability monitoring task.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123456',
+ ],
+ 'Instances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Instance' => [
+ 'description' => 'The ECS instances that are monitored.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The ID of the ECS instance.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-abcdefgh12****',
+ ],
+ ],
+ ],
+ ],
+ 'TaskOption' => [
+ 'description' => 'The optional parameters of the availability monitoring task.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'HttpMethod' => [
+ 'description' => 'The HTTP request method. Valid values:'."\n"
+ ."\n"
+ .'* GET'."\n"
+ .'* POST'."\n"
+ .'* HEAD'."\n",
+ 'type' => 'string',
+ 'example' => 'GET',
+ ],
+ 'Interval' => [
+ 'description' => 'The interval at which detection requests are sent. Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'HttpURI' => [
+ 'description' => 'The URI that you want to monitor. If the TaskType parameter is set to HTTP, this parameter is required.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://www.aliyun.com',
+ ],
+ 'TelnetOrPingHost' => [
+ 'description' => 'The domain name or IP address that you want to monitor.'."\n",
+ 'type' => 'string',
+ 'example' => 'ssh.aliyun.com',
+ ],
+ 'HttpResponseCharset' => [
+ 'description' => 'The character set that is used in the HTTP response.'."\n",
+ 'type' => 'string',
+ 'example' => 'UTF-8',
+ ],
+ 'HttpPostContent' => [
+ 'description' => 'The content of the HTTP POST request.'."\n",
+ 'type' => 'string',
+ 'example' => 'params1=paramsValue1',
+ ],
+ 'HttpNegative' => [
+ 'description' => 'The method to trigger an alert. The alert can be triggered based on whether the specified alert rule is included in the response body. Valid values:'."\n"
+ ."\n"
+ .'* true: If the HTTP response body includes the alert rule, an alert is triggered.'."\n"
+ .'* false: If the HTTP response does not include the alert rule, an alert is triggered.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'HttpKeyword' => [
+ 'description' => 'The response to the HTTP request.'."\n",
+ 'type' => 'string',
+ 'example' => 'OK',
+ ],
+ ],
+ ],
+ 'AlertConfig' => [
+ 'description' => 'The configurations of the alert rule.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alerts are not sent even if the trigger conditions are met. Unit: seconds. Default value: 86400.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '86400',
+ ],
+ 'EndTime' => [
+ 'description' => 'The end of the time period during which the alert rule is effective. Valid values: 0 to 23.'."\n"
+ ."\n"
+ .'For example, if the `AlertConfig.StartTime` parameter is set to 0 and the `AlertConfig.EndTime` parameter is set to 22, the alert rule is effective from 00:00:00 to 22:00:00.'."\n"
+ ."\n"
+ .'> Alert notifications are sent based on the specified threshold only if the alert rule is effective.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '22',
+ ],
+ 'StartTime' => [
+ 'description' => 'The beginning of the time period during which the alert rule is effective. Valid values: 0 to 23.'."\n"
+ ."\n"
+ .'For example, if the `AlertConfig.StartTime` parameter is set to 0 and the `AlertConfig.EndTime` parameter is set to 22, the alert rule is effective from 00:00:00 to 22:00:00.'."\n"
+ ."\n"
+ .'> Alert notifications are sent based on the specified threshold only if the alert rule is effective.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'WebHook' => [
+ 'description' => 'The callback URL.'."\n"
+ ."\n"
+ .'CloudMonitor pushes an alert notification to the specified callback URL by sending an HTTP POST request. Only the HTTP protocol is supported.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://www.aliyun.com',
+ ],
+ 'NotifyType' => [
+ 'description' => 'The alert notification methods. Valid values:'."\n"
+ ."\n"
+ .'* 2: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* 1: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* 0: Alert notifications are sent by using emails and DingTalk chatbots.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'EscalationList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'escalationList' => [
+ 'description' => 'The trigger conditions of the alert rule.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'example' => '400',
+ ],
+ 'MetricName' => [
+ 'description' => 'The name of the metric. Valid values:'."\n"
+ ."\n"
+ .'* HttpStatus'."\n"
+ .'* HttpLatency'."\n"
+ .'* TelnetStatus'."\n"
+ .'* TelnetLatency'."\n"
+ .'* PingLostRate'."\n",
+ 'type' => 'string',
+ 'example' => 'HttpStatus',
+ ],
+ 'Operator' => [
+ 'description' => 'The comparison operator that is used in the alert rule. Valid values:'."\n"
+ ."\n"
+ .'* `>`'."\n"
+ .'* `>=`'."\n"
+ .'* `<`'."\n"
+ .'* `<=`'."\n"
+ .'* `=`'."\n",
+ 'type' => 'string',
+ 'example' => '=',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value is measured before an alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Aggregate' => [
+ 'description' => 'The method used to calculate metric values that trigger alerts. Valid values:'."\n"
+ ."\n"
+ .'* Value: the value of the HTTP status code'."\n"
+ .'* Average: the average HTTP response time'."\n"
+ .'* Value: the value of the Telnet status code'."\n"
+ .'* TelnetLatency: the average Telnet response time'."\n"
+ .'* Average: the average Ping packet loss rate'."\n",
+ 'type' => 'string',
+ 'example' => 'Value',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'TargetList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Target' => [
+ 'description' => 'The monitored resources.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the resource that triggers the alert.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the function.'."\n"
+ ."\n"
+ .'Format: `arn:acs:${Service}:${Region}:${Account}:${ResourceType}/${ResourceId}`. Fields:'."\n"
+ ."\n"
+ .'* Service: the service code'."\n"
+ .'* Region: the region ID'."\n"
+ .'* Account: the ID of the Alibaba Cloud account'."\n"
+ .'* ResourceType: the resource type'."\n"
+ .'* ResourceId: the resource ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs:mns:cn-hangzhou:17754132319*****:/queues/test/messages',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* INFO'."\n"
+ .'* WARN'."\n"
+ .'* CRITICAL'."\n",
+ 'type' => 'string',
+ 'example' => 'INFO',
+ ],
+ 'JsonParams' => [
+ 'description' => 'The JSON-formatted parameters of the alert callback.'."\n",
+ 'type' => 'string',
+ 'example' => '{"key1":"value1"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"4A288E86-45C3-4858-9DB0-6D85B10BD92A\\",\\n \\"Total\\": 1,\\n \\"Success\\": true,\\n \\"TaskList\\": {\\n \\"NodeTaskConfig\\": [\\n {\\n \\"TaskType\\": \\"HTTP\\",\\n \\"GroupName\\": \\"Group_ECS\\",\\n \\"GroupId\\": 12345,\\n \\"TaskName\\": \\"ecs_instance\\",\\n \\"Disabled\\": false,\\n \\"TaskScope\\": \\"GROUP\\",\\n \\"Id\\": 123456,\\n \\"Instances\\": {\\n \\"Instance\\": [\\n \\"i-abcdefgh12****\\"\\n ]\\n },\\n \\"TaskOption\\": {\\n \\"HttpMethod\\": \\"GET\\",\\n \\"Interval\\": 60,\\n \\"HttpURI\\": \\"https://www.aliyun.com\\",\\n \\"TelnetOrPingHost\\": \\"ssh.aliyun.com\\",\\n \\"HttpResponseCharset\\": \\"UTF-8\\",\\n \\"HttpPostContent\\": \\"params1=paramsValue1\\",\\n \\"HttpNegative\\": true,\\n \\"HttpKeyword\\": \\"OK\\"\\n },\\n \\"AlertConfig\\": {\\n \\"SilenceTime\\": 86400,\\n \\"EndTime\\": 22,\\n \\"StartTime\\": 0,\\n \\"WebHook\\": \\"https://www.aliyun.com\\",\\n \\"NotifyType\\": 1,\\n \\"EscalationList\\": {\\n \\"escalationList\\": [\\n {\\n \\"Value\\": \\"400\\",\\n \\"MetricName\\": \\"HttpStatus\\",\\n \\"Operator\\": \\"=\\",\\n \\"Times\\": \\"3\\",\\n \\"Aggregate\\": \\"Value\\"\\n }\\n ]\\n },\\n \\"TargetList\\": {\\n \\"Target\\": [\\n {\\n \\"Id\\": \\"1\\",\\n \\"Arn\\": \\"acs:mns:cn-hangzhou:17754132319*****:/queues/test/messages\\",\\n \\"Level\\": \\"INFO\\",\\n \\"JsonParams\\": \\"{\\\\\\"key1\\\\\\":\\\\\\"value1\\\\\\"}\\"\\n }\\n ]\\n }\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHostAvailabilityListResponse>\\r\\n\\t<RequestId>4A288E86-45C3-4858-9DB0-6D85B10BD92A</RequestId>\\r\\n\\t<Total>1</Total>\\r\\n\\t<TaskList>\\r\\n\\t\\t<NodeTaskConfig>\\r\\n\\t\\t\\t<GroupName>Group_ECS</GroupName>\\r\\n\\t\\t\\t<TaskOption>\\r\\n\\t\\t\\t\\t<HttpURI>https://aliyun.com</HttpURI>\\r\\n\\t\\t\\t\\t<HttpMethod>GET</HttpMethod>\\r\\n\\t\\t\\t</TaskOption>\\r\\n\\t\\t\\t<AlertConfig>\\r\\n\\t\\t\\t\\t<NotifyType>1</NotifyType>\\r\\n\\t\\t\\t\\t<SilenceTime>86400</SilenceTime>\\r\\n\\t\\t\\t\\t<EndTime>22</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>0</StartTime>\\r\\n\\t\\t\\t\\t<EscalationList>\\r\\n\\t\\t\\t\\t\\t<escalationList>\\r\\n\\t\\t\\t\\t\\t\\t<Operator>=</Operator>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>HttpStatus</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<Times>3</Times>\\r\\n\\t\\t\\t\\t\\t\\t<Value>400</Value>\\r\\n\\t\\t\\t\\t\\t\\t<Aggregate>Value</Aggregate>\\r\\n\\t\\t\\t\\t\\t</escalationList>\\r\\n\\t\\t\\t\\t\\t<escalationList>\\r\\n\\t\\t\\t\\t\\t\\t<Operator>=</Operator>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>HttpLatency</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<Times>3</Times>\\r\\n\\t\\t\\t\\t\\t\\t<Value>500</Value>\\r\\n\\t\\t\\t\\t\\t\\t<Aggregate>Average</Aggregate>\\r\\n\\t\\t\\t\\t\\t</escalationList>\\r\\n\\t\\t\\t\\t</EscalationList>\\r\\n\\t\\t\\t</AlertConfig>\\r\\n\\t\\t\\t<TaskName>ecs_instance</TaskName>\\r\\n\\t\\t\\t<TaskScope>GROUP</TaskScope>\\r\\n\\t\\t\\t<TaskType>HTTP</TaskType>\\r\\n\\t\\t\\t<Id>123456</Id>\\r\\n\\t\\t\\t<Disabled>false</Disabled>\\r\\n\\t\\t\\t<GroupId>12345</GroupId>\\r\\n\\t\\t</NodeTaskConfig>\\r\\n\\t</TaskList>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeHostAvailabilityListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeHostAvailabilityList',
+ 'description' => 'This topic provides an example to show how to query all the availability monitoring tasks of your Alibaba Cloud account. The sample responses indicate that the account has one availability monitoring task named `ecs_instance`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'InstallMonitoringAgent' => [
+ 'summary' => 'InstallMonitoringAgent',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Force',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to install the CloudMonitor agent. Valid values:'."\n"
+ ."\n"
+ .'* true (default value): yes'."\n"
+ .'* false: no'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The IDs of the ECS instances.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 10.'."\n"
+ ."\n"
+ .'> You must specify either the `InstallCommand` or the `InstanceIds` parameter.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-m5e0k0bexac8tykr****',
+ ],
+ 'required' => false,
+ 'example' => 'i-m5e0k0bexac8tykr****',
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'InstallCommand',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to install the CloudMonitor agent on all ECS instances that belong to the current Alibaba Cloud account. Valid values:'."\n"
+ ."\n"
+ .'* `onlyInstallNotHasAgent`: installs the latest version of the CloudMonitor agent only on ECS instances on which the agent is not installed.'."\n"
+ .'* `onlyUpgradeAgent`: upgrades the CloudMonitor agent to the latest version only for ECS instances on which an earlier version of the agent is installed.'."\n"
+ .'* `installAndUpgrade`: installs the latest version of the CloudMonitor agent on ECS instances on which the agent is not installed, and upgrades the CloudMonitor agent to the latest version for ECS instances on which an earlier version of the agent is installed.'."\n"
+ ."\n"
+ .'> If you set the InstallCommand parameter, the `InstanceIds` parameter does not take effect.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'onlyInstallNotHasAgent',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '0BDAF8A8-04DC-5F0C-90E4-724D42C41945',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Parameter invalid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"0BDAF8A8-04DC-5F0C-90E4-724D42C41945\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<InstallMonitoringAgentResponse>\\r\\n\\t<RequestId>0BDAF8A8-04DC-5F0C-90E4-724D42C41945</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</InstallMonitoringAgentResponse>","errorExample":""}]',
+ 'title' => 'InstallMonitoringAgent',
+ 'description' => '## Prerequisites'."\n"
+ ."\n"
+ .'The Cloud Assistant client is installed on an ECS instance. For more information about how to install the Cloud Assistant client, see [Overview](~~64601~~).'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitoringAgentHosts' => [
+ 'summary' => 'Queries all hosts within the current Alibaba Cloud account, including hosts on which the CloudMonitor agent is installed and uninstalled.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyWord',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword that is used in fuzzy match.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'host1',
+ ],
+ ],
+ [
+ 'name' => 'HostName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the host.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hostNam1',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the instance.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-a3d1q1pm2f9yr29e****',
+ ],
+ ],
+ [
+ 'name' => 'SerialNumbers',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The serial number of the host.'."\n"
+ ."\n"
+ .'After the CloudMonitor agent is installed on a host, a globally unique serial number is generated. A host that is not provided by Alibaba Cloud has a serial number instead of an instance ID.'."\n"
+ ."\n"
+ .'> This parameter can be used to accurately search for a monitored host.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'a1ab31a3-1234-40f2-9e95-c8caa8f0****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of the page to return.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries to return on each page. Valid values:'."\n"
+ ."\n"
+ .'* 10'."\n"
+ .'* 20'."\n"
+ .'* 50'."\n"
+ .'* 100'."\n"
+ ."\n"
+ .'> Although Alibaba Cloud does not limit the maximum value of this parameter, we recommend that you do not set it to an excessively large value. If you set it to an excessively large value, a timeout error may occur.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'InstanceRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The region ID of the instance.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'AliyunHost',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to query Elastic Compute Service (ECS) instances that are provided by Alibaba Cloud or to query hosts that are not provided by Alibaba Cloud. Valid values:'."\n"
+ ."\n"
+ .'* true (default value): queries all the ECS instances that are provided by Alibaba Cloud.'."\n"
+ .'* false: queries all the hosts that are not provided by Alibaba Cloud.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of the hosts that you want to query. Valid values:'."\n"
+ ."\n"
+ .'* Running: queries the hosts that are running.'."\n"
+ .'* Stopped: queries the hosts that are stopped, are not installed, or fail to be installed.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Running',
+ ],
+ ],
+ [
+ 'name' => 'SysomStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of SysOM. Valid values:'."\n"
+ ."\n"
+ .'* installing: SysOM is being installed.'."\n"
+ .'* running: SysOM is running.'."\n"
+ .'* stopped: SysOM is stopped.'."\n"
+ .'* uninstalling: SysOM is being uninstalled.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'running',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The result of the request.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '63EEBB2A-9E51-41E4-9E83-5DE7F3B292E0',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call is successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call is successful.'."\n"
+ .'* false: The call fails.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call is successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number of the returned page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries returned per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'PageTotal' => [
+ 'description' => 'The total number of returned pages.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of returned entries.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'Hosts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Host' => [
+ 'description' => 'The information about the hosts.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The host.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SerialNumber' => [
+ 'description' => 'The serial number of the host. A host that is not provided by Alibaba Cloud has a serial number instead of an instance ID.'."\n"
+ ."\n"
+ .'> This parameter can be used to accurately search for a monitored host.'."\n",
+ 'type' => 'string',
+ 'example' => 'x12335-6cc8-4a22-9f21-1a00a719****',
+ ],
+ 'NatIp' => [
+ 'description' => 'The IP address of the Network Address Translation (NAT) gateway.'."\n",
+ 'type' => 'string',
+ 'example' => '192.168.XX.XX',
+ ],
+ 'HostName' => [
+ 'description' => 'The name of the host.'."\n",
+ 'type' => 'string',
+ 'example' => 'hostIP',
+ ],
+ 'AliUid' => [
+ 'description' => 'The ID of the Alibaba Cloud account.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '103201326074****',
+ ],
+ 'NetworkType' => [
+ 'description' => 'The network type.'."\n",
+ 'type' => 'string',
+ 'example' => 'vpc',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The ID of the instance.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-a2d5q7pm3f9yr212****',
+ ],
+ 'isAliyunHost' => [
+ 'description' => 'Indicates whether the host is provided by Alibaba Cloud. Valid values:'."\n"
+ ."\n"
+ .'* true: The host is provided by Alibaba Cloud.'."\n"
+ .'* false: The host is not provided by Alibaba Cloud.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'EipAddress' => [
+ 'description' => 'The elastic IP address (EIP) of the host.'."\n",
+ 'type' => 'string',
+ 'example' => '192.168.XX.XX',
+ ],
+ 'AgentVersion' => [
+ 'description' => 'The version of the CloudMonitor agent.'."\n",
+ 'type' => 'string',
+ 'example' => '3.4.6',
+ ],
+ 'IpGroup' => [
+ 'description' => 'The IP address of the host.'."\n"
+ ."\n"
+ .'> Multiple IP addresses are separated with commas (,).'."\n",
+ 'type' => 'string',
+ 'example' => '192.168.XX.XX',
+ ],
+ 'EipId' => [
+ 'description' => 'The ID of the EIP.'."\n",
+ 'type' => 'string',
+ 'example' => 'eip-bp16i16k9gcezyfrp****',
+ ],
+ 'Region' => [
+ 'description' => 'The ID of the region.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'InstanceTypeFamily' => [
+ 'description' => 'The type of the ECS instance.'."\n",
+ 'type' => 'string',
+ 'example' => 'ecs.n4',
+ ],
+ 'OperatingSystem' => [
+ 'description' => 'The operating system.'."\n",
+ 'type' => 'string',
+ 'example' => 'Linux',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"63EEBB2A-9E51-41E4-9E83-5DE7F3B292E0\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"PageTotal\\": 50,\\n \\"Total\\": 10,\\n \\"Hosts\\": {\\n \\"Host\\": [\\n {\\n \\"SerialNumber\\": \\"x12335-6cc8-4a22-9f21-1a00a719****\\",\\n \\"NatIp\\": \\"192.168.XX.XX\\",\\n \\"HostName\\": \\"hostIP\\",\\n \\"AliUid\\": 0,\\n \\"NetworkType\\": \\"vpc\\",\\n \\"InstanceId\\": \\"i-a2d5q7pm3f9yr212****\\",\\n \\"isAliyunHost\\": true,\\n \\"EipAddress\\": \\"192.168.XX.XX\\",\\n \\"AgentVersion\\": \\"3.4.6\\",\\n \\"IpGroup\\": \\"192.168.XX.XX\\",\\n \\"EipId\\": \\"eip-bp16i16k9gcezyfrp****\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"InstanceTypeFamily\\": \\"ecs.n4\\",\\n \\"OperatingSystem\\": \\"Linux\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitoringAgentHostsResponse>\\r\\n\\t\\t<Hosts>\\r\\n\\t\\t\\t<Host>\\r\\n\\t\\t\\t\\t<OperatingSystem>Windows</OperatingSystem>\\r\\n\\t\\t\\t\\t<SerialNumber>f0a434f2-632b-4588-95e6-202d4396****</SerialNumber>\\r\\n\\t\\t\\t\\t<isAliyunHost>true</isAliyunHost>\\r\\n\\t\\t\\t\\t<InstanceId>i-uf6hm9lnlzsarrc7****</InstanceId>\\r\\n\\t\\t\\t\\t<AgentVersion>3.4.6</AgentVersion>\\r\\n\\t\\t\\t\\t<NetworkType>vpc</NetworkType>\\r\\n\\t\\t\\t\\t<InstanceTypeFamily>ecs.g6</InstanceTypeFamily>\\r\\n\\t\\t\\t\\t<Region>cn-shanghai</Region>\\r\\n\\t\\t\\t\\t<IpGroup>192.168.XX.XX,192.168.XX.XX</IpGroup>\\r\\n\\t\\t\\t\\t<HostName>iZlzsarrc78****</HostName>\\r\\n\\t\\t\\t\\t<AliUid>103201326074****</AliUid>\\r\\n\\t\\t\\t</Host>\\r\\n\\t\\t\\t<Host>\\r\\n\\t\\t\\t\\t<OperatingSystem>Linux</OperatingSystem>\\r\\n\\t\\t\\t\\t<SerialNumber>9c336dc5-1802-4db0-b7a0-2d46ad4f****</SerialNumber>\\r\\n\\t\\t\\t\\t<isAliyunHost>true</isAliyunHost>\\r\\n\\t\\t\\t\\t<InstanceId>i-uf6hn19s56zumk9w****</InstanceId>\\r\\n\\t\\t\\t\\t<AgentVersion>3.4.4</AgentVersion>\\r\\n\\t\\t\\t\\t<NetworkType>vpc</NetworkType>\\r\\n\\t\\t\\t\\t<InstanceTypeFamily>ecs.g5</InstanceTypeFamily>\\r\\n\\t\\t\\t\\t<Region>cn-shanghai</Region>\\r\\n\\t\\t\\t\\t<IpGroup>192.168.XX.XX,192.168.XX.XX</IpGroup>\\r\\n\\t\\t\\t\\t<HostName>launch-advisor-2019****</HostName>\\r\\n\\t\\t\\t\\t<AliUid>103201326074****</AliUid>\\r\\n\\t\\t\\t</Host>\\r\\n\\t\\t</Hosts>\\r\\n\\t\\t<PageSize>100</PageSize>\\r\\n\\t\\t<PageNumber>1</PageNumber>\\r\\n\\t\\t<PageTotal>1</PageTotal>\\r\\n\\t\\t<Total>5</Total>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeMonitoringAgentHostsResponse>","errorExample":""}]',
+ 'title' => 'DescribeMonitoringAgentHosts',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitoringAgentAccessKey' => [
+ 'summary' => 'Queries the AccessKey ID and AccessKey secret that are required to install the CloudMonitor agent on a third-party host.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AccessKey' => [
+ 'description' => 'The AccessKey ID that is required to install the agent.'."\n",
+ 'type' => 'string',
+ 'example' => 'E7A27f9****',
+ ],
+ 'SecretKey' => [
+ 'description' => 'The AccessKey secret that is required to install the agent.'."\n",
+ 'type' => 'string',
+ 'example' => 'sBjNOUhLylrxMX-Xv1****',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'C0F655E9-D793-51E6-BD78-CABBCCFC1047',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"AccessKey\\": \\"E7A27f9****\\",\\n \\"SecretKey\\": \\"sBjNOUhLylrxMX-Xv1****\\",\\n \\"RequestId\\": \\"C0F655E9-D793-51E6-BD78-CABBCCFC1047\\",\\n \\"Success\\": true,\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitoringAgentAccessKeyResponse>\\n <SecretKey>sBjNOUhLylrxMX-Xv1****</SecretKey>\\n <RequestId>C0F655E9-D793-51E6-BD78-CABBCCFC1047</RequestId>\\n <AccessKey>E7A27f9****</AccessKey>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeMonitoringAgentAccessKeyResponse>","errorExample":""}]',
+ 'title' => 'DescribeMonitoringAgentAccessKey',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitoringAgentConfig' => [
+ 'summary' => 'Queries the configurations of the CloudMonitor agent.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnableActiveAlert' => [
+ 'description' => 'The cloud services for which proactive alerting is enabled.'."\n",
+ 'type' => 'string',
+ 'example' => 'redis,rds,ecs',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'E9F4FA2A-54BE-4EF9-9D1D-1A0B1DC86B8D',
+ ],
+ 'AutoInstall' => [
+ 'description' => 'Indicates whether the CloudMonitor agent is automatically installed on existing Elastic Compute Service (ECS) instances. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'EnableInstallAgentNewECS' => [
+ 'description' => 'Indicates whether the CloudMonitor agent is automatically installed on newly purchased ECS instances. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The specified parameter is not valid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'The Request is not authorization.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"EnableActiveAlert\\": \\"redis,rds,ecs\\",\\n \\"RequestId\\": \\"E9F4FA2A-54BE-4EF9-9D1D-1A0B1DC86B8D\\",\\n \\"AutoInstall\\": true,\\n \\"Success\\": true,\\n \\"EnableInstallAgentNewECS\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitoringAgentConfigResponse>\\r\\n\\t<AutoInstall>true</AutoInstall>\\r\\n\\t<EnableActiveAlert></EnableActiveAlert>\\r\\n\\t<EnableInstallAgentNewECS>true</EnableInstallAgentNewECS>\\r\\n\\t<RequestId>B4EB0F95-3181-4E8F-B32E-8C3734E8F88E</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeMonitoringAgentConfigResponse>","errorExample":""}]',
+ 'title' => 'DescribeMonitoringAgentConfig',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitoringAgentStatuses' => [
+ 'summary' => 'Queries the status of the CloudMonitor agent.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The instance IDs. Separate multiple instance IDs with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'i-hp3dunahluwajv6f****',
+ ],
+ ],
+ [
+ 'name' => 'HostAvailabilityTaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the availability monitoring task.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '126****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The results returned.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '6F8371DF-AB81-41B8-9E1B-5493B3FF0E4F',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'NodeStatusList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NodeStatus' => [
+ 'description' => 'The host status information.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => 'The status of the CloudMonitor agent. Valid values:'."\n"
+ ."\n"
+ .'* running: The CloudMonitor agent is running.'."\n"
+ .'* stopped: The CloudMonitor agent is stopped.'."\n"
+ .'* installing: The CloudMonitor agent is being installed.'."\n"
+ .'* install_faild: The CloudMonitor agent fails to be installed.'."\n"
+ .'* abnormal: The CloudMonitor agent is not properly installed.'."\n"
+ .'* not_installed: The CloudMonitor agent is not installed.'."\n",
+ 'type' => 'string',
+ 'example' => 'running',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-hp3dunahluwajv6f****',
+ ],
+ 'AutoInstall' => [
+ 'description' => 'Indicates whether the CloudMonitor agent is automatically installed. Valid values:'."\n"
+ ."\n"
+ .'* true: The CloudMonitor agent is automatically installed.'."\n"
+ .'* false: The CloudMonitor agent is not automatically installed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'OsMonitorStatus' => [
+ 'description' => 'The status of SysOM. Valid values:'."\n"
+ ."\n"
+ .'* installing: SysOM is being installed.'."\n"
+ .'* running: SysOM is running.'."\n"
+ .'* stopped: SysOM is stopped.'."\n"
+ .'* uninstalling: SysOM is being uninstalled.'."\n",
+ 'type' => 'string',
+ 'example' => 'running',
+ ],
+ 'OsMonitorErrorCode' => [
+ 'description' => 'The error status of SysOM. Valid values:'."\n"
+ ."\n"
+ .'* `install_fail`: SysOM fails to be installed or an unknown error occurs.'."\n"
+ .'* `install_assist_invalid`: SysOM fails to be installed because the status of Cloud Assistant is invalid.'."\n"
+ .'* `install_assist_command_fail`: SysOM fails to be installed because the installation command fails to run.'."\n"
+ .'* `uninstall_fail`: SysOM fails to be uninstalled or an unknown error occurs.'."\n"
+ .'* `uninstall_assist_invalid`: SysOM fails to be uninstalled because the status of Cloud Assistant is invalid.'."\n"
+ .'* `uninstall_assist_command_fail`: SysOM fails to be uninstalled because the uninstallation command fails to run.'."\n",
+ 'type' => 'string',
+ 'example' => 'install_fail',
+ ],
+ 'OsMonitorErrorDetail' => [
+ 'description' => 'The details of the execution error. Valid values:'."\n"
+ ."\n"
+ .'* `Command.ErrorCode.Fail.Downlaod.REGIN_ID`: Failed to obtain the region ID.'."\n"
+ .'* `Command.ErrorCode.Fail.Downlaod.SYSAK`: Failed to download the .rpm package of System Analyse Kit (SysAK).'."\n"
+ .'* `Command.ErrorCode.Fail.Downlaod.CMON_FILE`: Failed to download the CMON file.'."\n"
+ .'* `Command.ErrorCode.Fail.Downlaod.BTF`: Failed to start SysAK because the BTF file is not found.'."\n"
+ .'* `Command.ErrorCode.Fail.Start.SYSAK`: Failed to start SysAK due to an unknown error.'."\n",
+ 'type' => 'string',
+ 'example' => 'Command.ErrorCode.Fail.Downlaod.REGIN_ID',
+ ],
+ 'OsMonitorVersion' => [
+ 'description' => 'The SysOM version.'."\n",
+ 'type' => 'string',
+ 'example' => '1.3.0-12',
+ ],
+ 'OsMonitorConfig' => [
+ 'description' => 'Indicates whether the SysAK monitoring feature is enabled.`` Valid values:'."\n"
+ ."\n"
+ .'* `true`: The SysAK monitoring feature is enabled.'."\n"
+ .'* `false`: the SysAK monitoring feature is disabled.'."\n",
+ 'type' => 'string',
+ 'example' => '{"sysak":true}',
+ ],
+ 'AgentInstallErrorCode' => [
+ 'description' => 'The error code returned when the CloudMonitor agent is installed. Valid values:'."\n"
+ ."\n"
+ .'* Common.Timeout: The installation timed out.'."\n"
+ .'* Common.SLR: The service-linked role for CloudMonitor is unauthorized.'."\n"
+ .'* Common.OS: The operating system is not supported.'."\n"
+ .'* Assist.Invalid: Cloud Assistant is not running.'."\n"
+ .'* Assist.Invoke: An error occurred when the installation program is started.'."\n"
+ .'* Assist.Execute: An error occurred when the installation program is running.'."\n",
+ 'type' => 'string',
+ ],
+ 'LoongCollectorVersion' => [
+ 'type' => 'string',
+ ],
+ 'LoongCollectorStatus' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"6F8371DF-AB81-41B8-9E1B-5493B3FF0E4F\\",\\n \\"Success\\": true,\\n \\"NodeStatusList\\": {\\n \\"NodeStatus\\": [\\n {\\n \\"Status\\": \\"running\\",\\n \\"InstanceId\\": \\"i-hp3dunahluwajv6f****\\",\\n \\"AutoInstall\\": true,\\n \\"OsMonitorStatus\\": \\"running\\",\\n \\"OsMonitorErrorCode\\": \\"install_fail\\",\\n \\"OsMonitorErrorDetail\\": \\"Command.ErrorCode.Fail.Downlaod.REGIN_ID\\",\\n \\"OsMonitorVersion\\": \\"1.3.0-12\\",\\n \\"OsMonitorConfig\\": \\"{\\\\\\"sysak\\\\\\":true}\\",\\n \\"AgentInstallErrorCode\\": \\"Assist.Invalid\\",\\n \\"LoongCollectorVersion\\": \\"0.1.0\\",\\n \\"LoongCollectorStatus\\": \\"running\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitoringAgentStatusesResponse>\\n\\t<RequestId>6F8371DF-AB81-41B8-9E1B-5493B3FF0E4F</RequestId>\\n\\t<NodeStatusList>\\n\\t\\t<NodeStatus>\\n\\t\\t\\t<Status>running</Status>\\n\\t\\t\\t<AutoInstall>true</AutoInstall>\\n\\t\\t\\t<InstanceId>i-hp3dunahluwajv6f****</InstanceId>\\n\\t\\t</NodeStatus>\\n\\t</NodeStatusList>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</DescribeMonitoringAgentStatusesResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeMonitoringAgentStatuses',
+ 'description' => 'This topic describes how to query the status of the CloudMonitor agent that is installed on the `i-hp3dunahluwajv6f****` instance. The result indicates that the CloudMonitor agent is in the `running` state.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyHostInfo' => [
+ 'summary' => '修改非阿里云的主机显示信息',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the instance. Only hosts not on Alibaba Cloud are supported.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'host-R_NSWNV****',
+ ],
+ ],
+ [
+ 'name' => 'HostName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the host.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'portalHost',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => 'EBB5215C-44AB-4000-A2D7-48634FDC4F04',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. The value true indicates a success. The value false indicates a failure.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"EBB5215C-44AB-4000-A2D7-48634FDC4F04\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ModifyHostInfo>\\n\\t\\t<RequestId>EBB5215C-44AB-4000-A2D7-48634FDC4F04</RequestId>\\n\\t\\t<Success>true</Success>\\n\\t\\t<Code>200</Code>\\n</ModifyHostInfo>","errorExample":""}]',
+ 'title' => 'ModifyHostInfo',
+ 'description' => '****',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitoringConfig' => [
+ 'summary' => 'Queries the global configurations of the CloudMonitor agent.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'F35654DB-0C9D-4FB3-903F-479BA7663061',
+ ],
+ 'AutoInstall' => [
+ 'description' => 'Indicates whether the CloudMonitor agent is automatically installed on existing Elastic Compute Service (ECS) instances. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'EnableInstallAgentNewECS' => [
+ 'description' => 'Indicates whether the CloudMonitor agent is automatically installed on new ECS instances. Valid values: Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The specified parameter is not valid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'The Request is not authorization.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F35654DB-0C9D-4FB3-903F-479BA7663061\\",\\n \\"AutoInstall\\": false,\\n \\"Success\\": true,\\n \\"EnableInstallAgentNewECS\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitoringConfigResponse>\\r\\n\\t<AutoInstall>false</AutoInstall>\\r\\n\\t<EnableInstallAgentNewECS>true</EnableInstallAgentNewECS>\\r\\n\\t<RequestId>BA76F154-DE3F-442C-94D3-895E7ABC1BDE</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeMonitoringConfigResponse>","errorExample":""}]',
+ 'title' => 'DescribeMonitoringConfig',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutMonitoringConfig' => [
+ 'summary' => 'Configures global settings for the CloudMonitor agent.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AutoInstall',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'This parameter is deprecated.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'EnableInstallAgentNewECS',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to automatically install the CloudMonitor agent on new ECS instances. Valid values:'."\n"
+ ."\n"
+ .'* true (default): The CloudMonitor agent is automatically installed on new ECS instances.'."\n"
+ .'* false: The CloudMonitor agent is not automatically installed on new ECS instances.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Specified parameter EnableInstallAgentNewECS is not valid.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '109C8095-6FAD-4DBB-B013-6ED18CE4C0B1',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The specified parameter is not valid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'The Request is not authorization.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Specified parameter EnableInstallAgentNewECS is not valid.\\",\\n \\"RequestId\\": \\"109C8095-6FAD-4DBB-B013-6ED18CE4C0B1\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<PutMonitoringConfigResponse>\\n <RequestId>109C8095-6FAD-4DBB-B013-6ED18CE4C0B1</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n</PutMonitoringConfigResponse>","errorExample":""}]',
+ 'title' => 'PutMonitoringConfig',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'UninstallMonitoringAgent' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the host.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'host-****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Successfully',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '466902B9-2842-40B0-B796-00FE772B6EF3',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => 'AgentStateError',
+ 'errorMessage' => 'Expected agent running state is stopped.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successfully\\",\\n \\"RequestId\\": \\"466902B9-2842-40B0-B796-00FE772B6EF3\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UninstallMonitoringAgentResponse>\\n <RequestId>466902B9-2842-40B0-B796-00FE772B6EF3</RequestId>\\n <Code>200</Code>\\n <Message>Successfully</Message>\\n</UninstallMonitoringAgentResponse>","errorExample":""}]',
+ 'title' => 'UninstallMonitoringAgent',
+ 'summary' => 'Uninstalls the CloudMonitor agent from a third-party host.',
+ 'description' => '> This API operation is not applicable to Elastic Compute Service (ECS) instances. To uninstall the agent from an ECS instance, see [Install and uninstall the CloudMonitor agent](~~183482~~).'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateMonitoringAgentProcess' => [
+ 'summary' => 'Creates a task to monitor a process.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ProcessName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the process.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'java',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => ' i-2ze51wjtwox01r8g****',
+ ],
+ ],
+ [
+ 'name' => 'ProcessUser',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The user who launches the process.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'admin',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'User not authorized to operate on the specified resource.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '0DFCB47D-E7E1-4CBE-A381-8339F7B300EF',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Id' => [
+ 'description' => 'The process ID.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12345',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"User not authorized to operate on the specified resource.\\",\\n \\"RequestId\\": \\"0DFCB47D-E7E1-4CBE-A381-8339F7B300EF\\",\\n \\"Success\\": true,\\n \\"Id\\": 12345\\n}","errorExample":""},{"type":"xml","example":"<CreateMonitoringAgentProcessResponse>\\n <RequestId>0DFCB47D-E7E1-4CBE-A381-8339F7B300EF</RequestId>\\n <Id>171894</Id>\\n <Success>true</Success>\\n <Code>200</Code>\\n</CreateMonitoringAgentProcessResponse>","errorExample":""}]',
+ 'title' => 'CreateMonitoringAgentProcess',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateMonitorAgentProcess' => [
+ 'summary' => 'Creates a task to monitor a process.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ProcessName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The process name.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'AliYunDun',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-2ze2d6j5uhg20x47****',
+ ],
+ ],
+ [
+ 'name' => 'ProcessUser',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The user who launches the process.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'admin',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'User not authorized to operate on the specified resource.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '971CC023-5A96-452A-BB7C-2483F948BCFD',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Id' => [
+ 'description' => 'The process ID.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123456',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"User not authorized to operate on the specified resource.\\",\\n \\"RequestId\\": \\"971CC023-5A96-452A-BB7C-2483F948BCFD\\",\\n \\"Success\\": true,\\n \\"Id\\": 123456\\n}","errorExample":""},{"type":"xml","example":"<CreateMonitorAgentProcessResponse>\\n <RequestId>971CC023-5A96-452A-BB7C-2483F948BCFD</RequestId>\\n <Id>123456</Id>\\n <Success>true</Success>\\n <Code>200</Code>\\n</CreateMonitorAgentProcessResponse>","errorExample":""}]',
+ 'title' => 'CreateMonitorAgentProcess',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitoringAgentProcesses' => [
+ 'summary' => '查询指定资源的进程数列表',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the instance.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-hp3hl3cx1pbahzy8****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The value 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.',
+ 'type' => 'string',
+ 'example' => 'C11C0E85-6862-4F25-8D66-D6A5E0882984',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'NodeProcesses' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NodeProcess' => [
+ 'description' => 'The information about the processes.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ProcessName' => [
+ 'description' => 'The name of the process.'."\n",
+ 'type' => 'string',
+ 'example' => 'Nginx',
+ ],
+ 'ProcessId' => [
+ 'description' => 'The ID of the process.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '234567',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '3619****',
+ ],
+ 'Command' => [
+ 'description' => 'The command used to obtain the number of processes. Valid value: `number`.'."\n"
+ ."\n"
+ .'> The `number` command obtains the number of processes that match the condition.'."\n",
+ 'type' => 'string',
+ 'example' => 'number',
+ ],
+ 'ProcessUser' => [
+ 'description' => 'The user who launched the process.'."\n",
+ 'type' => 'string',
+ 'example' => 'alice',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The ID of the instance.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-hp3hl3cx1pbahzy8****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"C11C0E85-6862-4F25-8D66-D6A5E0882984\\",\\n \\"Success\\": true,\\n \\"NodeProcesses\\": {\\n \\"NodeProcess\\": [\\n {\\n \\"ProcessName\\": \\"java\\",\\n \\"ProcessId\\": 4550102,\\n \\"GroupId\\": \\"239708487\\",\\n \\"Command\\": \\"/bin/sh\\",\\n \\"ProcessUser\\": \\"admin\\",\\n \\"InstanceId\\": \\"host-gdsmvinvmh6fu\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeMonitoringAgentProcesses',
+ 'description' => '> Before you call this operation, call the CreateMonitoringAgentProcess operation to create processes. For more information, see [CreateMonitoringAgentProcess](~~114951~~~).'."\n"
+ ."\n"
+ .'This topic provides an example of how to query the processes of the `i-hp3hl3cx1pbahzy8****` instance. The response indicates the details of the `NGINX` and `HTTP` processes.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteMonitoringAgentProcess' => [
+ 'summary' => 'Disables monitoring on a process.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-KpVny6l****',
+ ],
+ ],
+ [
+ 'name' => 'ProcessName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The process name.'."\n"
+ ."\n"
+ .'> You must configure either `ProcessId` or `ProcessName`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http',
+ ],
+ ],
+ [
+ 'name' => 'ProcessId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The process ID.'."\n"
+ ."\n"
+ .'> You must configure either `ProcessId` or `ProcessName`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '971CC023-5A96-452A-BB7C-2483F948BCFD',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"971CC023-5A96-452A-BB7C-2483F948BCFD\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteMonitoringAgentProcessResponse>\\n <RequestId>EBB5215C-44AB-4000-A2D7-48634FDC4F04</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n</DeleteMonitoringAgentProcessResponse>","errorExample":""}]',
+ 'title' => 'DeleteMonitoringAgentProcess',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSystemEventHistogram' => [
+ 'summary' => 'Queries the number of times a system event occurred during each interval within a period of time.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the service name.'."\n"
+ ."\n"
+ .'> You can call the [DescribeSystemEventMetaList](~~114972~~) operation to query the abbreviations of service names.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'OSS',
+ ],
+ ],
+ [
+ 'name' => 'EventType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The event type.'."\n"
+ ."\n"
+ .'> You can call the [DescribeSystemEventMetaList](~~114972~~) operation to query the types of system events.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Exception',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The event name.'."\n"
+ ."\n"
+ .'> You can call the [DescribeSystemEventMetaList](~~114972~~) operation to query the names of system events.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'BucketIngressBandwidth',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The level of the event. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ .'* WARN'."\n"
+ .'* INFO'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CRITICAL',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The event status.'."\n"
+ ."\n"
+ .'> You can call the [DescribeSystemEventMetaList](~~114972~~) operation to query the status of system events.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'normal',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '12345',
+ ],
+ ],
+ [
+ 'name' => 'SearchKeywords',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keywords that are used to search for the system event. Valid values:'."\n"
+ ."\n"
+ .'* If you want to search for the system event whose content contains a and b, set the value to `a and b`.'."\n"
+ .'* If you want to search for the system event whose content contains a or b, set the value to `a or b`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cms',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start time.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552209685596',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end time.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552220485596',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '486029C9-53E1-44B4-85A8-16A571A043FD',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true: The request was successful. false: The request failed.'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'SystemEventHistograms' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SystemEventHistogram' => [
+ 'description' => 'The information about the number of times the system event occurred during each interval of a time period.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EndTime' => [
+ 'description' => 'The end time.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552225753000',
+ ],
+ 'StartTime' => [
+ 'description' => 'The start time.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552225770000',
+ ],
+ 'Count' => [
+ 'description' => 'The number of times the system event occurred.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '2',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"486029C9-53E1-44B4-85A8-16A571A043FD\\",\\n \\"Success\\": \\"true\\",\\n \\"SystemEventHistograms\\": {\\n \\"SystemEventHistogram\\": [\\n {\\n \\"EndTime\\": 1552225753000,\\n \\"StartTime\\": 1552225770000,\\n \\"Count\\": 2\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeSystemEventHistogram>\\r\\n\\t\\t<RequestId>E38CA81A-A012-4C59-B694-42AAFBE27ED2</RequestId>\\r\\n\\t\\t<SystemEventHistograms>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671700000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671684000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671730000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671700000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671760000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671730000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671790000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671760000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671820000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671790000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671850000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671820000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671880000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671850000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671910000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671880000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671940000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671910000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593671970000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671940000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672000000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593671970000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672030000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672000000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672060000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672030000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672090000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672060000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672120000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672090000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672150000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672120000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672180000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672150000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672210000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672180000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672240000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672210000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672270000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672240000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672300000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672270000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672330000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672300000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672360000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672330000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672390000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672360000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672420000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672390000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672450000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672420000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672480000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672450000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672510000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672480000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672540000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672510000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672570000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672540000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t\\t<SystemEventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1593672584000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1593672570000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</SystemEventHistogram>\\r\\n\\t\\t</SystemEventHistograms>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeSystemEventHistogram>\\r\\n","errorExample":""}]',
+ 'title' => 'DescribeSystemEventHistogram',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSystemEventMetaList' => [
+ 'summary' => 'Queries the meta information about system events.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'A6582C8B-E67C-4A19-BC15-EAEFEBDC7995',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The queried meta information.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => 'The status of the system event.'."\n",
+ 'type' => 'string',
+ 'example' => 'failed',
+ ],
+ 'EventType' => [
+ 'description' => 'The type of the system event. Valid values:'."\n"
+ ."\n"
+ .'* StatusNotification: fault notifications'."\n"
+ .'* Exception: exceptions'."\n"
+ .'* Maintenance: O\\&M'."\n",
+ 'type' => 'string',
+ 'example' => 'Exception',
+ ],
+ 'Product' => [
+ 'description' => 'The abbreviation of the service name.'."\n",
+ 'type' => 'string',
+ 'example' => 'ADS',
+ ],
+ 'NameDesc' => [
+ 'description' => 'The description of the event name.'."\n",
+ 'type' => 'string',
+ 'example' => 'High query failure rate',
+ ],
+ 'NameDesc.En' => [
+ 'description' => 'The description of the system event.'."\n",
+ 'type' => 'string',
+ 'example' => 'High query failure rate.',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the system event.'."\n",
+ 'type' => 'string',
+ 'example' => 'SelectFailureRate',
+ ],
+ 'StatusDesc' => [
+ 'description' => 'The description of the event status.'."\n",
+ 'type' => 'string',
+ 'example' => 'Operation Failed',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ .'* WARN'."\n"
+ .'* INFO'."\n",
+ 'type' => 'string',
+ 'example' => 'INFO',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"A6582C8B-E67C-4A19-BC15-EAEFEBDC7995\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Resource\\": [\\n {\\n \\"Status\\": \\"failed\\",\\n \\"EventType\\": \\"Exception\\",\\n \\"Product\\": \\"ADS\\",\\n \\"NameDesc\\": \\"查询失败率高\\",\\n \\"NameDesc.En\\": \\"High query failure rate.\\",\\n \\"Name\\": \\"SelectFailureRate\\",\\n \\"StatusDesc\\": \\"Operation Failed\\",\\n \\"Level\\": \\"INFO\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeSystemEventMetaListResponse>\\r\\n\\t\\t<RequestId>46350DCE-3399-473B-875F-1340DC97186C</RequestId>\\r\\n\\t\\t<Message>success</Message>\\r\\n\\t\\t<Data>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Status>Failed</Status>\\r\\n\\t\\t\\t\\t<StatusDesc>OperationFailed</StatusDesc>\\r\\n\\t\\t\\t\\t<NameDesc>插入失败率10%</NameDesc>\\r\\n\\t\\t\\t\\t<NameDesc.En>InsertFailureRate</NameDesc.En>\\r\\n\\t\\t\\t\\t<EventType>Exception</EventType>\\r\\n\\t\\t\\t\\t<Product>ADS</Product>\\r\\n\\t\\t\\t\\t<Level>CRITICAL</Level>\\r\\n\\t\\t\\t\\t<Name>InsertFailureRate</Name>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Status>Failed</Status>\\r\\n\\t\\t\\t\\t<StatusDesc>OptionFailed</StatusDesc>\\r\\n\\t\\t\\t\\t<NameDesc>查询失败率10%</NameDesc>\\r\\n\\t\\t\\t\\t<NameDesc.En>SelectFailureRate</NameDesc.En>\\r\\n\\t\\t\\t\\t<EventType>Exception</EventType>\\r\\n\\t\\t\\t\\t<Product>ADS</Product>\\r\\n\\t\\t\\t\\t<Level>CRITICAL</Level>\\r\\n\\t\\t\\t\\t<Name>SelectFailureRate</Name>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Status>Failed</Status>\\r\\n\\t\\t\\t\\t<StatusDesc>Operation Failed</StatusDesc>\\r\\n\\t\\t\\t\\t<NameDesc>磁盘使用率80%</NameDesc>\\r\\n\\t\\t\\t\\t<NameDesc.En>StorageUsage</NameDesc.En>\\r\\n\\t\\t\\t\\t<EventType>Maintenance</EventType>\\r\\n\\t\\t\\t\\t<Product>ADS</Product>\\r\\n\\t\\t\\t\\t<Level>CRITICAL</Level>\\r\\n\\t\\t\\t\\t<Name>StorageUsage</Name>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Status>EightyPercentQuotaExceeded</Status>\\r\\n\\t\\t\\t\\t<StatusDesc>超过Quota 80%事件</StatusDesc>\\r\\n\\t\\t\\t\\t<NameDesc>超过Quota 80%事件</NameDesc>\\r\\n\\t\\t\\t\\t<NameDesc.En>EightyPercentQuotaExceeded:Route</NameDesc.En>\\r\\n\\t\\t\\t\\t<EventType>80%QuotaExceeded</EventType>\\r\\n\\t\\t\\t\\t<Product>CEN</Product>\\r\\n\\t\\t\\t\\t<Level>WARN</Level>\\r\\n\\t\\t\\t\\t<Name>EightyPercentQuotaExceeded:Route</Name>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Status>NinetyEightPercentQuotaExceeded</Status>\\r\\n\\t\\t\\t\\t<StatusDesc>超过Quota 98%事件</StatusDesc>\\r\\n\\t\\t\\t\\t<NameDesc>超过Quota 98%事件</NameDesc>\\r\\n\\t\\t\\t\\t<NameDesc.En>NinetyEightPercentQuotaExceeded:Route</NameDesc.En>\\r\\n\\t\\t\\t\\t<EventType>98%QuotaExceeded</EventType>\\r\\n\\t\\t\\t\\t<Product>CEN</Product>\\r\\n\\t\\t\\t\\t<Level>WARN</Level>\\r\\n\\t\\t\\t\\t<Name>NinetyEightPercentQuotaExceeded:Route</Name>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t</Data>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeSystemEventMetaListResponse>","errorExample":""}]',
+ 'title' => 'DescribeSystemEventMetaList',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSystemEventAttribute' => [
+ 'summary' => 'Queries the details of a system event.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the service name.'."\n"
+ ."\n"
+ .'> You can call the [DescribeSystemEventMetaList](~~114972~~) operation to query the abbreviations of service names.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'oss',
+ ],
+ ],
+ [
+ 'name' => 'EventType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the system event.'."\n"
+ ."\n"
+ .'> You can call the [DescribeSystemEventMetaList](~~114972~~) operation to query the types of system events.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Exception',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the system event.'."\n"
+ ."\n"
+ .'> You can call the [DescribeSystemEventMetaList](~~114972~~) operation to query the names of system events.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'BucketIngressBandwidth',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The level of the system event. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL: critical'."\n"
+ .'* WARN: warning'."\n"
+ .'* INFO: information'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CRITICAL',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of the system event.'."\n"
+ ."\n"
+ .'> You can call the [DescribeSystemEventMetaList](~~114972~~) operation to query the statuses of system events.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'normal',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '12346',
+ ],
+ ],
+ [
+ 'name' => 'SearchKeywords',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keywords that are used to search for the system event. Valid values:'."\n"
+ ."\n"
+ .'* If you want to search for the system event whose content contains a and b, set the value to `a and b`.'."\n"
+ .'* If you want to search for the system event whose content contains a or b, set the value to `a or b`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cms',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time range to query.'."\n"
+ ."\n"
+ .'The value must be a UNIX timestamp. It is the number of seconds that have elapsed since 00:00:00 UTC, January 1, 1970.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552199984949',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query.'."\n"
+ ."\n"
+ .'The value must be a UNIX timestamp. It is the number of seconds that have elapsed since 00:00:00 UTC, January 1, 1970.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552221584949',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of the page to return.'."\n"
+ ."\n"
+ .'Valid values: 1 to 100000000.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries to return on each page.'."\n"
+ ."\n"
+ .'Valid values: 1 to 100.'."\n"
+ ."\n"
+ .'Default value: 10'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call is successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The message that is returned. If the call is successful, `success` is returned. If the call fails, an error message is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '60912C8D-B340-4253-ADE7-61ACDFD25CFC',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call is successful. Valid values: True: The call is successful. false: The call fails.'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'SystemEvents' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SystemEvent' => [
+ 'description' => 'The details of the event.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => 'The status of the event.'."\n",
+ 'type' => 'string',
+ 'example' => 'normal',
+ ],
+ 'Time' => [
+ 'description' => 'The time when the event occurred. The value is a timestamp.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552199984000',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '12345',
+ ],
+ 'Product' => [
+ 'description' => 'The abbreviation of the service name.'."\n",
+ 'type' => 'string',
+ 'example' => 'CloudMonitor',
+ ],
+ 'InstanceName' => [
+ 'description' => 'The instance name.'."\n",
+ 'type' => 'string',
+ 'example' => 'instanceId1',
+ ],
+ 'ResourceId' => [
+ 'description' => 'The resource ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'xxxxx-1',
+ ],
+ 'Name' => [
+ 'description' => 'The event name.'."\n",
+ 'type' => 'string',
+ 'example' => 'Agent_Status_Stopped',
+ ],
+ 'Content' => [
+ 'description' => 'The details of the event.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"product":"CloudMonitor","content":"{\\"ipGroup\\":\\"112.126.XX.XX,10.163.XX.XX\\",\\"tianjimonVersion\\":\\"1.2.22\\"}","groupId":"176,177,178,179,180,692,120812,1663836,96,2028302","time":"1552209568000","resourceId":"acs:ecs:cn-beijing:173651113438****:instance/i-25k35****","level":"CRITICAL","status":"stopped","instanceName":"cmssiteprobebj-6","name":"Agent_Status_Stopped","regionId":"cn-beijing"}]',
+ ],
+ 'Level' => [
+ 'description' => 'The level of the event. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ .'* WARN'."\n"
+ .'* INFO'."\n",
+ 'type' => 'string',
+ 'example' => 'WARN',
+ ],
+ 'RegionId' => [
+ 'description' => 'The region ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Id' => [
+ 'description' => 'The event ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'b936efc9-f621-4e8a-a6eb-076be40e****',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Parameter invalid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"60912C8D-B340-4253-ADE7-61ACDFD25CFC\\",\\n \\"Success\\": \\"true\\",\\n \\"SystemEvents\\": {\\n \\"SystemEvent\\": [\\n {\\n \\"Status\\": \\"normal\\",\\n \\"Time\\": 1552199984000,\\n \\"GroupId\\": \\"12345\\",\\n \\"Product\\": \\"CloudMonitor\\",\\n \\"InstanceName\\": \\"instanceId1\\",\\n \\"ResourceId\\": \\"xxxxx-1\\",\\n \\"Name\\": \\"Agent_Status_Stopped\\",\\n \\"Content\\": \\"[{\\\\\\"product\\\\\\":\\\\\\"CloudMonitor\\\\\\",\\\\\\"content\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"ipGroup\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"112.126.XX.XX,10.163.XX.XX\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tianjimonVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1.2.22\\\\\\\\\\\\\\"}\\\\\\",\\\\\\"groupId\\\\\\":\\\\\\"176,177,178,179,180,692,120812,1663836,96,2028302\\\\\\",\\\\\\"time\\\\\\":\\\\\\"1552209568000\\\\\\",\\\\\\"resourceId\\\\\\":\\\\\\"acs:ecs:cn-beijing:173651113438****:instance/i-25k35****\\\\\\",\\\\\\"level\\\\\\":\\\\\\"CRITICAL\\\\\\",\\\\\\"status\\\\\\":\\\\\\"stopped\\\\\\",\\\\\\"instanceName\\\\\\":\\\\\\"cmssiteprobebj-6\\\\\\",\\\\\\"name\\\\\\":\\\\\\"Agent_Status_Stopped\\\\\\",\\\\\\"regionId\\\\\\":\\\\\\"cn-beijing\\\\\\"}]\\",\\n \\"Level\\": \\"WARN\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Id\\": \\"b936efc9-f621-4e8a-a6eb-076be40e****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeSystemEventAttribute>\\r\\n\\t\\t<SystemEvents>\\r\\n\\t\\t\\t<SystemEvent>\\r\\n\\t\\t\\t\\t<Status>normal</Status>\\r\\n\\t\\t\\t\\t<InstanceName>instanceId1</InstanceName>\\r\\n\\t\\t\\t\\t<ResourceId>xxxxx-1</ResourceId>\\r\\n\\t\\t\\t\\t<Content>[{\\\\\\"product\\\\\\":\\\\\\"CloudMonitor\\\\\\",\\\\\\"content\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"ipGroup\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"112.126.XX.XX,10.163.XX.XX\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tianjimonVersion\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1.2.22\\\\\\\\\\\\\\"}\\\\\\",\\\\\\"groupId\\\\\\":\\\\\\"176,177,178,179,180,692,120812,1663836,96,2028302\\\\\\",\\\\\\"time\\\\\\":\\\\\\"1552209568000\\\\\\",\\\\\\"resourceId\\\\\\":\\\\\\"acs:ecs:cn-beijing:173651113438****:instance/i-25k35****\\\\\\",\\\\\\"level\\\\\\":\\\\\\"CRITICAL\\\\\\",\\\\\\"status\\\\\\":\\\\\\"stopped\\\\\\",\\\\\\"instanceName\\\\\\":\\\\\\"cmssiteprobebj-6\\\\\\",\\\\\\"name\\\\\\":\\\\\\"Agent_Status_Stopped\\\\\\",\\\\\\"regionId\\\\\\":\\\\\\"cn-beijing\\\\\\"}]</Content>\\r\\n\\t\\t\\t\\t<Product>CloudMonitor</Product>\\r\\n\\t\\t\\t\\t<Level>WARN</Level>\\r\\n\\t\\t\\t\\t<Time>1552199984000</Time>\\r\\n\\t\\t\\t\\t<RegionId>cn-hangzhou</RegionId>\\r\\n\\t\\t\\t\\t<Name>Agent_Status_Stopped</Name>\\r\\n\\t\\t\\t\\t<GroupId>12345</GroupId>\\r\\n\\t\\t\\t</SystemEvent>\\r\\n\\t\\t</SystemEvents>\\r\\n\\t\\t<Message>success</Message>\\r\\n\\t\\t<RequestId>60912C8D-B340-4253-ADE7-61ACDFD25CFC</RequestId>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeSystemEventAttribute>","errorExample":""}]',
+ 'title' => 'DescribeSystemEventAttribute',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSystemEventCount' => [
+ 'summary' => 'Queries the number of times that a system event of a cloud service has occurred.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the cloud service.'."\n"
+ ."\n"
+ .'You can call the DescribeSystemEventMetaList operation to obtain the value of the response parameter `Product`. The value of the Product parameter indicates the names of all cloud services in which the system events of your Alibaba Cloud account occurred. For more information, see [DescribeSystemEventMetaList](~~114972~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'EventType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the system event.'."\n"
+ ."\n"
+ .'You can call the DescribeSystemEventMetaList operation to obtain the value of the response parameter `EventType`. The value of the EventType parameter indicates the types of system events that occurred for all cloud services in your Alibaba Cloud account. For more information, see [DescribeSystemEventMetaList](~~114972~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'StatusNotification',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the system event.'."\n"
+ ."\n"
+ .'You can call the DescribeSystemEventMetaList operation to obtain the value of the response parameter `Name`. The value of the Name parameter indicates the names of system events that occurred for all cloud services in your Alibaba Cloud account. For more information, see [DescribeSystemEventMetaList](~~114972~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Instance:StateChange',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The level of the system event. Valid values:'."\n"
+ ."\n"
+ .'* Critical'."\n"
+ .'* Warn'."\n"
+ .'* Info'."\n"
+ ."\n"
+ .'You can call the DescribeSystemEventMetaList operation to obtain the value of the response parameter `Level`. The value of the Level parameter indicates the levels of system events that occurred for all cloud services in your Alibaba Cloud account. For more information, see [DescribeSystemEventMetaList](~~114972~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Info',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of the system event.'."\n"
+ ."\n"
+ .'You can call the DescribeSystemEventMetaList operation to obtain the value of the response parameter `Status`. The value of the Status parameter indicates the status of system events that occurred for all cloud services in your Alibaba Cloud account. For more information, see [DescribeSystemEventMetaList](~~114972~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Normal',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '17285****',
+ ],
+ ],
+ [
+ 'name' => 'SearchKeywords',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keywords that are used to search for the system event. Valid values:'."\n"
+ ."\n"
+ .'* If you want to search for the system event whose content contains a and b, set the value to `a and b`.'."\n"
+ .'* If you want to search for the system event whose content contains a or b, set the value to `a or b`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time range to query. Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1635993541000',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1635993921000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status codes.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n"
+ ."\n"
+ .'If the request was successful, a success message is returned. If the request failed, an error message is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'C7A7B776-0ACE-5A93-9B07-DE8008D9CCDF',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'SystemEventCounts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SystemEventCount' => [
+ 'description' => 'The details of the system event.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => 'The status of the system event.'."\n",
+ 'type' => 'string',
+ 'example' => 'Normal',
+ ],
+ 'Time' => [
+ 'description' => 'The time when the system event occurred. The value is a timestamp. Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1635993751000',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '17285****',
+ ],
+ 'Product' => [
+ 'description' => 'The name of the cloud service in which the system event occurred.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS',
+ ],
+ 'InstanceName' => [
+ 'description' => 'The name of the instance.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS-test',
+ ],
+ 'Num' => [
+ 'description' => 'The number of times that the system event has occurred.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3',
+ ],
+ 'ResourceId' => [
+ 'description' => 'The resource ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-rj99xc6cptkk64ml****',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the system event.'."\n",
+ 'type' => 'string',
+ 'example' => 'Instance:StateChange',
+ ],
+ 'Content' => [
+ 'description' => 'The description of the system event.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Level' => [
+ 'description' => 'The level of the system event. Valid values:'."\n"
+ ."\n"
+ .'* Critical'."\n"
+ .'* Warn'."\n"
+ .'* Info'."\n",
+ 'type' => 'string',
+ 'example' => 'Info',
+ ],
+ 'RegionId' => [
+ 'description' => 'The region ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"C7A7B776-0ACE-5A93-9B07-DE8008D9CCDF\\",\\n \\"Success\\": \\"true\\",\\n \\"SystemEventCounts\\": {\\n \\"SystemEventCount\\": [\\n {\\n \\"Status\\": \\"Normal\\",\\n \\"Time\\": 1635993751000,\\n \\"GroupId\\": \\"17285****\\",\\n \\"Product\\": \\"ECS\\",\\n \\"InstanceName\\": \\"ECS-test\\",\\n \\"Num\\": 3,\\n \\"ResourceId\\": \\"i-rj99xc6cptkk64ml****\\",\\n \\"Name\\": \\"Instance:StateChange\\",\\n \\"Content\\": \\"实例状态改变通知\\",\\n \\"Level\\": \\"Info\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeSystemEventCountResponse>\\r\\n\\t<Message>success</Message>\\r\\n\\t<RequestId>C7A7B776-0ACE-5A93-9B07-DE8008D9CCDF</RequestId>\\r\\n\\t<SystemEventCounts>\\r\\n\\t\\t<SystemEventCount>\\r\\n\\t\\t\\t<Num>3</Num>\\r\\n\\t\\t\\t<Product>ECS</Product>\\r\\n\\t\\t\\t<Time>1635993751000</Time>\\r\\n\\t\\t\\t<Name>Instance:StateChange</Name>\\r\\n\\t\\t</SystemEventCount>\\r\\n\\t</SystemEventCounts>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeSystemEventCountResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeSystemEventCount',
+ 'description' => '### [](#)Background information'."\n"
+ ."\n"
+ .'You can call the [DescribeSystemEventMetaList](~~114972~~) operation to query the cloud services supported by CloudMonitor and their system events.'."\n"
+ ."\n"
+ .'### [](#)Description'."\n"
+ ."\n"
+ .'This topic provides an example on how to query the number of times that a system event of `Elastic Compute Service (ECS)` has occurred. The returned result shows that the specified system event has occurred three times.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMonitorResourceQuotaAttribute' => [
+ 'summary' => 'Queries the resource quotas of CloudMonitor.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ShowUsed',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to return information about used quotas. Valid values:'."\n"
+ ."\n"
+ .'* true (default): yes'."\n"
+ .'* false: no'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '31BC7201-00F2-47B2-B7B9-6A173076ACE',
+ ],
+ 'ResourceQuota' => [
+ 'description' => 'The details about the resource quotas of CloudMonitor.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SuitInfo' => [
+ 'description' => 'The current edition of CloudMonitor. Valid values:'."\n"
+ ."\n"
+ .'* free: Free Edition'."\n"
+ .'* pro: Pro Edition'."\n"
+ .'* cms_post: pay-as-you-go'."\n",
+ 'type' => 'string',
+ 'example' => 'pro',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The ID of the resource plan.'."\n",
+ 'type' => 'string',
+ 'example' => 'cms_edition-cn-n6w20rn****',
+ ],
+ 'ExpireTime' => [
+ 'description' => 'The time when the resource plan expires.'."\n",
+ 'type' => 'string',
+ 'example' => '2021-02-28',
+ ],
+ 'SiteMonitorEcsProbe' => [
+ 'description' => 'The details about the quota of ECS detection points for site monitoring.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of ECS detection points for site monitoring.'."\n"
+ ."\n"
+ .'> The value indicates the maximum number of ECS detection points that you can select for a site monitoring task.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of ECS detection points for site monitoring in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of ECS detection points for site monitoring in your resource plan.'."\n"
+ ."\n"
+ .'> The value indicates the total number of ECS detection points that are used by existing site monitoring tasks.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ ],
+ ],
+ 'SiteMonitorOperatorProbe' => [
+ 'description' => 'The details about the quota of carrier detection points for site monitoring.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of carrier detection points for site monitoring.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of carrier detection points for site monitoring in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of carrier detection points for site monitoring in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ 'SiteMonitorTask' => [
+ 'description' => 'The quota of site monitoring tasks.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of site monitoring tasks.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '25',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of site monitoring tasks in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of site monitoring tasks in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ ],
+ ],
+ 'SiteMonitorBrowser' => [
+ 'description' => 'The quota of browser detection tasks.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of browser detection tasks.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of browser detection tasks in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of browser detection tasks in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ ],
+ ],
+ 'SiteMonitorMobile' => [
+ 'description' => 'The quota of mobile detection tasks.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of mobile detection tasks.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of mobile detection tasks in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of mobile detection tasks in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ ],
+ ],
+ 'CustomMonitor' => [
+ 'description' => 'The details about the quota for custom monitoring.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of the time series for custom monitoring.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1200',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of the time series for custom monitoring in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1000',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of the time series for custom monitoring in your resource plan.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8',
+ ],
+ ],
+ ],
+ 'EventMonitor' => [
+ 'description' => 'The details about the quota for event monitoring.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of events that can be reported in event monitoring. The total quota is the value that is multiplied by 10,000.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '55',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of events that can be reported in event monitoring in your resource plan. The total quota is the value that is multiplied by 10,000.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of events that can be reported in event monitoring in your resource plan. The total quota is the value that is multiplied by 10,000.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ ],
+ ],
+ 'LogMonitor' => [
+ 'description' => 'The details about the quota for log monitoring.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of processed log data in log monitoring. Unit: MB/min.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '150',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of processed log data in log monitoring in your resource plan. Unit: MB/min.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '150',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of processed log data in log monitoring in your resource plan. Unit: MB/min.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ ],
+ ],
+ 'Api' => [
+ 'description' => 'The details about the quota of API calls.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of API calls. Unit: 10,000 calls.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '500',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of API calls in your resource plan. Unit: 10,000 calls.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '500',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of API calls in your resource plan. Unit: calls.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '9987',
+ ],
+ ],
+ ],
+ 'SMS' => [
+ 'description' => 'The details about the quota of alert text messages.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of alert text messages. Unit: messages.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '550',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of alert text messages in your resource plan. Unit: messages.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '500',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of alert text messages in your resource plan. Unit: messages.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '38',
+ ],
+ ],
+ ],
+ 'Phone' => [
+ 'description' => 'The details about the quota of alert phone calls.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'QuotaLimit' => [
+ 'description' => 'The total quota of alert phone calls. Unit: calls.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '550',
+ ],
+ 'QuotaPackage' => [
+ 'description' => 'The quota of alert phone calls in your resource plan. Unit: calls.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '500',
+ ],
+ 'QuotaUsed' => [
+ 'description' => 'The used quota of alert phone calls in your resource plan. Unit: calls.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ ],
+ ],
+ 'EnterpriseQuota' => [
+ 'description' => 'The details about the quota of Hybrid Cloud Monitoring.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SuitInfo' => [
+ 'description' => 'The description of Hybrid Cloud Monitoring.'."\n",
+ 'type' => 'string',
+ 'example' => 'ENTERPRISE',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The ID of the instance monitored by Hybrid Cloud Monitoring.'."\n",
+ 'type' => 'string',
+ 'example' => 'cms_enterprise_public_cn-7mz27pd****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"31BC7201-00F2-47B2-B7B9-6A173076ACE\\",\\n \\"ResourceQuota\\": {\\n \\"SuitInfo\\": \\"pro\\",\\n \\"InstanceId\\": \\"cms_edition-cn-n6w20rn****\\",\\n \\"ExpireTime\\": \\"2021-02-28\\",\\n \\"SiteMonitorEcsProbe\\": {\\n \\"QuotaLimit\\": 5,\\n \\"QuotaPackage\\": 5,\\n \\"QuotaUsed\\": 20\\n },\\n \\"SiteMonitorOperatorProbe\\": {\\n \\"QuotaLimit\\": 5,\\n \\"QuotaPackage\\": 5,\\n \\"QuotaUsed\\": 0\\n },\\n \\"SiteMonitorTask\\": {\\n \\"QuotaLimit\\": 25,\\n \\"QuotaPackage\\": 20,\\n \\"QuotaUsed\\": 15\\n },\\n \\"SiteMonitorBrowser\\": {\\n \\"QuotaLimit\\": 50,\\n \\"QuotaPackage\\": 50,\\n \\"QuotaUsed\\": 15\\n },\\n \\"SiteMonitorMobile\\": {\\n \\"QuotaLimit\\": 50,\\n \\"QuotaPackage\\": 50,\\n \\"QuotaUsed\\": 15\\n },\\n \\"CustomMonitor\\": {\\n \\"QuotaLimit\\": 1200,\\n \\"QuotaPackage\\": 1000,\\n \\"QuotaUsed\\": 8\\n },\\n \\"EventMonitor\\": {\\n \\"QuotaLimit\\": 55,\\n \\"QuotaPackage\\": 50,\\n \\"QuotaUsed\\": 2\\n },\\n \\"LogMonitor\\": {\\n \\"QuotaLimit\\": 150,\\n \\"QuotaPackage\\": 150,\\n \\"QuotaUsed\\": 80\\n },\\n \\"Api\\": {\\n \\"QuotaLimit\\": 500,\\n \\"QuotaPackage\\": 500,\\n \\"QuotaUsed\\": 9987\\n },\\n \\"SMS\\": {\\n \\"QuotaLimit\\": 550,\\n \\"QuotaPackage\\": 500,\\n \\"QuotaUsed\\": 38\\n },\\n \\"Phone\\": {\\n \\"QuotaLimit\\": 550,\\n \\"QuotaPackage\\": 500,\\n \\"QuotaUsed\\": 100\\n },\\n \\"EnterpriseQuota\\": {\\n \\"SuitInfo\\": \\"ENTERPRISE\\",\\n \\"InstanceId\\": \\"cms_enterprise_public_cn-7mz27pd****\\"\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMonitorResourceQuotaAttributeResponse>\\r\\n\\t<RequestId>1E1961C4-B340-45D7-8CC3-F7D0BF19F2E0</RequestId>\\r\\n\\t<ResourceQuota>\\r\\n\\t\\t<SiteMonitorOperatorProbe>\\r\\n\\t\\t\\t<QuotaUsed>0</QuotaUsed>\\r\\n\\t\\t\\t<QuotaPackage>5</QuotaPackage>\\r\\n\\t\\t\\t<QuotaLimit>5</QuotaLimit>\\r\\n\\t\\t</SiteMonitorOperatorProbe>\\r\\n\\t\\t<InstanceId>cms_edition-cn-n6w20rn****</InstanceId>\\r\\n\\t\\t<Phone>\\r\\n\\t\\t\\t<QuotaUsed>100</QuotaUsed>\\r\\n\\t\\t\\t<QuotaPackage>500</QuotaPackage>\\r\\n\\t\\t\\t<QuotaLimit>550</QuotaLimit>\\r\\n\\t\\t</Phone>\\r\\n\\t\\t<SuitInfo>pro</SuitInfo>\\r\\n\\t\\t<SiteMonitorTask>\\r\\n\\t\\t\\t<QuotaUsed>7</QuotaUsed>\\r\\n\\t\\t\\t<QuotaPackage>20</QuotaPackage>\\r\\n\\t\\t\\t<QuotaLimit>20</QuotaLimit>\\r\\n\\t\\t</SiteMonitorTask>\\r\\n\\t\\t<SMS>\\r\\n\\t\\t\\t<QuotaUsed>38</QuotaUsed>\\r\\n\\t\\t\\t<QuotaPackage>500</QuotaPackage>\\r\\n\\t\\t\\t<QuotaLimit>550</QuotaLimit>\\r\\n\\t\\t</SMS>\\r\\n\\t\\t<LogMonitor>\\r\\n\\t\\t\\t<QuotaUsed>0</QuotaUsed>\\r\\n\\t\\t\\t<QuotaPackage>50</QuotaPackage>\\r\\n\\t\\t\\t<QuotaLimit>50</QuotaLimit>\\r\\n\\t\\t</LogMonitor>\\r\\n\\t\\t<Api>\\r\\n\\t\\t\\t<QuotaUsed>9987</QuotaUsed>\\r\\n\\t\\t\\t<QuotaPackage>500</QuotaPackage>\\r\\n\\t\\t\\t<QuotaLimit>500</QuotaLimit>\\r\\n\\t\\t</Api>\\r\\n\\t\\t<ExpireTime>2021-02-28</ExpireTime>\\r\\n\\t\\t<SiteMonitorEcsProbe>\\r\\n\\t\\t\\t<QuotaUsed>20</QuotaUsed>\\r\\n\\t\\t\\t<QuotaPackage>5</QuotaPackage>\\r\\n\\t\\t\\t<QuotaLimit>5</QuotaLimit>\\r\\n\\t\\t</SiteMonitorEcsProbe>\\r\\n\\t\\t<CustomMonitor>\\r\\n\\t\\t\\t<QuotaUsed>8</QuotaUsed>\\r\\n\\t\\t\\t<QuotaPackage>1000</QuotaPackage>\\r\\n\\t\\t\\t<QuotaLimit>1200</QuotaLimit>\\r\\n\\t\\t</CustomMonitor>\\r\\n\\t\\t<EventMonitor>\\r\\n\\t\\t\\t<QuotaUsed>2</QuotaUsed>\\r\\n\\t\\t\\t<QuotaPackage>50</QuotaPackage>\\r\\n\\t\\t\\t<QuotaLimit>55</QuotaLimit>\\r\\n\\t\\t</EventMonitor>\\r\\n\\t</ResourceQuota>\\r\\n\\t<Code>200</Code>\\r\\n</DescribeMonitorResourceQuotaAttributeResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeMonitorResourceQuotaAttribute',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'SendDryRunSystemEvent' => [
+ 'summary' => 'Debugs a system event of an Alibaba Cloud service.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the cloud service.'."\n"
+ ."\n"
+ .'> For information about the Alibaba Cloud services that are supported by CloudMonitor, see [Supported cloud services and their system events](~~167388~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'ecs',
+ ],
+ ],
+ [
+ 'name' => 'EventName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the system event.'."\n"
+ ."\n"
+ .'> For more information, see [DescribeSystemEventMetaList](~~114972~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'Agent_Status_Stopped',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'EventContent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The content of the system event.'."\n"
+ ."\n"
+ .'> The value of this parameter is a JSON object. We recommend that you include the `product`, `resourceId`, and `regionId` fields in the JSON object.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"product":"CloudMonitor","resourceId":"acs:ecs:cn-hongkong:173651113438****:instance/{instanceId}","level":"CRITICAL","instanceName":"instanceName","regionId":"cn-hangzhou","name":"Agent_Status_Stopped","content":{"ipGroup":"0.0.0.0,0.0.0.1","tianjimonVersion":"1.2.11"},"status":"stopped"}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '486029C9-53E1-44B4-85A8-16A571A043FD',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"486029C9-53E1-44B4-85A8-16A571A043FD\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<SendDryRunSystemEventResponse>\\r\\n\\t<Message>success</Message>\\r\\n\\t<RequestId>590FB642-5FFE-4AE0-883B-E1323DD20541</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</SendDryRunSystemEventResponse>\\t","errorExample":""}]',
+ 'title' => 'SendDryRunSystemEvent',
+ 'description' => 'This operation is used to test whether a system event can be triggered as expected. You can call this operation to simulate a system event and check whether an expected response is returned after the system event triggers an alert.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeCustomEventCount' => [
+ 'summary' => 'Queries the number of times that a custom event occurred within a period of time.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The event name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'BABEL_BUY',
+ ],
+ ],
+ [
+ 'name' => 'EventId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The event ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '12345',
+ ],
+ ],
+ [
+ 'name' => 'SearchKeywords',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keywords that are used to search for the event.'."\n"
+ ."\n"
+ .'* If you need to query the custom event whose content contains a and b, set the value to a and b.'."\n"
+ .'* If you need to query the custom event whose content contains a or b, set the value to a or b.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cms',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time range to query.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552209685596',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552220485596',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message. If the request was successful, a success message is returned. If the request failed, an error message is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '60912C8D-B340-4253-ADE7-61ACDFD25CFC',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'CustomEventCounts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'CustomEventCount' => [
+ 'description' => 'The details of the custom event.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Time' => [
+ 'description' => 'The time when the event occurred.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552267615000',
+ ],
+ 'Num' => [
+ 'description' => 'The number of times that the custom event occurred.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'Name' => [
+ 'description' => 'The event name.'."\n",
+ 'type' => 'string',
+ 'example' => 'BABEL_BUY',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"60912C8D-B340-4253-ADE7-61ACDFD25CFC\\",\\n \\"Success\\": true,\\n \\"CustomEventCounts\\": {\\n \\"CustomEventCount\\": [\\n {\\n \\"Time\\": 1552267615000,\\n \\"Num\\": 20,\\n \\"Name\\": \\"BABEL_BUY\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeCustomEventCount>\\n\\t\\t<CustomEventCounts>\\n\\t\\t\\t<CustomEventCount>\\n\\t\\t\\t\\t<Name>BABEL_BUY</Name>\\n\\t\\t\\t\\t<Time>1552267615000</Time>\\n\\t\\t\\t\\t<Num>20</Num>\\n\\t\\t\\t</CustomEventCount>\\n\\t\\t</CustomEventCounts>\\n\\t\\t<Message>success</Message>\\n\\t\\t<RequestId>38D3C270-6799-4461-AA55-7975352140C1</RequestId>\\n\\t\\t<Code>200</Code>\\n\\t\\t<Success>true</Success>\\n</DescribeCustomEventCount>","errorExample":""}]',
+ 'title' => 'DescribeCustomEventCount',
+ 'description' => '> This operation queries the number of times that a custom event occurred for each service.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeCustomEventHistogram' => [
+ 'summary' => 'Queries the number of times that a custom event occurred during each interval within a period of time.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The event name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'BucketIngressBandwidth',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The severity level of the event. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ .'* WARN'."\n"
+ .'* INFO'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CRITICAL',
+ ],
+ ],
+ [
+ 'name' => 'EventId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The event ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '12345',
+ ],
+ ],
+ [
+ 'name' => 'SearchKeywords',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keywords that are used to search for the event.'."\n"
+ ."\n"
+ .'* If you need to query the custom event whose content contains a and b, set the value to "a and b".'."\n"
+ .'* If you need to query the custom event whose content contains a or b, set the value to "a or b".'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cms',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time range to query.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552209685596',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552220485596',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message. If the request was successful, a success message is returned. If the request failed, an error message is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '486029C9-53E1-44B4-85A8-16A571A043FD',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'EventHistograms' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EventHistogram' => [
+ 'description' => 'The information about the number of times that the custom event occurred during each interval of the specified time period.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EndTime' => [
+ 'description' => 'The end time.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552226750000',
+ ],
+ 'StartTime' => [
+ 'description' => 'The start time.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552226740000',
+ ],
+ 'Count' => [
+ 'description' => 'The information about the number of times that the custom event occurred during an interval of the specified time period.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"486029C9-53E1-44B4-85A8-16A571A043FD\\",\\n \\"Success\\": \\"true\\",\\n \\"EventHistograms\\": {\\n \\"EventHistogram\\": [\\n {\\n \\"EndTime\\": 1552226750000,\\n \\"StartTime\\": 1552226740000,\\n \\"Count\\": 3\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeCustomEventHistogramResponse>\\r\\n\\t\\t<Message>success</Message>\\r\\n\\t\\t<RequestId>5977C7EE-E727-4EC4-B756-ECC8CB820CF4</RequestId>\\r\\n\\t\\t<EventHistograms>\\r\\n\\t\\t\\t<EventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1596000690000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1596000689000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</EventHistogram>\\r\\n\\t\\t\\t<EventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1596000720000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1596000690000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</EventHistogram>\\r\\n\\t\\t\\t<EventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1596000930000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1596000900000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</EventHistogram>\\r\\n\\t\\t\\t<EventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1596000960000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1596000930000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</EventHistogram>\\r\\n\\t\\t\\t<EventHistogram>\\r\\n\\t\\t\\t\\t<EndTime>1596000990000</EndTime>\\r\\n\\t\\t\\t\\t<StartTime>1596000960000</StartTime>\\r\\n\\t\\t\\t\\t<Count>0</Count>\\r\\n\\t\\t\\t</EventHistogram>\\r\\n\\t\\t</EventHistograms>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeCustomEventHistogramResponse>\\r\\n","errorExample":""}]',
+ 'title' => 'DescribeCustomEventHistogram',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeCustomEventAttribute' => [
+ 'summary' => 'Queries the details of a custom event.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The event name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test123',
+ ],
+ ],
+ [
+ 'name' => 'EventId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The event ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123****',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123****',
+ ],
+ ],
+ [
+ 'name' => 'SearchKeywords',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keywords that are used to search for the event.'."\n"
+ ."\n"
+ .'* If you need to query the custom event whose content contains a and b, set the value to a and b.'."\n"
+ .'* If you need to query the custom event whose content contains a or b, set the value to a or b.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cms',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time range to query.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552224365971',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1552227965971',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'userId:173651113438**** and name:"BABEL_CHECK"',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '60912C8D-B340-4253-ADE7-61ACDFD25CFC',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'CustomEvents' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'CustomEvent' => [
+ 'description' => 'The event details.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Time' => [
+ 'description' => 'The time when the event occurred.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'string',
+ 'example' => '1552199984000',
+ ],
+ 'Name' => [
+ 'description' => 'The event name.'."\n",
+ 'type' => 'string',
+ 'example' => 'BABEL_CHECK',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '12345',
+ ],
+ 'Content' => [
+ 'description' => 'The content of the event.'."\n",
+ 'type' => 'string',
+ 'example' => 'requestId:4975A6F3-19AC-4C01-BAD2-034DA07FEBB5, info:{"autoPay":false,"autoUseCoupon":false,"bid":"26842","buyerId":118935342242****,"commodities":[{"aliyunProduceCode":"cms","chargeType":"PREPAY","commodityCode":"cms_call_num","components":[{"componentCode":"phone_count","instanceProperty":[{"code":"phone_count","value":"500"}],"moduleAttrStatus":1}],"duration":6,"free":false,"orderParams":{"aliyunProduceCode":"cms"},"orderType":"BUY","prePayPostCharge":false,"pricingCycle":"Month","quantity":1,"refundSpecCode":"","renewChange":false,"specCode":"cms_call_num","specUpdate":false,"syncToSubscription":false,"upgradeInquireFinancialValue":true}],"fromApp":"commonbuy","orderParams":{"priceCheck":"true"},"payerId":118935342242****,"requestId":"ade3ad32-f58b-45d7-add4-ac542be3d8ec","skipChannel":false,"userId":118935342242****}',
+ ],
+ 'Id' => [
+ 'description' => 'The event ID.'."\n",
+ 'type' => 'string',
+ 'example' => '123',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"userId:173651113438**** and name:\\\\\\"BABEL_CHECK\\\\\\"\\",\\n \\"RequestId\\": \\"60912C8D-B340-4253-ADE7-61ACDFD25CFC\\",\\n \\"Success\\": \\"true\\",\\n \\"CustomEvents\\": {\\n \\"CustomEvent\\": [\\n {\\n \\"Time\\": \\"1552199984000\\",\\n \\"Name\\": \\"BABEL_CHECK\\",\\n \\"GroupId\\": \\"12345\\",\\n \\"Content\\": \\"requestId:4975A6F3-19AC-4C01-BAD2-034DA07FEBB5, info:{\\\\\\"autoPay\\\\\\":false,\\\\\\"autoUseCoupon\\\\\\":false,\\\\\\"bid\\\\\\":\\\\\\"26842\\\\\\",\\\\\\"buyerId\\\\\\":118935342242****,\\\\\\"commodities\\\\\\":[{\\\\\\"aliyunProduceCode\\\\\\":\\\\\\"cms\\\\\\",\\\\\\"chargeType\\\\\\":\\\\\\"PREPAY\\\\\\",\\\\\\"commodityCode\\\\\\":\\\\\\"cms_call_num\\\\\\",\\\\\\"components\\\\\\":[{\\\\\\"componentCode\\\\\\":\\\\\\"phone_count\\\\\\",\\\\\\"instanceProperty\\\\\\":[{\\\\\\"code\\\\\\":\\\\\\"phone_count\\\\\\",\\\\\\"value\\\\\\":\\\\\\"500\\\\\\"}],\\\\\\"moduleAttrStatus\\\\\\":1}],\\\\\\"duration\\\\\\":6,\\\\\\"free\\\\\\":false,\\\\\\"orderParams\\\\\\":{\\\\\\"aliyunProduceCode\\\\\\":\\\\\\"cms\\\\\\"},\\\\\\"orderType\\\\\\":\\\\\\"BUY\\\\\\",\\\\\\"prePayPostCharge\\\\\\":false,\\\\\\"pricingCycle\\\\\\":\\\\\\"Month\\\\\\",\\\\\\"quantity\\\\\\":1,\\\\\\"refundSpecCode\\\\\\":\\\\\\"\\\\\\",\\\\\\"renewChange\\\\\\":false,\\\\\\"specCode\\\\\\":\\\\\\"cms_call_num\\\\\\",\\\\\\"specUpdate\\\\\\":false,\\\\\\"syncToSubscription\\\\\\":false,\\\\\\"upgradeInquireFinancialValue\\\\\\":true}],\\\\\\"fromApp\\\\\\":\\\\\\"commonbuy\\\\\\",\\\\\\"orderParams\\\\\\":{\\\\\\"priceCheck\\\\\\":\\\\\\"true\\\\\\"},\\\\\\"payerId\\\\\\":118935342242****,\\\\\\"requestId\\\\\\":\\\\\\"ade3ad32-f58b-45d7-add4-ac542be3d8ec\\\\\\",\\\\\\"skipChannel\\\\\\":false,\\\\\\"userId\\\\\\":118935342242****}\\",\\n \\"Id\\": \\"123\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeCustomEventAttributeResponse>\\r\\n <Message>userId:173651113438**** and name:\\"BABEL_CHECK\\"</Message>\\r\\n <RequestId>194A3F1D-8EA6-4922-BBF2-5F213AC7B648</RequestId>\\r\\n <CustomEvents>\\r\\n <CustomEvent>\\r\\n <Name>BABEL_CHECK</Name>\\r\\n <Time>1553422490000</Time>\\r\\n <Id>E4407D77-72BA-4818-8644-39D119D7****</Id>\\r\\n <Content>requestId:BD524A26-A3DA-4133-A863-FF56B335797E, info:{\\"autoPay\\":false,\\"autoUseCoupon\\":false,\\"bid\\":\\"26842\\",\\"buyerId\\":118935342242****,\\"commodities\\":[{\\"aliyunProduceCode\\":\\"cms\\",\\"chargeType\\":\\"PREPAY\\",\\"commodityCode\\":\\"cms_edition\\",\\"components\\":[{\\"componentCode\\":\\"suggest_type\\",\\"instanceProperty\\":[{\\"code\\":\\"suggest_type\\",\\"value\\":\\"pro\\"}],\\"moduleAttrStatus\\":1},{\\"componentCode\\":\\"pay_type\\",\\"instanceProperty\\":[{\\"code\\":\\"pay_type\\",\\"value\\":\\"suggest\\"}],\\"moduleAttrStatus\\":1}],\\"duration\\":1,\\"free\\":false,\\"orderParams\\":{\\"aliyunProduceCode\\":\\"cms\\"},\\"orderType\\":\\"BUY\\",\\"prePayPostCharge\\":false,\\"pricingCycle\\":\\"Month\\",\\"quantity\\":1,\\"refundSpecCode\\":\\"\\",\\"renewChange\\":false,\\"specCode\\":\\"cms_edition\\",\\"specUpdate\\":false,\\"syncToSubscription\\":false,\\"upgradeInquireFinancialValue\\":true}],\\"fromApp\\":\\"commonbuy\\",\\"orderParams\\":{\\"priceCheck\\":\\"true\\"},\\"payerId\\":118935342242****,\\"requestId\\":\\"57d81d14-3c60-468e-b50a-1dfdb1594673\\",\\"skipChannel\\":false,\\"userId\\":118935342242****}</Content>\\r\\n <GroupId>12345</GroupId>\\r\\n </CustomEvent>\\r\\n <CustomEvent>\\r\\n <Name>BABEL_CHECK</Name>\\r\\n <Time>1553422498000</Time>\\r\\n <Id>D44FAC44-EB81-470A-909D-BD963FF9****</Id>\\r\\n <Content>requestId:14CC5306-0BAB-464F-B340-CF33AD306510, info:{\\"autoPay\\":false,\\"autoUseCoupon\\":false,\\"bid\\":\\"26842\\",\\"buyerId\\":118935342242****,\\"commodities\\":[{\\"aliyunProduceCode\\":\\"cms\\",\\"chargeType\\":\\"PREPAY\\",\\"commodityCode\\":\\"cms_smspackage\\",\\"components\\":[{\\"componentCode\\":\\"sms_count\\",\\"instanceProperty\\":[{\\"code\\":\\"sms_count\\",\\"value\\":\\"1000\\"}],\\"moduleAttrStatus\\":1}],\\"duration\\":6,\\"free\\":false,\\"orderParams\\":{\\"aliyunProduceCode\\":\\"cms\\"},\\"orderType\\":\\"BUY\\",\\"prePayPostCharge\\":false,\\"pricingCycle\\":\\"Month\\",\\"quantity\\":1,\\"refundSpecCode\\":\\"\\",\\"renewChange\\":false,\\"specCode\\":\\"cms_smspackage\\",\\"specUpdate\\":false,\\"syncToSubscription\\":false,\\"upgradeInquireFinancialValue\\":true}],\\"fromApp\\":\\"commonbuy\\",\\"orderParams\\":{\\"priceCheck\\":\\"true\\"},\\"payerId\\":118935342242****,\\"requestId\\":\\"64461412-31f2-4e52-a875-43bf1410bdf0\\",\\"skipChannel\\":false,\\"userId\\":118935342242****}</Content>\\r\\n <GroupId>12345</GroupId>\\r\\n </CustomEvent>\\r\\n <CustomEvent>\\r\\n <Name>BABEL_CHECK</Name>\\r\\n <Time>1553422506000</Time>\\r\\n <Id>3AF6FE15-4F6E-459A-96F6-45C74F765209</Id>\\r\\n <Content>requestId:4975A6F3-19AC-4C01-BAD2-034DA07FEBB5, info:{\\"autoPay\\":false,\\"autoUseCoupon\\":false,\\"bid\\":\\"26842\\",\\"buyerId\\":118935342242****,\\"commodities\\":[{\\"aliyunProduceCode\\":\\"cms\\",\\"chargeType\\":\\"PREPAY\\",\\"commodityCode\\":\\"cms_call_num\\",\\"components\\":[{\\"componentCode\\":\\"phone_count\\",\\"instanceProperty\\":[{\\"code\\":\\"phone_count\\",\\"value\\":\\"500\\"}],\\"moduleAttrStatus\\":1}],\\"duration\\":6,\\"free\\":false,\\"orderParams\\":{\\"aliyunProduceCode\\":\\"cms\\"},\\"orderType\\":\\"BUY\\",\\"prePayPostCharge\\":false,\\"pricingCycle\\":\\"Month\\",\\"quantity\\":1,\\"refundSpecCode\\":\\"\\",\\"renewChange\\":false,\\"specCode\\":\\"cms_call_num\\",\\"specUpdate\\":false,\\"syncToSubscription\\":false,\\"upgradeInquireFinancialValue\\":true}],\\"fromApp\\":\\"commonbuy\\",\\"orderParams\\":{\\"priceCheck\\":\\"true\\"},\\"payerId\\":118935342242****,\\"requestId\\":\\"ade3ad32-f58b-45d7-add4-ac542be3d8ec\\",\\"skipChannel\\":false,\\"userId\\":118935342242****}</Content>\\r\\n <GroupId>12345</GroupId>\\r\\n </CustomEvent>\\r\\n </CustomEvents>\\r\\n <Success>true</Success>\\r\\n <Code>200</Code>\\r\\n</DescribeCustomEventAttributeResponse>","errorExample":""}]',
+ 'title' => 'DescribeCustomEventAttribute',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutCustomEvent' => [
+ 'summary' => 'Reports custom events.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EventInfo',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The event details.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'EventName' => [
+ 'description' => 'The event name. Valid values of N: 1 to 50.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'myEvent',
+ ],
+ 'Time' => [
+ 'description' => 'The time when the event occurred.'."\n"
+ ."\n"
+ .'Format: `yyyyMMddTHHmmss.SSSZ`.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 50.'."\n"
+ ."\n"
+ .'> You can also specify a UNIX timestamp. Example: 1552199984000. Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '20171013T170923.456+0800',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group. Valid values of N: 1 to 50.'."\n"
+ ."\n"
+ .'Default value: 0. This value indicates that the event to be reported does not belong to any application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '123456',
+ ],
+ 'Content' => [
+ 'description' => 'The event content. Valid values of N: 1 to 50.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'IOException',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 50,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '131DD9C8-9A32-4428-AD2E-4E3013B6E3A7',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"131DD9C8-9A32-4428-AD2E-4E3013B6E3A7\\"\\n}","errorExample":""},{"type":"xml","example":"<Message>success</Message>\\n<RequestId>131DD9C8-9A32-4428-AD2E-4E3013B6E3A7</RequestId>\\n<Code>200</Code>","errorExample":""}]',
+ 'title' => 'PutCustomEvent',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutCustomMetric' => [
+ 'summary' => 'Reports monitoring data.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'MetricList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The monitoring data.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => [
+ 'description' => 'The type of the monitoring data. Valid values of N: 1 to 21. Valid values:'."\n"
+ ."\n"
+ .'* 0: raw data'."\n"
+ .'* 1: aggregate data'."\n"
+ ."\n"
+ .'> We recommend that you report aggregate data in both the aggregation periods of 60 seconds and 300 seconds. Otherwise, you cannot query monitoring data in a time span that is more than seven days.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '0',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name. Valid values of N: 1 to 21. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cpu_total',
+ ],
+ 'Time' => [
+ 'description' => 'The timestamp when the metric data is generated. Valid values of N: 1 to 21. The timestamp can be in one of the following formats:'."\n"
+ ."\n"
+ .'* A UTC timestamp in the YYYY-MM-DDThh:mm:ssZ format. Example: 20171012T132456.888+0800.'."\n"
+ .'* A UNIX timestamp of the LONG type. Example: 1508136760000.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1508136760000',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group. Valid values of N: 1 to 21.'."\n"
+ ."\n"
+ .'> If the metric does not belong to any application group, enter 0.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '12345',
+ ],
+ 'Values' => [
+ 'description' => 'The collection of metric values. Valid values of N: 1 to 21.'."\n"
+ ."\n"
+ .'> If the Type parameter is set to 0, the keys in this parameter must be set to the specified value. CloudMonitor aggregates raw data in each aggregation period to generate multiple statistical values, such as the maximum value, the count, and the total value.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '{"value":10.5}',
+ ],
+ 'Dimensions' => [
+ 'description' => 'The dimensions based on which the resources are queried. Valid values of N: 1 to 21.'."\n"
+ ."\n"
+ .'Set this parameter to a collection of key-value pairs. Format: `{"Key":"Value"}`.'."\n"
+ ."\n"
+ .'The key or value must be 1 to 64 bytes in length. Excessive characters are truncated.'."\n"
+ ."\n"
+ .'The key or value can contain letters, digits, periods (.), hyphens (-), underscores (\\_), forward slashes (/), and backslashes (\\\\).'."\n"
+ ."\n"
+ .'> Dimensions must be formatted as a JSON string in a specified order.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '{"sampleName1":"value1","sampleName2":"value2"}',
+ ],
+ 'Period' => [
+ 'description' => 'The aggregation period. Valid values of N: 1 to 21. Unit: seconds. Valid values: 60 and 300.'."\n"
+ ."\n"
+ .'> If the Type parameter is set to 1, the Period parameter is required.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ 'required' => false,
+ 'description' => '',
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The request has failed due to a temporary failure of the server.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '05B36C2C-5F6E-48D5-8B41-CE36DD7EE8E0',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The request has failed due to a temporary failure of the server.\\",\\n \\"RequestId\\": \\"05B36C2C-5F6E-48D5-8B41-CE36DD7EE8E0\\"\\n}","errorExample":""},{"type":"xml","example":"<PutCustomMetricResponse>\\n\\t<RequestId>75D115CE-5DA8-4647-9073-8F72BB85B6F7</RequestId>\\n\\t<Message>success</Message>\\n\\t<Code>200</Code>\\n</PutCustomMetricResponse>","errorExample":""}]',
+ 'title' => 'PutCustomMetric',
+ 'description' => '> We recommend that you call the [PutHybridMonitorMetricData](~~383455~~) operation of Hybrid Cloud Monitoring to report monitoring data.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutCustomMetricRule' => [
+ 'summary' => 'Creates a custom alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group to which the custom monitoring data belongs.'."\n"
+ ."\n"
+ .'> The value 0 indicates that the reported custom monitoring data does not belong to an application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7378****',
+ ],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'> You can specify an existing ID to modify the corresponding alert rule or specify a new ID to create an alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'MyRuleId1',
+ ],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CpuUsage',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'> For more information about how to obtain the metric name, see [DescribeCustomMetricList](~~115005~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'Resources',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The custom monitoring data to which the alert rule applies. The value includes the application group ID to which the custom monitoring data belongs and the dimension to which the metric belongs.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{"groupId":7378****,"dimension":"instanceId=i-hp3543t5e4sudb3s****"}]',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroups',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert contact groups. Separate multiple alert contact groups with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ [
+ 'name' => 'Webhook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The callback URL to which a POST request is sent when an alert is triggered based on the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'EffectiveInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The period of time during which the alert rule is effective. Valid values: 00:00 to 23:59.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-23:59',
+ ],
+ ],
+ [
+ 'name' => 'SilenceTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mute period during which new alert notifications are not sent even if the trigger conditions are met. Unit: seconds. Default value: 86400, which is equivalent to one day.'."\n"
+ ."\n"
+ .'> Only one alert notification is sent during each mute period even if the metric value exceeds the alert threshold several times.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '86400',
+ 'default' => '86400',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The cycle that is used to aggregate custom monitoring data. Unit: seconds Set the value to an integral multiple of 60. The original reporting cycle of custom monitoring data is used by default.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '300',
+ 'default' => '300',
+ ],
+ ],
+ [
+ 'name' => 'EmailSubject',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The subject of the alert notification email.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '90',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ .'* WARN'."\n"
+ .'* INFO'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'CRITICAL',
+ ],
+ ],
+ [
+ 'name' => 'EvaluationCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'Statistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The method used to calculate the metric value based on which alerts are triggered.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'ComparisonOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* `>=`'."\n"
+ .'* `=`'."\n"
+ .'* `<=`'."\n"
+ .'* `>`'."\n"
+ .'* `<`'."\n"
+ .'* `!=`'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '>=',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message. If the request was successful, the return value is null. If the request failed, an error message is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'ComparisonOperator is mandatory for this action.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '65D50468-ECEF-48F1-A6E1-D952E89D9432',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 204 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 499 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"ComparisonOperator is mandatory for this action.\\",\\n \\"RequestId\\": \\"65D50468-ECEF-48F1-A6E1-D952E89D9432\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<PutCustomMetricRuleResponse>\\n\\t<Message></Message>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</PutCustomMetricRuleResponse>","errorExample":""}]',
+ 'title' => 'PutCustomMetricRule',
+ 'description' => 'Before you call this operation, call the PutCustomMetric operation to report custom monitoring data. For more information, see [PutCustomMetric](~~115004~~).'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeCustomMetricList' => [
+ 'summary' => 'Queries the reported monitoring data.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n"
+ ."\n"
+ .'For information about how to query the IDs of application groups, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7378****',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the custom metric.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'Dimension',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The dimensions based on which the resources are queried.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{sampleName1=value1&amp;sampleName2=value2}',
+ ],
+ ],
+ [
+ 'name' => 'Md5',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The MD5 value of the HTTP request body. The MD5 value is a 128-bit hash value used to verify the uniqueness of the reported monitoring data.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '97c25982d9745a231276bff27469****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 1.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 10.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '1AF425E4-1DEA-54F2-910A-8117C9686140',
+ ],
+ 'Result' => [
+ 'description' => 'The reported custom metrics that are found in the query.'."\n",
+ 'type' => 'string',
+ 'example' => '{\\"all\\":0,\\"size\\":10,\\"param\\":{\\"metric\\":\\"{\\\\\\"metricName\\\\\\":\\\\\\"cpu_total\\\\\\",\\\\\\"groupId\\\\\\":7378****,\\\\\\"project\\\\\\":\\\\\\"acs_customMetric_120886317861****\\\\\\",\\\\\\"dimension\\\\\\":\\\\\\"sampleName1=value1&sampleName2=value2\\\\\\",\\\\\\"status\\\\\\":1}\\",\\"service\\":\\"metric-center.aliyun-inc.com\\"},\\"page\\":1,\\"list\\":[]}',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"1AF425E4-1DEA-54F2-910A-8117C9686140\\",\\n \\"Result\\": \\"{\\\\\\\\\\\\\\"all\\\\\\\\\\\\\\":0,\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":10,\\\\\\\\\\\\\\"param\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"metric\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"metricName\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"cpu_total\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"groupId\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":7378****,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"project\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"acs_customMetric_120886317861****\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"dimension\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"sampleName1=value1&sampleName2=value2\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"status\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":1}\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"service\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"metric-center.aliyun-inc.com\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"page\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"list\\\\\\\\\\\\\\":[]}\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeCustomMetricListResponse>\\r\\n\\t<Message>success</Message>\\r\\n\\t<RequestId>1AF425E4-1DEA-54F2-910A-8117C9686140</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Result>{\\\\\\"all\\\\\\":0,\\\\\\"size\\\\\\":10,\\\\\\"param\\\\\\":{\\\\\\"metric\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"metricName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cpu_total\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"groupId\\\\\\\\\\\\\\":7378****,\\\\\\\\\\\\\\"project\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"acs_customMetric_120886317861****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dimension\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"sampleName1=value1&=value2\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"status\\\\\\\\\\\\\\":1}\\\\\\",\\\\\\"service\\\\\\":\\\\\\"metric-center.aliyun-inc.com\\\\\\"},\\\\\\"page\\\\\\":1,\\\\\\"list\\\\\\":[]}</Result>\\r\\n</DescribeCustomMetricListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeCustomMetricList',
+ 'description' => '> You can call the DescribeMetricList operation to query the metrics of cloud services. For more information, see [DescribeMetricList](~~51936~~).'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteCustomMetric' => [
+ 'summary' => 'Deletes the reported monitoring data of a metric.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '3607****',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the metric.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'AdvanceCredit',
+ ],
+ ],
+ [
+ 'name' => 'Md5',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The MD5 value of the HTTP request body. The MD5 value is a 128-bit hash value used to verify the uniqueness of the reported monitoring data.'."\n"
+ ."\n"
+ .'> `Md5` is returned when you query the reported monitoring data of a metric.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '38796C8CFFEB8F89BB2A626C7BD7****',
+ ],
+ ],
+ [
+ 'name' => 'UUID',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the request for reporting monitoring data.'."\n"
+ ."\n"
+ .'> `UUID` is returned when you query the reported monitoring data of a metric. We recommend that you specify the `Md5` parameter.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '5497633c-66c5-4eae-abaa-89db5adb****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call is successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '05B36C2C-5F6E-48D5-8B41-CE36DD7EE8E0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"05B36C2C-5F6E-48D5-8B41-CE36DD7EE8E0\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteCustomMetric>\\n\\t\\t<Message>success</Message>\\n\\t\\t<RequestId>05B36C2C-5F6E-48D5-8B41-CE36DD7EE8E0</RequestId>\\n\\t\\t<Code>200</Code>\\n</DeleteCustomMetric>","errorExample":""}]',
+ 'title' => 'DeleteCustomMetric',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutLogMonitor' => [
+ 'summary' => 'Creates or modifies a log monitoring metric.',
+ 'methods' => [
+ 'post',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LogId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the log monitoring metric.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '16****',
+ ],
+ ],
+ [
+ 'name' => 'SlsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The region in which the Simple Log Service project resides.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'SlsProject',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the Simple Log Service project.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-project',
+ ],
+ ],
+ [
+ 'name' => 'SlsLogstore',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the Simple Log Service Logstore.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-logstore',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name. For more information about the metrics for cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'MetricExpress',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The extended field. The extended field allows you to perform basic operations on the aggregation results.'."\n"
+ ."\n"
+ .'For example, you have calculated TotalNumber and 5XXNumber by aggregating the data. TotalNumber indicates the total number of HTTP requests, and 5XXNumber indicates the number of HTTP requests whose status code is greater than 499. You can calculate the server error rate by adding the following formula to the extended field: 5XXNumber/TotalNumber\\*100.'."\n"
+ ."\n"
+ .'JSON format: {"extend":{"errorPercent":"5XXNumber/TotalNumber\\*100"}}. Description:'."\n"
+ ."\n"
+ .'* extend: required.'."\n"
+ .'* errorPercent: the alias of the field generated in the calculation result. You can specify the alias as needed.'."\n"
+ .'* 5XXNumber/TotalNumber\\*100: the calculation expression.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"extend":{"errorPercent":"5XXNumber/TotalNumber*100"}}',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7301****',
+ ],
+ ],
+ [
+ 'name' => 'ValueFilterRelation',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The logical operator that is used between log filter conditions. Valid values:'."\n"
+ ."\n"
+ .'* and'."\n"
+ .'* or'."\n"
+ ."\n"
+ .'> The ValueFilterRelation and `ValueFilter.N.Key` parameters must be used in pair.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'and',
+ ],
+ ],
+ [
+ 'name' => 'Tumblingwindows',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The size of the tumbling window for calculation. Unit: seconds. CloudMonitor performs aggregation for each tumbling window.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60,300',
+ ],
+ ],
+ [
+ 'name' => 'Unit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The unit.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Percent',
+ ],
+ ],
+ [
+ 'name' => 'Aggregates',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The aggregation logic.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'FieldName' => [
+ 'description' => 'The name of the field to be aggregated. Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sourceCount',
+ ],
+ 'Function' => [
+ 'description' => 'The function that is used to aggregate log data within a statistical period. Valid values of N: 1 to 10. Valid values:'."\n"
+ ."\n"
+ .'* count: counts the number.'."\n"
+ .'* sum: calculates the total value.'."\n"
+ .'* avg: calculates the average value.'."\n"
+ .'* max: calculates the maximum value.'."\n"
+ .'* min: calculates the minimum value.'."\n"
+ .'* countps: calculates the number of values of the specified field divided by the total number of seconds within a statistical period.'."\n"
+ .'* sumps: calculates the sum of the values of the specified field divided by the total number of seconds within a statistical period.'."\n"
+ .'* distinct: calculates the number of unique values of the specified field within a statistical period.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'count',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the aggregate function. Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Count',
+ ],
+ ],
+ 'required' => false,
+ 'description' => 'The aggregation logic.',
+ ],
+ 'required' => true,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'Groupbys',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The dimension based on which the data is grouped. This parameter is equivalent to the GROUP BY clause in SQL statements. If no dimension is specified, all data is aggregated based on the aggregate function.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'FieldName' => [
+ 'description' => 'The name of the field that is specified as the dimension. Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the dimension based on which the data is grouped. Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CPUUtilization',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'ValueFilter',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The condition that is used to filter logs. The ValueFilter and ValueFilterRelation parameters are used in pair. The filter condition is equivalent to the WHERE clause in SQL statements. If no filter condition is specified, all logs are processed. For example, logs contain the Level and Error fields. If you need to calculate the number of times that logs of the Error level appear every minute, you can set the filter condition to Level=Error and count the number of logs that meet this condition.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The name of the log field that is used for matching in the filter condition. Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lh_source',
+ ],
+ 'Value' => [
+ 'description' => 'The field value to be matched in the filter condition. Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'Operator' => [
+ 'description' => 'The method that is used to match the field value. Valid values of N: 1 to 10. Valid values:'."\n"
+ ."\n"
+ .'* `contain`: contains'."\n"
+ .'* `notContain`: does not contain'."\n"
+ .'* `>`: greater than'."\n"
+ .'* `<`: less than'."\n"
+ .'* `>=`: greater than or equal to'."\n"
+ .'* `<=`: less than or equal to'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'contain',
+ ],
+ ],
+ 'required' => false,
+ 'description' => '',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n"
+ ."\n"
+ .'* If the request was successful, `successful` is returned.'."\n"
+ .'* If the request failed, an error message is returned. Example: `alias of aggreate must be set value.`'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '91561287-0802-5F9C-9BDE-404C50D41B06',
+ ],
+ 'LogId' => [
+ 'description' => 'The ID of the log monitoring metric.'."\n",
+ 'type' => 'string',
+ 'example' => '16****',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'LimitorError',
+ 'errorMessage' => 'Log monitor limit is not enough',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"91561287-0802-5F9C-9BDE-404C50D41B06\\",\\n \\"LogId\\": \\"16****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<PutLogMonitorResponse>\\r\\n\\t<Message>successful</Message>\\r\\n\\t<RequestId>91561287-0802-5F9C-9BDE-404C50D41B06</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<LogId>16****</LogId>\\r\\n\\t<Success>true</Success>\\r\\n</PutLogMonitorResponse>","errorExample":""}]',
+ 'title' => 'PutLogMonitor',
+ 'description' => 'In the example of this topic, the `cpu_total` log monitoring metric is created. The response shows that the log monitoring metric is created and the metric ID is `16****`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteLogMonitor' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LogId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the log monitoring metric.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '12345',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'metric not exist.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '42BFFC2B-5E4D-4FDE-BCC6-E91EE33C5967',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"metric not exist.\\",\\n \\"RequestId\\": \\"42BFFC2B-5E4D-4FDE-BCC6-E91EE33C5967\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteLogMonitorResponse>\\n\\t\\t<RequestId>EBB5215C-44AB-4000-A2D7-48634FDC4F04</RequestId>\\n\\t\\t<Success>true</Success>\\n\\t\\t<Code>200</Code>\\n</DeleteLogMonitorResponse>","errorExample":""}]',
+ 'title' => 'DeleteLogMonitor',
+ 'summary' => 'Deletes a log monitoring metric.',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeLogMonitorList' => [
+ 'summary' => 'Queries log monitoring metrics.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'SearchValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword that is used to search for log monitoring metrics. Fuzzy match is supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '123456',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '01E90080-4300-4FAA-B9AE-161956BC350D',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '15',
+ ],
+ 'LogMonitorList' => [
+ 'description' => 'The log monitoring metrics.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ValueFilterRelation' => [
+ 'description' => 'The logical operator that is used between log filter conditions. The ValueFilter and ValueFilterRelation parameters are used in pair. Valid values:'."\n"
+ ."\n"
+ .'* and'."\n"
+ .'* or'."\n",
+ 'type' => 'string',
+ 'example' => 'and',
+ ],
+ 'SlsLogstore' => [
+ 'description' => 'The name of the Simple Log Service (SLS) Logstore.'."\n",
+ 'type' => 'string',
+ 'example' => 'testSlS****',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12345',
+ ],
+ 'LogId' => [
+ 'description' => 'The ID of the log monitoring metric.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12345',
+ ],
+ 'SlsRegionId' => [
+ 'description' => 'The ID of the region where the SLS Logstore resides.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'GmtCreate' => [
+ 'description' => 'The time when the log monitoring metric was created.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1577766395000',
+ ],
+ 'SlsProject' => [
+ 'description' => 'The name of the SLS project.'."\n",
+ 'type' => 'string',
+ 'example' => 'sls-project-test****',
+ ],
+ 'ValueFilter' => [
+ 'description' => 'The condition that is used to filter logs. The ValueFilter and ValueFilterRelation parameters are used in pair. The filter condition is equivalent to the WHERE clause in SQL statements. If no filter condition is specified, all logs are processed. For example, logs contain the Level and Error fields. If you need to calculate the number of times that logs of the Error level appear every minute, you can set the filter condition to Level=Error and count the number of logs that meet this condition.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The name of the log field used for matching in the filter condition.'."\n",
+ 'type' => 'string',
+ 'example' => 'hostName',
+ ],
+ 'Value' => [
+ 'description' => 'The field value to be matched in the filter condition.'."\n",
+ 'type' => 'string',
+ 'example' => 'portal',
+ ],
+ 'Operator' => [
+ 'description' => 'The method that is used to match the field value. Valid values:'."\n"
+ ."\n"
+ .'* contain: contains'."\n"
+ .'* notContain: does not contain'."\n"
+ .'* `>`: greater than'."\n"
+ .'* `<`: less than'."\n"
+ .'* `>=`: greater than or equal to'."\n"
+ .'* `<=`: less than or equal to'."\n",
+ 'type' => 'string',
+ 'example' => 'contain',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"01E90080-4300-4FAA-B9AE-161956BC350D\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Total\\": 15,\\n \\"LogMonitorList\\": [\\n {\\n \\"ValueFilterRelation\\": \\"and\\",\\n \\"SlsLogstore\\": \\"testSlS****\\",\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"GroupId\\": 12345,\\n \\"LogId\\": 12345,\\n \\"SlsRegionId\\": \\"cn-hangzhou\\",\\n \\"GmtCreate\\": 1577766395000,\\n \\"SlsProject\\": \\"sls-project-test****\\",\\n \\"ValueFilter\\": [\\n {\\n \\"Key\\": \\"hostName\\",\\n \\"Value\\": \\"portal\\",\\n \\"Operator\\": \\"contain\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeLogMonitorListResponse>\\r\\n\\t\\t<Message>successful</Message>\\r\\n\\t\\t<RequestId>C085617E-7A64-402E-877D-410E86174B0C</RequestId>\\r\\n\\t\\t<PageSize>10</PageSize>\\r\\n\\t\\t<Total>2</Total>\\r\\n\\t\\t<LogMonitorList>\\r\\n\\t\\t\\t<SlsProject>sls-project-test****</SlsProject>\\r\\n\\t\\t\\t<MetricName>cpu_total</MetricName>\\r\\n\\t\\t\\t<GmtCreate>1591175112000</GmtCreate>\\r\\n\\t\\t\\t<ValueFilterRelation>and</ValueFilterRelation>\\r\\n\\t\\t\\t<LogId>12345</LogId>\\r\\n\\t\\t\\t<SlsRegionId>cn-hangzhou</SlsRegionId>\\r\\n\\t\\t\\t<SlsLogstore>testSlS****</SlsLogstore>\\r\\n\\t\\t\\t<GroupId>12345</GroupId>\\r\\n\\t\\t</LogMonitorList>\\r\\n\\t\\t<LogMonitorList>\\r\\n\\t\\t\\t<SlsProject>sls-project-test****</SlsProject>\\r\\n\\t\\t\\t<MetricName>cpu_total</MetricName>\\r\\n\\t\\t\\t<GmtCreate>1586826787000</GmtCreate>\\r\\n\\t\\t\\t<ValueFilterRelation>and</ValueFilterRelation>\\r\\n\\t\\t\\t<ValueFilter>\\r\\n\\t\\t\\t\\t<Operator>=</Operator>\\r\\n\\t\\t\\t\\t<Value>1</Value>\\r\\n\\t\\t\\t\\t<Key>lh_source</Key>\\r\\n\\t\\t\\t</ValueFilter>\\r\\n\\t\\t\\t<LogId>12345</LogId>\\r\\n\\t\\t\\t<SlsRegionId>cn-hangzhou</SlsRegionId>\\r\\n\\t\\t\\t<SlsLogstore>internal-alert-history</SlsLogstore>\\r\\n\\t\\t\\t<GroupId>12345</GroupId>\\r\\n\\t\\t</LogMonitorList>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeLogMonitorListResponse>\\r\\n","errorExample":""}]',
+ 'title' => 'DescribeLogMonitorList',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeLogMonitorAttribute' => [
+ 'summary' => 'Queries the details of a log monitoring metric.',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name. Exact match is supported.'."\n"
+ ."\n"
+ .'For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message. If the request was successful, a success message is returned. If the request failed, an error message is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'C6718537-E673-4A58-8EE1-24B8B38C7AAE',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'LogMonitor' => [
+ 'description' => 'The details of the log monitoring metric.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ValueFilterRelation' => [
+ 'description' => 'The logical operator that is used between log filter conditions. The ValueFilter and ValueFilterRelation parameters must be used in pair. Valid values:'."\n"
+ ."\n"
+ .'* and'."\n"
+ .'* or'."\n",
+ 'type' => 'string',
+ 'example' => 'and',
+ ],
+ 'SlsLogstore' => [
+ 'description' => 'The name of the Simple Log Service Logstore.'."\n",
+ 'type' => 'string',
+ 'example' => 'test-logstore',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12345',
+ ],
+ 'LogId' => [
+ 'description' => 'The ID of the log.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1234',
+ ],
+ 'MetricExpress' => [
+ 'description' => 'The extended field. The extended field allows you to perform basic operations on the aggregation results.'."\n"
+ ."\n"
+ .'For example, if you have calculated TotalNumber and 5XXNumber by aggregating the data. TotalNumber indicates the total number of HTTP requests, and 5XXNumber indicates the number of HTTP requests whose status code is greater than 499. You can calculate the server error rate by adding the following formula to the extended field: 5XXNumber/TotalNumber\\*100.'."\n",
+ 'type' => 'string',
+ 'example' => '{"extend":{"errorPercent":"5XXNumber/TotalNumber*100"}}',
+ ],
+ 'SlsRegionId' => [
+ 'description' => 'The ID of the region where the Simple Log Service (SLS) Logstore resides.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'GmtCreate' => [
+ 'description' => 'The time when the metric was created.'."\n"
+ ."\n"
+ .'This value is a UNIX timestamp that represents the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1547431398000',
+ ],
+ 'SlsProject' => [
+ 'description' => 'The name of the SLS project.'."\n",
+ 'type' => 'string',
+ 'example' => 'test-project',
+ ],
+ 'Aggregates' => [
+ 'description' => 'The aggregation logic.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Max' => [
+ 'description' => 'The maximum value.'."\n",
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'Min' => [
+ 'description' => 'The minimum value.'."\n",
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ 'Function' => [
+ 'description' => 'The function that is used to aggregate the monitoring data of logs within a statistical period. Valid values:'."\n"
+ ."\n"
+ .'* count: counts the number'."\n"
+ .'* sum: calculates the total value'."\n"
+ .'* avg: calculates the average value'."\n"
+ .'* max: calculates the maximum value'."\n"
+ .'* min: calculates the minimum value'."\n"
+ .'* countps: calculates the number of values of the specified field divided by the total number of seconds within a statistical period'."\n"
+ .'* sumps: calculates the sum of the values of the specified field divided by the total number of seconds within a statistical period'."\n"
+ .'* distinct: calculates the number of unique values of the specified field within a statistical period'."\n",
+ 'type' => 'string',
+ 'example' => 'count',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the field.'."\n",
+ 'type' => 'string',
+ 'example' => 'HostName',
+ ],
+ 'FieldName' => [
+ 'description' => 'The name of the field in logs.'."\n",
+ 'type' => 'string',
+ 'example' => 'hostName',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ 'ValueFilter' => [
+ 'description' => 'The condition that is used to filter logs. The ValueFilter and ValueFilterRelation parameters are used in pair. The filter condition is equivalent to the WHERE clause in SQL statements.'."\n"
+ ."\n"
+ .'If no filter condition is specified, all logs are processed. For example, logs contain the Level and Error fields. If you need to calculate the number of times that logs of the Error level appear every minute, you can set the filter condition to Level=Error and count the number of logs that meet this condition.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The name of the log field used for matching in the filter condition.'."\n",
+ 'type' => 'string',
+ 'example' => 'hostName',
+ ],
+ 'Value' => [
+ 'description' => 'The field value to be matched in the filter condition.'."\n",
+ 'type' => 'string',
+ 'example' => 'portal',
+ ],
+ 'Operator' => [
+ 'description' => 'The method that is used to match the field value. Valid values:'."\n"
+ ."\n"
+ .'* `contain`: contains'."\n"
+ .'* `notContain`: does not contain'."\n"
+ .'* `>`: greater than'."\n"
+ .'* `<`: less than'."\n"
+ .'* `>=`: greater than or equal to'."\n"
+ .'* `<=`: less than or equal to'."\n",
+ 'type' => 'string',
+ 'example' => 'contain',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ 'Tumblingwindows' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The size of the tumbling window for calculation. Unit: seconds The system performs an aggregation for each tumbling window.'."\n",
+ 'type' => 'string',
+ 'example' => '60',
+ ],
+ 'description' => '',
+ ],
+ 'Groupbys' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The dimension based on which the data is grouped. This parameter is equivalent to the GROUP BY clause in SQL statements. If no dimension is specified, all data is aggregated based on the aggregate function.'."\n",
+ 'type' => 'string',
+ 'example' => 'value',
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"C6718537-E673-4A58-8EE1-24B8B38C7AAE\\",\\n \\"Success\\": true,\\n \\"LogMonitor\\": {\\n \\"ValueFilterRelation\\": \\"and\\",\\n \\"SlsLogstore\\": \\"logstore_******\\",\\n \\"MetricName\\": \\"cpu_total_******\\",\\n \\"GroupId\\": 0,\\n \\"LogId\\": 0,\\n \\"MetricExpress\\": \\"{}\\",\\n \\"SlsRegionId\\": \\"cn-hangzhou\\",\\n \\"GmtCreate\\": 1678440033000,\\n \\"SlsProject\\": \\"project_******\\",\\n \\"Aggregates\\": [\\n {\\n \\"Max\\": \\"0\\",\\n \\"Min\\": \\"0\\",\\n \\"Function\\": \\"count\\",\\n \\"Alias\\": \\"alias_******\\",\\n \\"FieldName\\": \\"field_******\\"\\n }\\n ],\\n \\"ValueFilter\\": [\\n {\\n \\"Key\\": \\"key_******\\",\\n \\"Value\\": \\"value_******\\",\\n \\"Operator\\": \\"contain\\"\\n }\\n ],\\n \\"Tumblingwindows\\": [\\n \\"60\\"\\n ],\\n \\"Groupbys\\": [\\n \\"userId\\"\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeLogMonitorAttribute',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateMonitorGroupByResourceGroupId' => [
+ 'summary' => 'Creates an application group by using a resource group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnableSubscribeEvent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether the application group automatically subscribes to event notifications. If events whose severity level is critical or warning occur on resources in an application group, CloudMonitor sends alert notifications. Valid values:'."\n"
+ ."\n"
+ .'* true: The application group automatically subscribes to event notifications.'."\n"
+ .'* false (default): The application group does not automatically subscribe to event notifications.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'EnableInstallAgent',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether the CloudMonitor agent is automatically installed for the application group. CloudMonitor determines whether to automatically install the CloudMonitor agent for the hosts in an application group based on the value of this parameter. Valid values:'."\n"
+ ."\n"
+ .'* true: The CloudMonitor agent is automatically installed.'."\n"
+ .'* false (default): The CloudMonitor agent is not automatically installed.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the region where the resource group resides.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of the region where a resource group resides, see [GetResourceGroup](~~158866~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the resource group.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of a resource group, see [ListResourceGroups](~~158855~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'rg-acfmw3ty5y7****',
+ ],
+ ],
+ [
+ 'name' => 'ResourceGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the resource group.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a resource group, see [ListResourceGroups](~~158855~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'CloudMonitor',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroupList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The alert contact groups. The alert notifications of the application group are sent to the alert contacts that belong to the specified alert contact groups.'."\n"
+ ."\n"
+ .'An alert contact group can contain one or more alert contacts. For information about how to create alert contacts and alert contact groups, see [PutContact](~~114923~~) and [PutContactGroup](~~114929~~). For information about how to obtain alert contact groups, see [DescribeContactGroupList](~~114922~~).'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert contact group. The alert notifications of the application group are sent to the alert contacts that belong to the specified alert contact groups.'."\n"
+ ."\n"
+ .'An alert contact group can contain one or more alert contacts. For information about how to create alert contacts and alert contact groups, see [PutContact](~~114923~~) and [PutContactGroup](~~114929~~). For information about how to obtain alert contact groups, see [DescribeContactGroupList](~~114922~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Group',
+ ],
+ 'required' => true,
+ 'example' => 'ECS_Group',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '784CAB3C-F613-5BCE-8469-6DCB29B18A20',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3607****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 4092 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'ResourceGroupId already create group',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"784CAB3C-F613-5BCE-8469-6DCB29B18A20\\",\\n \\"Success\\": true,\\n \\"Id\\": 0\\n}","errorExample":""},{"type":"xml","example":"<CreateMonitorGroupByResourceGroupIdResponse>\\n <RequestId>784CAB3C-F613-5BCE-8469-6DCB29B18A20</RequestId>\\n <Id>3607****</Id>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateMonitorGroupByResourceGroupIdResponse>","errorExample":""}]',
+ 'title' => 'CreateMonitorGroupByResourceGroupId',
+ 'description' => 'This topic provides an example on how to create an application group by using the resource group `CloudMonitor` and the alert contact group `ECS_Group`. The region ID of the resource group is `cn-hangzhou`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateSiteMonitor' => [
+ 'summary' => 'Creates a site monitoring task.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Address',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The URL or IP address that is monitored by the task.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'https://www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'TaskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The protocol that is used by the site monitoring task.'."\n"
+ ."\n"
+ .'Valid values: HTTP, HTTPS, PING, TCP, UDP, DNS, SMTP, POP3, FTP, and WEBSOCKET.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'HTTPS',
+ ],
+ ],
+ [
+ 'name' => 'TaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the site monitoring task.'."\n"
+ ."\n"
+ .'The name must be 4 to 100 characters in length, and can contain letters, digits, and underscores (\\_).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'HanZhou_ECS1',
+ ],
+ ],
+ [
+ 'name' => 'Interval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The interval at which detection requests are sent.'."\n"
+ ."\n"
+ .'Valid values: 1, 5, 15, 30, and 60. Unit: minutes.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'IspCities',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The information of the detection points. If you leave this parameter empty, the system randomly selects three detection points.'."\n"
+ ."\n"
+ .'The value is a JSON array. Example: `[{"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"}]`. The values of the city field indicate Beijing, Hangzhou, and Qingdao.'."\n"
+ ."\n"
+ .'For information about how to obtain detection points, see [DescribeSiteMonitorISPCityList](~~115045~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"}]',
+ ],
+ ],
+ [
+ 'name' => 'OptionsJson',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The extended options of the protocol that is used by the site monitoring task. The options vary based on the protocol.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"time_out":5000}',
+ ],
+ ],
+ [
+ 'name' => 'AlertIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'For more information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SystemDefault_acs_ecs_dashboard_InternetOutRate_Percent',
+ ],
+ ],
+ [
+ 'name' => 'AgentGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ ],
+ ],
+ [
+ 'name' => 'CustomSchedule',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => 'The custom detection period. You can only select a time period from Monday to Sunday for detection.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"start_hour":0,"end_hour":24, "days":[0], "time_zone":"Local"}',
+ ],
+ ],
+ [
+ 'name' => 'VpcConfig',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"vpcId": "vpc-xxxxxx", "vswitchId": "vsw-xxxxxx", "securityGroupId": "sg-xxxxxx", "region": "cn-beijing"}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '68192f5d-0d45-4b98-9724-892813f86c71',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => 'The result of the site monitoring task.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'AttachAlertResult' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Contact' => [
+ 'description' => 'The result that is returned after you associate the existing alert rule with the site monitoring task.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The result that is returned after you associate the existing alert rule with the site monitoring task.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code that is returned after you associate the existing alert rule with the site monitoring task.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The message that is returned after you associate the existing alert rule with the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request that was sent to associate the existing alert rule with the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => '5dd33455-4f65-4b0c-9200-33d66f3f340b',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the existing alert rule was associated with the site monitoring task. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'SystemDefault_acs_ecs_dashboard_InternetOutRate_Percent',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'CreateResultList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'CreateResultList' => [
+ 'description' => 'The returned result.'."\n"
+ ."\n"
+ .'If a site monitoring task is created, the result is returned. If a site monitoring task fails to be created, no result is returned.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The returned result.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskId' => [
+ 'description' => 'The ID of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => '2c8dbdf9-a3ab-46a1-85a4-f094965e****',
+ ],
+ 'TaskName' => [
+ 'description' => 'The name of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'HanZhou_ECS1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => 'N/A.',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'IllegalAddress',
+ 'errorMessage' => 'Illegal HTTP address',
+ ],
+ [
+ 'errorCode' => 'OperationError',
+ 'errorMessage' => 'Operation failed',
+ ],
+ [
+ 'errorCode' => 'TaskNotExists',
+ 'errorMessage' => 'Task does not exist',
+ ],
+ [
+ 'errorCode' => 'OperatorInvalid',
+ 'errorMessage' => 'Operator invalid',
+ ],
+ [
+ 'errorCode' => 'NameRepeat',
+ 'errorMessage' => 'Task name repeat',
+ ],
+ [
+ 'errorCode' => 'CreateAlarmError',
+ 'errorMessage' => 'Create alarm error',
+ ],
+ [
+ 'errorCode' => 'NameNotExists',
+ 'errorMessage' => 'Task name not exists',
+ ],
+ [
+ 'errorCode' => 'OperatorCityInvalid',
+ 'errorMessage' => 'Invalid Isp.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'RestrictedUser',
+ 'errorMessage' => 'The user\'s operation is restricted, please register NAAM product code',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"68192f5d-0d45-4b98-9724-892813f86c71\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"AttachAlertResult\\": {\\n \\"Contact\\": [\\n {\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"5dd33455-4f65-4b0c-9200-33d66f3f340b\\",\\n \\"Success\\": \\"true\\",\\n \\"RuleId\\": \\"SystemDefault_acs_ecs_dashboard_InternetOutRate_Percent\\"\\n }\\n ]\\n }\\n },\\n \\"CreateResultList\\": {\\n \\"CreateResultList\\": [\\n {\\n \\"TaskId\\": \\"2c8dbdf9-a3ab-46a1-85a4-f094965e****\\",\\n \\"TaskName\\": \\"HanZhou_ECS1\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateSiteMonitorResponse>\\r\\n\\t<Message>successful</Message>\\r\\n\\t<RequestId>68192f5d-0d45-4b98-9724-892813f86c71</RequestId>\\r\\n\\t<Data>\\r\\n\\t\\t<AttachAlertResult>\\r\\n\\t\\t\\t<Contact>\\r\\n\\t\\t\\t\\t<Message>successful</Message>\\r\\n\\t\\t\\t\\t<RequestId>5dd33455-4f65-4b0c-9200-33d66f3f340b</RequestId>\\r\\n\\t\\t\\t\\t<RuleId>SystemDefault_acs_ecs_dashboard_InternetOutRate_Percent</RuleId>\\r\\n\\t\\t\\t\\t<Code>200</Code>\\r\\n\\t\\t\\t\\t<Success>true</Success>\\r\\n\\t\\t\\t</Contact>\\r\\n\\t\\t</AttachAlertResult>\\r\\n\\t</Data>\\r\\n\\t<Code>200</Code>\\r\\n\\t<CreateResultList>\\r\\n\\t\\t<CreateResultList>\\r\\n\\t\\t\\t<TaskId>2c8dbdf9-a3ab-46a1-85a4-f094965e****</TaskId>\\r\\n\\t\\t\\t<TaskName>HanZhou_ECS1</TaskName>\\r\\n\\t\\t</CreateResultList>\\r\\n\\t</CreateResultList>\\r\\n\\t<Success>true</Success>\\r\\n</CreateSiteMonitorResponse>","errorExample":""}]',
+ 'title' => 'CreateSiteMonitor',
+ 'description' => 'This topic provides an example on how to create a site monitoring task named `HanZhou_ECS1`. The URL that is monitored by the task is `https://www.aliyun.com` and the type of the task is `HTTPS`.'."\n",
+ 'requestParamsDescription' => 'The following tables describe the extended options of the HTTP, HTTPS, PING, TCP, UDP, DNS, WEBSOCKET, SMTP, POP3, and FTP protocols specified by the TaskType parameter.'."\n"
+ ."\n"
+ .'* HTTP or HTTPS'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|http\\_method|String|The HTTP or HTTPS request method. Valid values: GET, POST, and HEAD. Default value: GET.|'."\n"
+ .'|header|String|The custom HTTP headers that are separated by line feeds (\\\\n).Each header must comply with the HTTP protocol. Each header must be a key-value pair in which the key and value are separated by a colon (:).|'."\n"
+ .'|cookie|String|The HTTP cookie that is specified in compliance with the HTTP request standard.|'."\n"
+ .'|request\\_content|String|The content of the request. The content can be in the JSON or form format. If this parameter is not specified, the request body is empty.|'."\n"
+ .'|response\\_content|String|The expected content of the response. The first 64 bytes of the content returned by the HTTP server are checked during site monitoring.|'."\n"
+ .'|match\\_rule|String|0: The detection is successful if the response does not contain the content specified by the response\\_content parameter.1: The detection is successful if the response contains the content specified by the response\\_content parameter.|'."\n"
+ .'|username|String|If the username parameter is specified, the HTTP request contains the basic authentication header.|'."\n"
+ .'|password|String|The password that is used to authenticate the HTTP or HTTPS request.|'."\n"
+ .'|time\\_out|int|The timeout period. Unit: milliseconds. Default value: 5.|'."\n"
+ .'|max\\_redirect|int|The maximum number of redirections. The default value is 5 for a detection point that is running on an Elastic Compute Service (ECS) instance and 2 for a detection point that is provided by a carrier.To disable redirections, set the value to 0.Valid values: 0 to 50.|'."\n"
+ ."\n"
+ .'* PING'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|failure\\_rate|Text|If the rate of the failed pings exceeds the value of this parameter, the detection fails and the status code 610 or 615 is returned. The error message of the status code 610 is PingAllFail and the error message of the status code 615 is PingPartialFail.Default value: 0.1.|'."\n"
+ .'|ping\\_num|int|The number of times that the monitored address is pinged. Default value: 10.Valid values: 1 to 100.|'."\n"
+ ."\n"
+ .'* DNS'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|dns\\_server|string|The domain name or IP address of the Domain Name System (DNS) server.|'."\n"
+ .'|dns\\_type|string|The type of the DNS records to query. Valid values: A, NS, CNAME, MX, TXT, ANY, and AAAA.|'."\n"
+ .'|expect\\_value|string|The list of expected values. Separate the expected values with space characters.|'."\n"
+ .'|match\\_rule|string|The relationship between the list of expected values and the list of DNS results. If the two lists do not meet the specified relationship, the detection fails. Valid values:Empty string or IN\\_DNS: The list of expected values is a subset of the list of DNS results.DNS\\_IN: The list of DNS results is a subset of the list of expected values.EQUAL: The list of DNS results is the same as the list of expected values.ANY: The list of DNS results intersects with the list of expected values.|'."\n"
+ ."\n"
+ .'* FTP'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|port|int|The port number of the FTP server. If this parameter is not specified, the default value is used. The default port number is 21 for FTP and 990 for FTPS.|'."\n"
+ .'|username|string|The username that is used to log on to the FTP server. If this parameter is not specified, anonymous logon is used.|'."\n"
+ .'|password|string|The password that is used to log on to the FTP server.|'."\n"
+ ."\n"
+ .'* POP3 or SMTP'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|port|int|The port number of the POP3 or SMTP server. The default port number is 110 for POP3, 995 for POP3S, and 25 for SMTP.|'."\n"
+ .'|username|string|The username that is used to log on to the POP3 or SMTP server. The username and password that are used to log on to the POP3 or SMTP server are required.|'."\n"
+ .'|password|string|The password that is used to log on to the POP3 or SMTP server. The username and password that are used to log on to the POP3 or SMTP server are required.|'."\n"
+ ."\n"
+ .'* TCP or UDP'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|port|int|The port number of the TCP or UDP server.|'."\n"
+ .'|request\\_content|string|The content of the request. If the request\\_format parameter is set to hex, the value of the request\\_content parameter is parsed in the hexadecimal format.|'."\n"
+ .'|request\\_format|string|If the request\\_format parameter is set to another value, the value of the request\\_content parameter is sent to the TCP or UDP server as a regular string.|'."\n"
+ .'|response\\_content|string|The content of the response. If the response from the TCP or UDP server does not contain the content specified by the response\\_content parameter, the detection fails.If the response\\_format parameter is set to hex, the value of the response\\_content parameter is parsed in the hexadecimal format.If the response\\_format parameter is set to another value, the value of the response\\_content parameter is parsed as a regular string.|'."\n"
+ ."\n"
+ .'* WEBSOCKET'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|request\\_content|string|The message content.|'."\n"
+ .'|empty\\_message|boolean|Allows the server to return no message or an empty string.|',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => "\n"
+ ."\n\n",
+ ],
+ 'CreateInstantSiteMonitor' => [
+ 'summary' => 'Creates an instant test task.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Address',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The URL or IP address that you want to test.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'http://www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'TaskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the instant test task. Valid values: HTTP, PING, TCP, UDP, and DNS.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'HTTP',
+ ],
+ ],
+ [
+ 'name' => 'TaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the instant test task.'."\n"
+ ."\n"
+ .'The name must be 4 to 100 characters in length, and can contain letters, digits, and underscores (\\_).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'task1',
+ ],
+ ],
+ [
+ 'name' => 'IspCities',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The detection points. If you leave this parameter empty, the system randomly selects three detection points.'."\n"
+ ."\n"
+ .'The value is a `JSON array`. Example: {"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"}. The values of the city field indicate Beijing, Hangzhou, and Qingdao.'."\n"
+ ."\n"
+ .'For information about how to obtain detection points, see [DescribeSiteMonitorISPCityList](~~115045~~).'."\n"
+ ."\n"
+ .'> You must specify one of the `IspCities` and `RandomIspCity` parameters.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"}]',
+ ],
+ ],
+ [
+ 'name' => 'OptionsJson',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The extended options of the protocol that is used by the instant test task. The options vary based on the protocol.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"time_out":5000}',
+ ],
+ ],
+ [
+ 'name' => 'RandomIspCity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of detection points.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* You must specify one of the `IspCities` and `RandomIspCity` parameters. If you specify the `RandomIspCity` parameter, the `IspCities` parameter automatically becomes invalid.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '0',
+ ],
+ ],
+ [
+ 'name' => 'AgentGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'enum' => [
+ 'PC',
+ 'MOBILE',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The error code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '68192f5d-0d45-4b98-9724-892813f86c71',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ .'* true: The request was successful.'."\n"
+ .'* false: The request failed.',
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'CreateResultList' => [
+ 'description' => 'The results for creating the instant test task.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The ID of the instant test task.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskId' => [
+ 'description' => 'The ID of the instant test task.'."\n",
+ 'type' => 'string',
+ 'example' => '2c8dbdf9-a3ab-46a1-85a4-f094965e****',
+ ],
+ 'TaskName' => [
+ 'description' => 'The name of the instant test task.'."\n",
+ 'type' => 'string',
+ 'example' => 'task1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'IllegalAddress',
+ 'errorMessage' => 'Illegal HTTP address',
+ ],
+ [
+ 'errorCode' => 'OperationError',
+ 'errorMessage' => 'Operation failed',
+ ],
+ [
+ 'errorCode' => 'TaskNotExists',
+ 'errorMessage' => 'Task does not exist',
+ ],
+ [
+ 'errorCode' => 'OperatorInvalid',
+ 'errorMessage' => 'Operator invalid',
+ ],
+ [
+ 'errorCode' => 'OperatorCityInvalid',
+ 'errorMessage' => 'Operator City invalid',
+ ],
+ [
+ 'errorCode' => 'NameRepeat',
+ 'errorMessage' => 'Task name repeat',
+ ],
+ [
+ 'errorCode' => 'CreateAlarmError',
+ 'errorMessage' => 'Create alarm error',
+ ],
+ [
+ 'errorCode' => 'NameNotExists',
+ 'errorMessage' => 'Task name not exists',
+ ],
+ [
+ 'errorCode' => 'Illegal Task Name',
+ 'errorMessage' => 'The task name of the sitemonitor task is illegal.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"68192f5d-0d45-4b98-9724-892813f86c71\\",\\n \\"Success\\": \\"true\\",\\n \\"CreateResultList\\": [\\n {\\n \\"TaskId\\": \\"2c8dbdf9-a3ab-46a1-85a4-f094965e****\\",\\n \\"TaskName\\": \\"task1\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<CreateInstantSiteMonitorResponse>\\r\\n\\t<Message>successful</Message>\\r\\n\\t<RequestId>68192f5d-0d45-4b98-9724-892813f86c71</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<CreateResultList>\\r\\n\\t\\t<TaskId>2c8dbdf9-a3ab-46a1-85a4-f094965e****</TaskId>\\r\\n\\t\\t<TaskName>task1</TaskName>\\r\\n\\t</CreateResultList>\\r\\n\\t<Success>true</Success>\\r\\n</CreateInstantSiteMonitorResponse>\\t","errorExample":""}]',
+ 'title' => 'CreateInstantSiteMonitor',
+ 'description' => 'You can create an instant test task only by using the Alibaba Cloud account that you used to enable Network Analysis and Monitoring. '."\n"
+ ."\n"
+ .'This topic provides an example to show how to create an instant test task. The name of the task is `task1`. The tested address is `http://www.aliyun.com`. The test type is `HTTP`. The number of detection points is `1`.',
+ 'requestParamsDescription' => '# Extended options of the TaskType parameter'."\n"
+ ."\n"
+ .'The following tables describe the extended options of the HTTP, PING, TCP, UDP, and DNS protocols specified by the `TaskType` parameter.'."\n"
+ ."\n"
+ .'* HTTP'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|http\\_method|String|The HTTP request method. Valid values: GET, POST, and HEAD. Default value: GET.|'."\n"
+ .'|header|String|The custom HTTP headers that are separated by line feeds (\\\\n). Each header must comply with the HTTP protocol. Each header must be a key-value pair in which the key and value are separated by a colon (:).|'."\n"
+ .'|cookie|String|The HTTP cookie that is specified in compliance with the HTTP request standard.|'."\n"
+ .'|request\\_content|String|The content of the request. The content can be in the JSON or form format. If this parameter is not specified, the request body is empty.|'."\n"
+ .'|response\\_content|String|The expected content of the response. The first 64 bytes of the content returned by the HTTP server are checked during site monitoring.|'."\n"
+ .'|match\\_rule|String|0: The detection is successful if the response does not contain the content specified by the response\\_content parameter. 1: The detection is successful if the response contains the content specified by the response\\_content parameter.|'."\n"
+ .'|username|String|If the username parameter is specified, the HTTP request contains the basic authentication header.|'."\n"
+ .'|password|String|The password used to authenticate the HTTP request.|'."\n"
+ .'|time\\_out|int|The timeout period. Unit: milliseconds. Default value: 30000.|'."\n"
+ .'|max\\_redirect|int|The maximum number of redirections. The default value is 5 for a detection point that is running on an Elastic Compute Service (ECS) instance and 2 for a detection point that is provided by a carrier. To disable redirections, set the value to 0. Valid values: 0 to 50.|'."\n"
+ ."\n"
+ .'* PING'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|failure\\_rate|int|If the rate of the failed pings exceeds the value of this parameter, the detection fails and the status code 610 or 615 is returned. The error message of the status code 610 is PingAllFail and the error message of the status code 615 is PingPartialFail. Default value: 0.1.|'."\n"
+ .'|ping\\_num|int|The number of times that the monitored address is pinged. Default value: 20. Valid values: 1 to 100.|'."\n"
+ ."\n"
+ .'* TCP or UDP'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|port|int|The port number of the TCP or UDP server.|'."\n"
+ .'|request\\_content|string|The content of the request. If the request\\_format parameter is set to hex, the value of the request\\_content parameter is parsed in the hexadecimal format.|'."\n"
+ .'|request\\_format|string|If the request\\_format parameter is set to another value, the value of the request\\_content parameter is sent to the TCP or UDP server as a regular string.|'."\n"
+ .'|response\\_content|string|The content of the response. If the response from the TCP or UDP server does not contain the content specified by the response\\_content parameter, the detection fails. If the response\\_format parameter is set to hex, the value of the response\\_content parameter is parsed in the hexadecimal format. If the response\\_format parameter is set to another value, the value of the response\\_content parameter is parsed as a regular string.|'."\n"
+ ."\n"
+ .'* DNS'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|dns\\_server|string|The domain name or IP address of the Domain Name System (DNS) server.|'."\n"
+ .'|dns\\_type|string|The type of the DNS records to query. Valid values: A, NS, CNAME, MX, TXT, and ANY.|'."\n"
+ .'|expect\\_value|string|The list of expected values. Separate the expected values with space characters.|'."\n"
+ .'|match\\_rule|string|The relationship between the list of expected values and the list of DNS results. If the two lists do not meet the specified relationship, the detection fails. Valid values: Empty string or IN\\_DNS: The list of expected values is a subset of the list of DNS results. DNS\\_IN: The list of DNS results is a subset of the list of expected values. EQUAL: The list of DNS results is the same as the list of expected values. ANY: The list of DNS results intersects with the list of expected values.|',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'BatchCreateInstantSiteMonitor' => [
+ 'summary' => 'Creates site monitoring tasks.',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The site monitoring tasks.'."\n"
+ ."\n"
+ .'> You must create at least one site monitoring task. You must specify all of the `Address`, `TaskName`, and `TaskType` parameters in each request.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Address' => [
+ 'description' => 'The URL or IP address that is monitored by the task.'."\n"
+ ."\n"
+ .'> You must create at least one site monitoring task. You must specify all of the `Address`, `TaskName`, and `TaskType` parameters in each request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com',
+ ],
+ 'IspCities' => [
+ 'description' => 'The detection points. If you leave this parameter empty, the system randomly selects three detection points.'."\n"
+ ."\n"
+ .'The value is a `JSON array`. Example: `{"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"}`. The values of the city field indicate Beijing, Hangzhou, and Qingdao.'."\n"
+ ."\n"
+ .'For information about how to obtain detection points, see [DescribeSiteMonitorISPCityList](~~115045~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"}]',
+ ],
+ 'OptionsJson' => [
+ 'description' => 'The extended options of the protocol that is used by the site monitoring task. The options vary based on the protocol.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"time_out":5000}',
+ ],
+ 'TaskName' => [
+ 'description' => 'The name of the site monitoring task.'."\n"
+ ."\n"
+ .'The name must be 4 to 100 characters in length, and can contain letters, digits, and underscores (\\_).'."\n"
+ ."\n"
+ .'> You must create at least one site monitoring task. You must specify all of the `Address`, `TaskName`, and `TaskType` parameters in each request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HangZhou_ECS1',
+ ],
+ 'TaskType' => [
+ 'description' => 'The type of the site monitoring task.'."\n"
+ ."\n"
+ .'Valid values: HTTP, PING, TCP, UDP, DNS, SMTP, POP3, and FTP.'."\n"
+ ."\n"
+ .'> You must create at least one site monitoring task. You must specify all of the `Address`, `TaskName`, and `TaskType` parameters in each request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 200,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '7AE72720-2C96-5446-9F2B-308C7CEDFF1A',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => 'The information about the site monitoring task.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskName' => [
+ 'description' => 'The name of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'HangZhou_ECS1',
+ ],
+ 'TaskId' => [
+ 'description' => 'The ID of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => '679fbe4f-b80b-4706-91b2-5427b43e****',
+ ],
+ ],
+ ],
+ 'example' => '[{"taskName": "HangZhou_ECS1", "taskId": "679fbe4f-b80b-4706-91b2-5427b43e****"}]',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'The parameter is missing or invalid. %s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ResourceOverLimit',
+ 'errorMessage' => 'The resource has exceeded the limit. %s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7AE72720-2C96-5446-9F2B-308C7CEDFF1A\\",\\n \\"Message\\": \\"successful\\",\\n \\"Success\\": true,\\n \\"Data\\": [\\n {\\n \\"TaskName\\": \\"HangZhou_ECS1\\",\\n \\"TaskId\\": \\"679fbe4f-b80b-4706-91b2-5427b43e****\\"\\n }\\n ],\\n \\"Code\\": \\"200\\"\\n}","errorExample":""},{"type":"xml","example":"<BatchCreateInstantSiteMonitorResponse>\\n <RequestId>7AE72720-2C96-5446-9F2B-308C7CEDFF1A</RequestId>\\n <Message>successful</Message>\\n <Data>\\n <taskName>HangZhou_ECS1</taskName>\\n <taskId>679fbe4f-b80b-4706-91b2-5427b43e****</taskId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</BatchCreateInstantSiteMonitorResponse>","errorExample":""}]',
+ 'title' => 'BatchCreateInstantSiteMonitor',
+ 'description' => 'This topic provides an example on how to create a site monitoring task named `HangZhou_ECS1`. The URL that is monitored by the task is `https://www.aliyun.com` and the type of the task is `HTTP`. The returned result shows that the site monitoring task is created. The name of the site monitoring task is `HangZhou_ECS1` and the task ID is `679fbe4f-b80b-4706-91b2-5427b43e****`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteSiteMonitors' => [
+ 'summary' => 'Deletes one or more site monitoring tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The IDs of the site monitoring tasks that you want to delete. Separate multiple task IDs with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '01adacc2-ece5-41b6-afa2-3143ab5d****,43bd1ead-514f-4524-813e-228ce091****',
+ ],
+ ],
+ [
+ 'name' => 'IsDeleteAlarms',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to delete the alert rules configured for the site monitoring tasks. Valid values:'."\n"
+ ."\n"
+ .'* true (default value)'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message. If the call was successful, the value success is returned. If the call failed, an error message such as `TaskId not found` is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '123BCC5D-8B63-48EA-B747-9A8995BE7AA6',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. The value true indicates success. The value false indicates failure.'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => 'The information about the site monitoring tasks that were deleted.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'count' => [
+ 'description' => 'The number of the site monitoring tasks that were deleted.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ [
+ 'errorCode' => 'UnauthorizedTasks',
+ 'errorMessage' => 'You are not permitted to operate the specified tasks.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => 'TaskId not found',
+ ],
+ [
+ 'errorCode' => 'TaskNotExist',
+ 'errorMessage' => 'The specified task does not exist.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'staticInfo' => [],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"请求成功\\",\\n \\"RequestId\\": \\"123BCC5D-8B63-48EA-B747-9A8995BE7AA6\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"count\\": 0\\n }\\n}","errorExample":""},{"type":"xml","example":"<DeleteSiteMonitorsResponse>\\n\\t\\t<Data>\\n\\t\\t\\t<count>0</count>\\n\\t\\t</Data>\\n\\t\\t<Message>请求成功</Message>\\n\\t\\t<RequestId>123BCC5D-8B63-48EA-B747-9A8995BE7AA6</RequestId>\\n\\t\\t<Success>true</Success>\\n\\t\\t<Code>200</Code>\\n<DeleteSiteMonitorsResponse>","errorExample":""}]',
+ 'title' => 'DeleteSiteMonitors',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DisableSiteMonitors' => [
+ 'summary' => 'Disables site monitoring tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the site monitoring task. Separate multiple IDs with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '49f7b317-7645-4cc9-94fd-ea42e522****,49f7b317-7645-4cc9-94fd-ea42e522****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3fcd12e7-d387-42ee-b77e-661c775bb17f',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => 'The number of detection points that are affected by the site monitoring tasks.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'count' => [
+ 'description' => 'The number of detection points.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ [
+ 'errorCode' => 'UnauthorizedTasks',
+ 'errorMessage' => 'You are not permitted to operate the specified tasks.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'TaskNotExist',
+ 'errorMessage' => 'The specified task does not exist.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ThrottlingException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"3fcd12e7-d387-42ee-b77e-661c775bb17f\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"count\\": 0\\n }\\n}","errorExample":""},{"type":"xml","example":"<DisableSiteMonitorsResponse>\\r\\n\\t<Message>successful</Message>\\r\\n\\t<RequestId>EC3F33C8-9149-493C-92A8-9B33A9DA951C</RequestId>\\r\\n\\t<Data>\\r\\n\\t\\t<count>0</count>\\r\\n\\t</Data>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DisableSiteMonitorsResponse>","errorExample":""}]',
+ 'title' => 'DisableSiteMonitors',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifySiteMonitor' => [
+ 'summary' => 'Modifies a site monitoring task.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Address',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The URL or IP address that is monitored by the task.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http://www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2c8dbdf9-a3ab-46a1-85a4-f094965e****',
+ ],
+ ],
+ [
+ 'name' => 'TaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the site monitoring task. The name must be 4 to 100 characters in length, and can contain letters, digits, and underscores (\\_).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HanZhou_ECS2',
+ ],
+ ],
+ [
+ 'name' => 'Interval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The interval at which detection requests are sent. Valid values: 1, 5, and 15. Unit: minutes. Default value: 1.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'IspCities',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The information of the detection points. The value is a JSON array. Example: `[{"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"}]`. The values of the `city` field indicate Beijing, Hangzhou, and Qingdao.'."\n"
+ ."\n"
+ .'> You can call the DescribeSiteMonitorISPCityList operation to query the detection points. For more information, see [DescribeSiteMonitorISPCityList](~~115045~~). If you leave this parameter empty, the system randomly selects three detection points.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"}]',
+ ],
+ ],
+ [
+ 'name' => 'OptionsJson',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The extended options of the protocol that is used by the site monitoring task. The options vary based on the protocol.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"time_out":5000}',
+ ],
+ ],
+ [
+ 'name' => 'AlertIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule. You can call the DescribeMetricRuleList operation to query the IDs of existing alert rules in CloudMonitor. For more information, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '49f7c317-7645-4cc9-94fd-ea42e122****',
+ ],
+ ],
+ [
+ 'name' => 'IntervalUnit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The unit of the metric.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ms',
+ ],
+ ],
+ [
+ 'name' => 'CustomSchedule',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => 'The custom detection period. You can only select a time period from Monday to Sunday for detection.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"start_hour":0,"end_hour":24, "days":[0], "time_zone":"Local"}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '68192f5d-0d45-4b98-9724-892813f86c71',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => 'The result of modifying the task.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'count' => [
+ 'description' => 'The number of site monitoring tasks.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ 'description' => 'N/A',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'IllegalAddress',
+ 'errorMessage' => 'Illegal HTTP address',
+ ],
+ [
+ 'errorCode' => 'OperationError',
+ 'errorMessage' => 'Operation failed',
+ ],
+ [
+ 'errorCode' => 'TaskNotExists',
+ 'errorMessage' => 'Task does not exist',
+ ],
+ [
+ 'errorCode' => 'OperatorInvalid',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'NameRepeat',
+ 'errorMessage' => 'Task name repeat',
+ ],
+ [
+ 'errorCode' => 'CreateAlarmError',
+ 'errorMessage' => 'Create alarm error',
+ ],
+ [
+ 'errorCode' => 'NameNotExists',
+ 'errorMessage' => 'Task name not exists',
+ ],
+ [
+ 'errorCode' => 'OperatorCityInvalid',
+ 'errorMessage' => 'Invalid Isp.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ [
+ 'errorCode' => 'RestrictedUser',
+ 'errorMessage' => 'The user\'s operation is restricted, please register NAAM product code.',
+ ],
+ [
+ 'errorCode' => 'UnauthorizedTasks',
+ 'errorMessage' => 'You are not permitted to operate the specified tasks.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'TaskNotExist',
+ 'errorMessage' => 'The specified task does not exist.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ThrottlingException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternetServerError',
+ 'errorMessage' => 'System internal error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"68192f5d-0d45-4b98-9724-892813f86c71\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"count\\": 1\\n }\\n}","errorExample":""},{"type":"xml","example":"<ModifySiteMonitorResponse>\\r\\n\\t<Message>successful</Message>\\r\\n\\t<RequestId>32E77F32-B86E-4763-A0BB-0311581ABE67</RequestId>\\r\\n\\t<Data>\\r\\n\\t\\t<count>1</count>\\r\\n\\t</Data>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</ModifySiteMonitorResponse>","errorExample":""}]',
+ 'title' => 'ModifySiteMonitor',
+ 'description' => 'The number of site monitoring tasks.'."\n",
+ 'requestParamsDescription' => 'Site monitoring supports the following eight protocols. The following tables describe the extended options specified by the OptionsJson parameter for each protocol.'."\n"
+ ."\n"
+ .'* HTTP'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|http\\_method|String|The HTTP request method. Valid values: GET, POST, and HEAD. Default value: GET.|'."\n"
+ .'|header|String|The custom HTTP headers that are separated by line feeds (\\\\n).Each header must comply with the HTTP protocol. Each header must be a key-value pair in which the key and value are separated by a colon (:).|'."\n"
+ .'|cookie|String|The HTTP cookie that is specified in compliance with the HTTP request standard.|'."\n"
+ .'|request\\_content|String|The content of the request. The content can be in the JSON or form format. If this parameter is not specified, the request body is empty.|'."\n"
+ .'|response\\_content|String|The expected content of the response. The first 64 bytes of the content returned by the HTTP server are checked during site monitoring.|'."\n"
+ .'|match\\_rule|String|The value 0 indicates that the detection is successful if the response does not contain the content specified by the response\\_content parameter.1: If the response contains the content specified by the response\\_content parameter, the detection is successful.|'."\n"
+ .'|username|String|If the username parameter is specified, the HTTP request contains the basic authentication header.|'."\n"
+ .'|password|String|The password used to authenticate the HTTP request.|'."\n"
+ .'|time\\_out|int|The timeout period. Unit: milliseconds. Default value: 5.|'."\n"
+ .'|max\\_redirect|int|The maximum number of redirections. The default value is 5 for a detection point that is running on an Elastic Compute Service (ECS) instance and 2 for a detection point that is provided by a carrier.To disable redirections, set the value to 0.Valid values: 0 to 50.|'."\n"
+ ."\n\n"
+ .'* PING'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|failure\\_rate|int|If the rate of the failed pings exceeds the value of this parameter, the detection fails and the status code 610 or 615 is returned. The error message of the status code 610 is PingAllFail and the error message of the status code 615 is PingPartialFail.Default value: 0.1.|'."\n"
+ .'|ping\\_num|int|The number of times that the monitored address is pinged. Default value: 20.Valid values: 1 to 100.|'."\n"
+ ."\n\n"
+ .'* DNS'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|dns\\_server|string|The domain name or IP address of the Domain Name System (DNS) server.|'."\n"
+ .'|dns\\_type|string|The type of the DNS records to query. Valid values: A, NS, CNAME, MX, TXT, and ANY.|'."\n"
+ .'|expect\\_value|string|The list of expected values. Separate the expected values with spaces.|'."\n"
+ .'|match\\_rule|string|The relationship between the list of expected values and the list of DNS results. If the two lists do not meet the specified relationship, the detection fails. Valid values:Empty string or IN\\_DNS: The list of expected values is a subset of the list of DNS results.DNS\\_IN: The list of DNS results is a subset of the list of expected values.EQUAL: The list of DNS results is the same as the list of expected values.ANY: The list of DNS results intersects with the list of expected values.|'."\n"
+ ."\n\n"
+ .'* FTP'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|port|int|The port number of the FTP server. If this parameter is not specified, the default value is used. The default port number is 21 for FTP and 990 for FTPS.|'."\n"
+ .'|username|string|The username that is used to log on to the FTP server. If this parameter is not specified, anonymous logon is used.|'."\n"
+ .'|password|string|The password that is used to log on to the FTP server.|'."\n"
+ ."\n\n"
+ .'* POP3/SMTP'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|port|int|The port number of the POP3 server. The default port number is 110 for POP3 and 995 for POP3S.|'."\n"
+ .'|username|string|The username used to log on to the POP3 or SMTP server.|'."\n"
+ .'|password|string|The password used to log on to the POP3 or SMTP server.|'."\n"
+ ."\n\n"
+ .'* TCP/UDP'."\n"
+ ."\n"
+ .'|Parameter|Type|Description|'."\n"
+ .'|---|---|---|'."\n"
+ .'|port|int|The port number of the TCP or UDP server.|'."\n"
+ .'|request\\_content|string|The content of the request. If the request\\_format parameter is set to hex, the value of the request\\_content parameter is parsed in the hexadecimal format.|'."\n"
+ .'|request\\_format|string|If the request\\_format parameter is set to another value, the value of the request\\_content parameter is sent to the TCP or UDP server as a regular string.|'."\n"
+ .'|response\\_content|string|The response content. If the response from the TCP or UDP server does not contain the content specified by the response\\_content parameter, the detection fails. If the response\\_format parameter is set to hex, the value of the response\\_format parameter is parsed in the hexadecimal format. If the response\\_format parameter is set to another value, the value of the response\\_content parameter is parsed as a regular string.|',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'EnableSiteMonitors' => [
+ 'summary' => 'Enables site monitoring tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the site monitoring task. Separate multiple IDs with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '49f7b317-7645-4cc9-94fd-ea42e522****,49f7b317-7645-4cc9-94fd-ea42e522****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3fcd12e7-d387-42ee-b77e-661c775bb17f',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => 'The number of detection points that are affected by the site monitoring tasks.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'count' => [
+ 'description' => 'The number of detection points.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ [
+ 'errorCode' => 'RestrictedUser',
+ 'errorMessage' => 'The user\'s operation is restricted, please register NAAM product code.',
+ ],
+ [
+ 'errorCode' => 'UnauthorizedTasks',
+ 'errorMessage' => 'You are not permitted to operate the specified tasks.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'TaskNotExist',
+ 'errorMessage' => 'The specified task does not exist.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ThrottlingException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"3fcd12e7-d387-42ee-b77e-661c775bb17f\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"count\\": 0\\n }\\n}","errorExample":""},{"type":"xml","example":"<DisableSiteMonitorsResponse>\\n\\t<Message>successful</Message>\\n\\t<RequestId>7AB49ADD-3276-4161-B9F9-8662CAA800D6</RequestId>\\n\\t<Data>\\n\\t\\t<count>0</count>\\n\\t</Data>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</DisableSiteMonitorsResponse>","errorExample":""}]',
+ 'title' => 'EnableSiteMonitors',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSiteMonitorQuota' => [
+ 'summary' => 'Queries the quotas and version of site monitoring.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '26860260-76C6-404E-AB7A-EB98D36A6885',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Data' => [
+ 'description' => 'The quota.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SiteMonitorOperatorQuotaQuota' => [
+ 'description' => 'The quota of detection points that are not provided by Alibaba Cloud. Default value: 0.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'SecondMonitor' => [
+ 'description' => 'Indicates whether second-level monitoring is enabled. Valid values:'."\n"
+ ."\n"
+ .'* true: Second-level monitoring is enabled.'."\n"
+ .'* false: Second-level monitoring is disabled.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'SiteMonitorQuotaTaskUsed' => [
+ 'description' => 'The used quota of site monitoring tasks.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '6',
+ ],
+ 'SiteMonitorTaskQuota' => [
+ 'description' => 'The quota of site monitoring tasks.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'SiteMonitorVersion' => [
+ 'description' => 'The version of site monitoring. Valid values:'."\n"
+ ."\n"
+ .'* V1'."\n"
+ .'* V2'."\n",
+ 'type' => 'string',
+ 'example' => 'V1',
+ ],
+ 'SiteMonitorIdcQuota' => [
+ 'description' => 'The quota of detection points that are provided by Alibaba Cloud. Five detection points are provided for free.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'staticInfo' => [],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"请求成功\\",\\n \\"RequestId\\": \\"26860260-76C6-404E-AB7A-EB98D36A6885\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"SiteMonitorOperatorQuotaQuota\\": 0,\\n \\"SecondMonitor\\": false,\\n \\"SiteMonitorQuotaTaskUsed\\": 6,\\n \\"SiteMonitorTaskQuota\\": 10,\\n \\"SiteMonitorVersion\\": \\"V1\\",\\n \\"SiteMonitorIdcQuota\\": 5\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeSiteMonitorQuotaResponse>\\n\\t\\t<Message>请求成功</Message>\\n\\t\\t<RequestId>C1359088-B0D3-4344-BA51-FB920425D836</RequestId>\\n\\t\\t<Data>\\n\\t\\t\\t<SiteMonitorVersion>V2</SiteMonitorVersion>\\n\\t\\t\\t<SiteMonitorQuotaTaskUsed>2</SiteMonitorQuotaTaskUsed>\\n\\t\\t\\t<SecondMonitor>false</SecondMonitor>\\n\\t\\t\\t<SiteMonitorOperatorQuotaQuota>0</SiteMonitorOperatorQuotaQuota>\\n\\t\\t\\t<SiteMonitorTaskQuota>100</SiteMonitorTaskQuota>\\n\\t\\t\\t<SiteMonitorIdcQuota>5</SiteMonitorIdcQuota>\\n\\t\\t</Data>\\n\\t\\t<Code>200</Code>\\n\\t\\t<Success>true</Success>\\n</DescribeSiteMonitorQuotaResponse>","errorExample":""}]',
+ 'title' => 'DescribeSiteMonitorQuota',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSiteMonitorAttribute' => [
+ 'summary' => 'Queries the details of a site monitoring task.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cc641dff-c19d-45f3-ad0a-818a0c4f****',
+ ],
+ ],
+ [
+ 'name' => 'IncludeAlert',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to return the information of the alert rules that are configured for the site monitoring task. Valid values:'."\n"
+ ."\n"
+ .'* true: The system returns the information of the alert rules that are configured for the site monitoring task.'."\n"
+ .'* false (default): The system does not return the information of the alert rules that are configured for the site monitoring task.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The response parameters.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'MetricRules' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'MetricRule' => [
+ 'description' => 'The alert rules that are configured for the site monitoring task.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert rule that is configured for the site monitoring task.',
+ 'type' => 'object',
+ 'properties' => [
+ 'ActionEnable' => [
+ 'description' => 'Indicates whether the alert rule is enabled. Valid values:'."\n"
+ ."\n"
+ .'* true: The alert rule is enabled.'."\n"
+ .'* false: The alert rule is disabled.'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'AlarmActions' => [
+ 'description' => 'The alert contact group to which alert notifications are sent.'."\n",
+ 'type' => 'string',
+ 'example' => 'CloudMonitor',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold in the alert rule. Valid values:'."\n"
+ ."\n"
+ .'* `>=`'."\n"
+ .'* `>`'."\n"
+ .'* `<=`'."\n"
+ .'* `<`'."\n"
+ .'* `=`'."\n"
+ .'* `!=`'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanYesterday',
+ ],
+ 'Dimensions' => [
+ 'description' => 'The dimension of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"taskId": "cc641dff-c19d-45f3-ad0a-818a0c4f****" }]',
+ ],
+ 'EvaluationCount' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Expression' => [
+ 'description' => 'The expression that is used to trigger alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '$Availability=30',
+ ],
+ 'Level' => [
+ 'description' => 'The alert severity. Valid values:'."\n"
+ ."\n"
+ .'* 1: critical'."\n"
+ .'* 2: warning'."\n"
+ .'* 3: information'."\n",
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'Availability',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'The value is in the following format: acs_service name.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_networkmonitor',
+ ],
+ 'OkActions' => [
+ 'description' => 'The alert contact group that receives alert notifications.'."\n",
+ 'type' => 'string',
+ 'example' => '[ "CloudMonitor"]',
+ ],
+ 'Period' => [
+ 'description' => 'The time interval. The value is the same as the interval at which metric data is reported. Unit: seconds.'."\n"
+ ."\n"
+ .'> If you specify a statistical period for the alert rule, data is queried based on the statistical period.'."\n",
+ 'type' => 'string',
+ 'example' => '15s',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'bf071ae_7b7aec3817b0fdf****',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'rule1',
+ ],
+ 'StateValue' => [
+ 'description' => 'The alert status. Valid values:'."\n"
+ ."\n"
+ .'* OK: The alert rule has no active alerts.'."\n"
+ .'* ALARM: The alert rule has active alerts.'."\n",
+ 'type' => 'string',
+ 'example' => 'OK',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical method of the alert rule. Valid values:'."\n"
+ ."\n"
+ .'* Availability: the percentage of available detection points'."\n"
+ .'* AvailableNumber: the number of available detection points'."\n"
+ .'* ErrorCodeMaximum: a status code for an alert'."\n"
+ .'* ErrorCodeMinimum: all status codes for a set of alerts'."\n"
+ .'* Average: response time'."\n",
+ 'type' => 'string',
+ 'example' => 'Availability',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'example' => '30',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'D17DF650-7EBD-54D0-903A-1D4E624D7402',
+ ],
+ 'SiteMonitors' => [
+ 'description' => 'The details of the site monitoring task.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Address' => [
+ 'description' => 'The URL that is monitored by the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://aliyun.com',
+ ],
+ 'AgentGroup' => [
+ 'description' => 'The type of the detection point. Default value: PC. Valid values:'."\n"
+ .'- PC'."\n"
+ .'- MOBILE',
+ 'type' => 'string',
+ 'example' => 'PC',
+ ],
+ 'CustomSchedule' => [
+ 'description' => 'The custom detection cycle. You can specify only a time range within a week (from Monday to Sunday).',
+ 'type' => 'object',
+ 'properties' => [
+ 'days' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'days' => [
+ 'description' => 'The days in a week.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The days in a week.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ 'end_hour' => [
+ 'description' => 'The end time of the detection. Unit: hours.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '18',
+ ],
+ 'start_hour' => [
+ 'description' => 'The start time of the detection. Unit: hours.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8',
+ ],
+ 'time_zone' => [
+ 'description' => 'The time zone of the detection.',
+ 'type' => 'string',
+ 'example' => 'local',
+ ],
+ ],
+ ],
+ 'Interval' => [
+ 'description' => 'The interval at which the site monitoring task is executed. Unit: minutes. Valid values: 1, 5, 15, 30, and 60.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'IspCities' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'IspCity' => [
+ 'description' => 'The information of detection points. The information includes the carriers that provide the detection points and the cities where the detection points reside.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The detection point information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'City' => [
+ 'description' => 'The city ID.'."\n",
+ 'type' => 'string',
+ 'example' => '738',
+ ],
+ 'CityName' => [
+ 'description' => 'The city name.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Isp' => [
+ 'description' => 'The carrier ID.'."\n",
+ 'type' => 'string',
+ 'example' => '465',
+ ],
+ 'IspName' => [
+ 'description' => 'The carrier name.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Type' => [
+ 'description' => 'The network type of the detection point. Valid values: IDC, LASTMILE, and MOBILE.',
+ 'type' => 'string',
+ 'example' => 'IDC',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'OptionJson' => [
+ 'description' => 'The extended options of the site monitoring task. The options vary based on the specified protocol. For more information, see [CreateSiteMonitor](~~115048~~).'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'assertions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'assertions' => [
+ 'description' => 'The assertions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The assertions.',
+ 'type' => 'object',
+ 'properties' => [
+ 'operator' => [
+ 'description' => 'The operator. Valid values:'."\n"
+ .'- contains: contains'."\n"
+ .'- doesNotContain: does not contain'."\n"
+ .'- matches: matches a regular expression'."\n"
+ .'- doesNotMatch: does not match a regular expression'."\n"
+ .'- is: equal to'."\n"
+ .'- isNot: not equal to'."\n"
+ .'- lessThan: less than'."\n"
+ .'- moreThan: greater than',
+ 'type' => 'string',
+ 'example' => 'lessThan',
+ ],
+ 'property' => [
+ 'description' => 'The path to the assertion.'."\n"
+ .'- If the assertion type is body_json, the path is json path.'."\n"
+ .'- If the assertion type is body_xml, the path is xml path.',
+ 'type' => 'string',
+ 'example' => 'json path',
+ ],
+ 'target' => [
+ 'description' => 'The value or character to which the condition of the assertion is compared.',
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ 'type' => [
+ 'description' => 'The assertion type. Valid values:'."\n"
+ .'- response_time: checks whether the response time meets expectations.'."\n"
+ .'- status_code: checks whether the HTTP status code meets expectations.'."\n"
+ .'- header: checks whether the fields in the response header meet expectations.'."\n"
+ .'- body_text: check whether the content in the response body meets expectations by using text matching.'."\n"
+ .'- body_json: check whether the content in the response body meets expectations by using JSON parsing (JSONPath).'."\n"
+ .'- body_xml: check whether the content in the response body meets expectations by using XML parsing (XPath).',
+ 'type' => 'string',
+ 'example' => 'response_time',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'attempts' => [
+ 'description' => 'The number of retries after a DNS failure occurred.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3',
+ ],
+ 'auth_info' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => [
+ 'type' => 'string',
+ ],
+ 'username' => [
+ 'type' => 'string',
+ ],
+ 'password' => [
+ 'type' => 'string',
+ ],
+ 'use_cookie_session_key' => [
+ 'type' => 'boolean',
+ ],
+ 'grant_type' => [
+ 'type' => 'string',
+ ],
+ 'client_id' => [
+ 'type' => 'string',
+ ],
+ 'client_secret' => [
+ 'type' => 'string',
+ ],
+ 'scopes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'scopes' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ 'token_url' => [
+ 'type' => 'string',
+ ],
+ 'auth_style' => [
+ 'type' => 'string',
+ ],
+ 'access_key_id' => [
+ 'type' => 'string',
+ ],
+ 'access_key_secret' => [
+ 'type' => 'string',
+ ],
+ 'region_id' => [
+ 'type' => 'string',
+ ],
+ 'api_action' => [
+ 'type' => 'string',
+ ],
+ 'api_version' => [
+ 'type' => 'string',
+ ],
+ 'with_addon_resources' => [
+ 'type' => 'boolean',
+ ],
+ 'service_name' => [
+ 'type' => 'string',
+ ],
+ 'session_token' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'blocked_url_list' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'blocked_url_list' => [
+ 'description' => 'The blocked URLs. Wildcards are supported in paths.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The blocked URLs. Wildcards are supported in paths.',
+ 'type' => 'string',
+ 'example' => 'www.taobao.com/**',
+ ],
+ ],
+ ],
+ ],
+ 'browser_headers' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'browser_headers' => [
+ 'description' => 'The custom headers. Format: {"key": "somekey", "value":"somevalue"}.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The custom headers. Format: {"key": "somekey", "value":"somevalue"}.',
+ 'type' => 'object',
+ 'example' => '{"key":"value"}',
+ ],
+ ],
+ ],
+ ],
+ 'browser_hosts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'browser_hosts' => [
+ 'description' => 'The custom hosts. Format: {"key": "somekey", "value":"somevalue"}.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The custom hosts. Format: {"key": "somekey", "value":"somevalue"}.',
+ 'type' => 'string',
+ 'example' => '{"url":"www.taobao.com","ip":"127.0.0.1"}',
+ ],
+ ],
+ ],
+ ],
+ 'browser_info' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'browser_info' => [
+ 'description' => 'The browser information.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The browser information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'browser' => [
+ 'description' => 'The browser type.',
+ 'type' => 'string',
+ 'example' => 'Chrome',
+ ],
+ 'device' => [
+ 'description' => 'The device type.',
+ 'type' => 'string',
+ 'example' => 'laptop',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'browser_insecure' => [
+ 'description' => 'Indicates whether certificate errors are ignored. Valid values:'."\n"
+ .'- false: Certificate errors are not ignored.'."\n"
+ .'- true: Certificate errors are ignored.',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'browser_task_version' => [
+ 'description' => 'The version of the browser test task. Valid values:'."\n"
+ .'- 1: browser test for a single page'."\n"
+ .'- 2: browser test for multiple pages',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'cookie' => [
+ 'description' => 'The cookie of the HTTP request.'."\n",
+ 'type' => 'string',
+ 'example' => 'lang=en',
+ ],
+ 'diagnosis_mtr' => [
+ 'description' => 'Indicates whether the automatic MTR diagnostics feature is enabled for a failed task. Valid values:'."\n"
+ .'- false: The automatic MTR diagnostics feature is disabled for a failed task.'."\n"
+ .'- true: The automatic MTR diagnostics feature is enabled for a failed task.',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'diagnosis_ping' => [
+ 'description' => 'Indicates whether the automatic ping latency detection feature is enabled for a failed task. Valid values:'."\n"
+ .'- false: The automatic ping latency detection feature is disabled for a failed task.'."\n"
+ .'- true: The automatic ping latency detection feature is enabled for a failed task.',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'dns_hijack_whitelist' => [
+ 'description' => 'The DNS hijack whitelist.',
+ 'type' => 'string',
+ 'example' => 'www.taobao.com:www.taobao.com.danuoyi.tbcache.com',
+ ],
+ 'dns_match_rule' => [
+ 'description' => 'The relationship between the list of expected aliases or IP addresses and the list of DNS results. Valid values:'."\n"
+ ."\n"
+ .'* IN_DNS: The list of expected values is a subset of the list of DNS results.'."\n"
+ .'* DNS_IN: The list of DNS results is a subset of the list of expected values.'."\n"
+ .'* EQUAL: The list of DNS results is the same as the list of expected values.'."\n"
+ .'* ANY: The list of DNS results intersects with the list of expected values.'."\n",
+ 'type' => 'string',
+ 'example' => 'IN_DNS',
+ ],
+ 'dns_server' => [
+ 'description' => 'The IP address of the DNS server.'."\n"
+ ."\n"
+ .'> This parameter is returned only if the TaskType parameter is set to DNS.'."\n",
+ 'type' => 'string',
+ 'example' => '192.168.XX.XX',
+ ],
+ 'dns_type' => [
+ 'description' => 'The type of the DNS record. This parameter is returned only if the TaskType parameter is set to DNS. Valid values:'."\n"
+ ."\n"
+ .'* A (default): a record that specifies an IP address related to the specified host name or domain name.'."\n"
+ .'* CNAME: a record that maps multiple domain names to a domain name.'."\n"
+ .'* NS: a record that specifies a DNS server used to parse domain names.'."\n"
+ .'* MX: a record that links domain names to the address of a mail server.'."\n"
+ .'* TXT: a record that stores the text information of host name or domain names. The text must be 1 to 512 bytes in length. The TXT record serves as a Sender Policy Framework (SPF) record to fight against spam.'."\n",
+ 'type' => 'string',
+ 'example' => 'A',
+ ],
+ 'empty_message' => [
+ 'description' => 'Indicates whether the WebSocket task is allowed to return no response or return an empty response. Default value: false. Valid values: false and true.',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'expect_exist_string' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'expect_exist_string' => [
+ 'description' => 'The string that is expected to exist on the page.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The string that is expected to exist on the page.',
+ 'type' => 'string',
+ 'example' => 'expected string',
+ ],
+ ],
+ ],
+ ],
+ 'expect_non_exist_string' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'expect_non_exist_string' => [
+ 'description' => 'The string that is not expected to exist on the page.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The string that is not expected to exist on the page.',
+ 'type' => 'string',
+ 'example' => 'unexpected string',
+ ],
+ ],
+ ],
+ ],
+ 'expect_value' => [
+ 'description' => 'The domain name or alias to be parsed.'."\n"
+ ."\n"
+ .'> This parameter is returned only if the TaskType parameter is set to DNS.'."\n",
+ 'type' => 'string',
+ 'example' => 'dns_server',
+ ],
+ 'failure_rate' => [
+ 'description' => 'The packet loss rate.'."\n"
+ ."\n"
+ .'> This parameter is returned only if the TaskType parameter is set to PING.'."\n",
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '0.4',
+ ],
+ 'header' => [
+ 'description' => 'The header of the HTTP request.'."\n",
+ 'type' => 'string',
+ 'example' => 'testKey:testValue',
+ ],
+ 'http_method' => [
+ 'description' => 'The HTTP request method. Valid values:'."\n"
+ ."\n"
+ .'* get'."\n"
+ .'* post'."\n"
+ .'* head'."\n",
+ 'type' => 'string',
+ 'example' => 'get',
+ ],
+ 'ip_network' => [
+ 'description' => 'ip_network indicates the network type of the task. Valid values: v4, v6, and auto. Default value: v4.'."\n",
+ 'type' => 'string',
+ 'example' => 'v4',
+ 'enum' => [],
+ ],
+ 'isBase64Encode' => [
+ 'description' => 'Indicates whether to perform Base64 decoding and then store the password. Valid values: true and false.',
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'match_rule' => [
+ 'description' => 'Indicates whether the alert rule is included. Valid values:'."\n"
+ ."\n"
+ .'* 0: The alert rule is included.'."\n"
+ .'* 1: The alert rule is excluded.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'min_tls_version' => [
+ 'description' => 'The minimum TLS version. By default, TLS 1.2 and later versions are supported. TLS 1.0 and 1.1 are disabled. If you still require TLS 1.0 or 1.1, you can change the configuration.',
+ 'type' => 'string',
+ 'example' => 'tlsv1.2',
+ ],
+ 'password' => [
+ 'description' => 'The password of the SMTP, POP3, or FTP protocol.'."\n",
+ 'type' => 'string',
+ 'example' => '123****',
+ ],
+ 'ping_num' => [
+ 'description' => 'The heartbeat of the PING protocol.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '29',
+ ],
+ 'ping_port' => [
+ 'description' => 'The port number for TCP pings.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'ping_type' => [
+ 'description' => 'The PING protocol type. Valid values:'."\n"
+ ."\n"
+ .'* icmp'."\n"
+ .'* tcp'."\n"
+ .'* udp'."\n",
+ 'type' => 'string',
+ 'example' => 'icmp,tcp,udp',
+ 'default' => 'icmp',
+ ],
+ 'port' => [
+ 'description' => 'The port number of the TCP, UDP, SMTP, or POP3 protocol.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '110',
+ ],
+ 'protocol' => [
+ 'description' => 'The protocol that is used to send the request.'."\n",
+ 'type' => 'string',
+ 'example' => 'TCP',
+ ],
+ 'quic_enabled' => [
+ 'description' => 'Indicates whether the Quick UDP Internet Connections (QUIC) protocol is used for browser detection. Valid values: true false Default value: false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'quic_target' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'quic_target' => [
+ 'description' => 'The sites for which the QUIC protocol is forcibly used.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The format is url:port for the sites for which the QUIC protocol is forcibly used. You can leave the port number empty. The default port number of 443.'."\n",
+ 'type' => 'string',
+ 'example' => 'www.taobao.com',
+ ],
+ ],
+ ],
+ ],
+ 'request_content' => [
+ 'description' => 'The content of the HTTP request.'."\n",
+ 'type' => 'string',
+ 'example' => 'aa=bb',
+ ],
+ 'request_format' => [
+ 'description' => 'The format of the HTTP request. Valid values:'."\n"
+ ."\n"
+ .'* hex: hexadecimal'."\n"
+ .'* txt: text'."\n",
+ 'type' => 'string',
+ 'example' => 'txt',
+ ],
+ 'response_content' => [
+ 'description' => 'The response to the HTTP request.'."\n",
+ 'type' => 'string',
+ 'example' => 'txt',
+ ],
+ 'response_format' => [
+ 'description' => 'The format of the HTTP response. Valid values:'."\n"
+ ."\n"
+ .'* hex: hexadecimal'."\n"
+ .'* txt: text'."\n",
+ 'type' => 'string',
+ 'example' => 'txt',
+ ],
+ 'retry_delay' => [
+ 'description' => 'The number of retries for failed detections.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'screen_shot' => [
+ 'description' => 'Indicates whether page screenshot is enabled.',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'time_out' => [
+ 'description' => 'The timeout period. Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3',
+ ],
+ 'traffic_hijack_element_blacklist' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'traffic_hijack_element_blacklist' => [
+ 'description' => 'The traffic hijacking blacklist. When redirection occurs, if the URL of the resource loaded by the browser matches the expression in the blacklist, traffic hijacking is considered to have occurred.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The traffic hijacking blacklist. When redirection occurs, if the URL of the resource loaded by the browser matches the expression in the blacklist, traffic hijacking is considered to have occurred.',
+ 'type' => 'string',
+ 'example' => 'www.taobao.com',
+ ],
+ ],
+ ],
+ ],
+ 'traffic_hijack_element_count' => [
+ 'description' => 'When redirection occurs, if the browser loads more than the specified number of resources, traffic hijacking is considered to have occurred. If you set the value to 0, no validation is performed. Default value: 0.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'traffic_hijack_element_whitelist' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'traffic_hijack_element_whitelist' => [
+ 'description' => 'The traffic hijacking whitelist. When redirection occurs, if the URL of the resource loaded by the browser does not match any expression in the whitelist, traffic hijacking is considered to have occurred.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The traffic hijacking whitelist. When redirection occurs, if the URL of the resource loaded by the browser does not match any expression in the whitelist, traffic hijacking is considered to have occurred.',
+ 'type' => 'string',
+ 'example' => 'www.taobao.com',
+ ],
+ ],
+ ],
+ ],
+ 'username' => [
+ 'description' => 'The username of the FTP, SMTP, or POP3 protocol.'."\n",
+ 'type' => 'string',
+ 'example' => 'testUser',
+ ],
+ 'waitTime_after_completion' => [
+ 'description' => 'The additional waiting time after a page is opened in a browser test task.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'scroll_end' => [
+ 'description' => 'Indicates whether to scroll to the bottom of the page after opening the page. This parameter is valid for a browser test task.',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'host_binding' => [
+ 'description' => 'The custom hosts for the HTTP test task. Format: ip1,ip2:address. You can specify values in multiple lines. Specify the A record or CNAME record that can be resolved by the domain name at the left of the colon. Separate multiple records with commas (,). Specify the domain name at the right of the colon.',
+ 'type' => 'string',
+ 'example' => '127.0.0.1:www.aliyun.com',
+ ],
+ 'host_binding_type' => [
+ 'description' => 'The host binding type. Valid values: 0 and 1. 0 indicates random. 1 indicates polling.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'enumValueTitles' => [
+ '0',
+ '1',
+ ],
+ 'example' => '0',
+ ],
+ 'hops' => [
+ 'description' => 'The number of hops to perform traceroute diagnostics if the PING task fails.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'icmp_timeout_millis' => [
+ 'description' => 'The timeout period of a PING task that uses ICMP. Unit: milliseconds.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3000',
+ ],
+ 'config_variables' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'config_variables' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'type' => 'string',
+ ],
+ 'value' => [
+ 'type' => 'string',
+ ],
+ 'secure' => [
+ 'type' => 'boolean',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'steps' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'steps' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'type' => 'string',
+ 'deprecated' => true,
+ ],
+ 'step_type' => [
+ 'type' => 'string',
+ ],
+ 'url' => [
+ 'type' => 'string',
+ ],
+ 'allow_failure' => [
+ 'type' => 'boolean',
+ ],
+ 'is_critical' => [
+ 'type' => 'boolean',
+ ],
+ 'wait_time_in_secs' => [
+ 'type' => 'integer',
+ 'format' => 'int32',
+ ],
+ 'extracted_variables' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'extracted_variables' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'type' => 'string',
+ ],
+ 'parser' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'parser_type' => [
+ 'type' => 'string',
+ ],
+ 'value' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'field' => [
+ 'type' => 'string',
+ ],
+ 'extracted_type' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'option' => [
+ 'type' => 'string',
+ ],
+ 'step_name' => [
+ 'type' => 'string',
+ ],
+ 'use_generated_cookie' => [
+ 'type' => 'boolean',
+ ],
+ 'auto_extract_cookie' => [
+ 'type' => 'boolean',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'trace_region' => [
+ 'type' => 'string',
+ ],
+ 'trace_type' => [
+ 'type' => 'string',
+ ],
+ 'safe_link' => [
+ 'type' => 'integer',
+ 'format' => 'int32',
+ ],
+ 'enable_packet_capture' => [
+ 'type' => 'boolean',
+ ],
+ 'use_private_crt' => [
+ 'title' => '是否使用私有证书',
+ 'type' => 'boolean',
+ ],
+ 'private_crt_file_name' => [
+ 'title' => '私有证书文件名',
+ 'type' => 'string',
+ 'example' => 'cert.pem',
+ ],
+ 'use_ssl' => [
+ 'title' => '执行TCP任务时是否进行SSL连接',
+ 'type' => 'boolean',
+ ],
+ 'max_tls_version' => [
+ 'title' => '最高TLS版本',
+ 'type' => 'string',
+ ],
+ 'server_name' => [
+ 'title' => '服务器名称指示',
+ 'type' => 'string',
+ ],
+ 'supported_cipher_suits' => [
+ 'title' => '支持的加密套件',
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'TaskId' => [
+ 'description' => 'The ID of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'cc641dff-c19d-45f3-ad0a-818a0c4f****',
+ ],
+ 'TaskName' => [
+ 'description' => 'The name of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'test123',
+ ],
+ 'TaskState' => [
+ 'description' => 'The status of the site monitoring task. Valid values:'."\n"
+ ."\n"
+ .'* 1: The task is enabled.'."\n"
+ .'* 2: The task is disabled.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'TaskType' => [
+ 'description' => 'The protocol that is used by the site monitoring task. Valid values: HTTP, HTTPS, PING, TCP, UDP, DNS, SMTP, POP3, and FTP.'."\n",
+ 'type' => 'string',
+ 'example' => 'HTTP',
+ ],
+ 'VpcConfig' => [
+ 'description' => 'The VPC configurations of the synthetic test task.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Region' => [
+ 'description' => 'The region of the website for synthetic monitoring.',
+ 'type' => 'string',
+ 'example' => 'cn-beijing',
+ ],
+ 'SecurityGroupId' => [
+ 'description' => 'The ID of the security group.',
+ 'type' => 'string',
+ 'example' => 'sg-xxxxxx',
+ ],
+ 'VpcId' => [
+ 'description' => 'The ID of the VPC used by the synthetic test task.',
+ 'type' => 'string',
+ 'example' => 'vpc-xxxxxx',
+ ],
+ 'VswitchId' => [
+ 'description' => 'The ID of the vSwitch used by the synthetic test task.',
+ 'type' => 'string',
+ 'example' => 'vsw-xxxxxx',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'The parameter is missing or invalid. %s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'Task Id does not exist',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"MetricRules\\": {\\n \\"MetricRule\\": [\\n {\\n \\"ActionEnable\\": \\"true\\",\\n \\"AlarmActions\\": \\"CloudMonitor\\",\\n \\"ComparisonOperator\\": \\"GreaterThanYesterday\\",\\n \\"Dimensions\\": \\"[{\\\\\\"taskId\\\\\\": \\\\\\"cc641dff-c19d-45f3-ad0a-818a0c4f****\\\\\\" }]\\",\\n \\"EvaluationCount\\": \\"3\\",\\n \\"Expression\\": \\"$Availability=30\\",\\n \\"Level\\": \\"2\\",\\n \\"MetricName\\": \\"Availability\\",\\n \\"Namespace\\": \\"acs_networkmonitor\\",\\n \\"OkActions\\": \\"[ \\\\\\"CloudMonitor\\\\\\"]\\",\\n \\"Period\\": \\"15s\\",\\n \\"RuleId\\": \\"bf071ae_7b7aec3817b0fdf****\\",\\n \\"RuleName\\": \\"rule1\\",\\n \\"StateValue\\": \\"OK\\",\\n \\"Statistics\\": \\"Availability\\",\\n \\"Threshold\\": \\"30\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"D17DF650-7EBD-54D0-903A-1D4E624D7402\\",\\n \\"SiteMonitors\\": {\\n \\"Address\\": \\"https://aliyun.com\\",\\n \\"AgentGroup\\": \\"PC\\",\\n \\"CustomSchedule\\": {\\n \\"days\\": {\\n \\"days\\": [\\n 1\\n ]\\n },\\n \\"end_hour\\": 18,\\n \\"start_hour\\": 8,\\n \\"time_zone\\": \\"local\\"\\n },\\n \\"Interval\\": \\"1\\",\\n \\"IspCities\\": {\\n \\"IspCity\\": [\\n {\\n \\"City\\": \\"738\\",\\n \\"CityName\\": \\"北京市\\",\\n \\"Isp\\": \\"465\\",\\n \\"IspName\\": \\"阿里巴巴\\",\\n \\"Type\\": \\"IDC\\"\\n }\\n ]\\n },\\n \\"OptionJson\\": {\\n \\"assertions\\": {\\n \\"assertions\\": [\\n {\\n \\"operator\\": \\"lessThan\\",\\n \\"property\\": \\"json path\\",\\n \\"target\\": \\"0\\",\\n \\"type\\": \\"response_time\\"\\n }\\n ]\\n },\\n \\"attempts\\": 3,\\n \\"auth_info\\": {\\n \\"type\\": \\"basic\\",\\n \\"username\\": \\"test_username\\",\\n \\"password\\": \\"test_password\\",\\n \\"use_cookie_session_key\\": false,\\n \\"grant_type\\": \\"password\\",\\n \\"client_id\\": \\"client_id\\",\\n \\"client_secret\\": \\"client_secret\\",\\n \\"scopes\\": {\\n \\"scopes\\": [\\n \\"test_operation\\"\\n ]\\n },\\n \\"token_url\\": \\"https://www.example.com\\",\\n \\"auth_style\\": \\"ROA\\",\\n \\"access_key_id\\": \\"testAk\\",\\n \\"access_key_secret\\": \\"testSk\\",\\n \\"region_id\\": \\"cn-hangzhou\\",\\n \\"api_action\\": \\"example_api\\",\\n \\"api_version\\": \\"2019-01-01\\",\\n \\"with_addon_resources\\": false,\\n \\"service_name\\": \\"example_service_name\\",\\n \\"session_token\\": \\"example_token\\"\\n },\\n \\"blocked_url_list\\": {\\n \\"blocked_url_list\\": [\\n \\"www.taobao.com/**\\"\\n ]\\n },\\n \\"browser_headers\\": {\\n \\"browser_headers\\": [\\n {\\n \\"key\\": \\"value\\"\\n }\\n ]\\n },\\n \\"browser_hosts\\": {\\n \\"browser_hosts\\": [\\n \\"{\\\\\\"url\\\\\\":\\\\\\"www.taobao.com\\\\\\",\\\\\\"ip\\\\\\":\\\\\\"127.0.0.1\\\\\\"}\\"\\n ]\\n },\\n \\"browser_info\\": {\\n \\"browser_info\\": [\\n {\\n \\"browser\\": \\"Chrome\\",\\n \\"device\\": \\"laptop\\"\\n }\\n ]\\n },\\n \\"browser_insecure\\": false,\\n \\"browser_task_version\\": \\"1\\",\\n \\"cookie\\": \\"lang=en\\",\\n \\"diagnosis_mtr\\": false,\\n \\"diagnosis_ping\\": false,\\n \\"dns_hijack_whitelist\\": \\"www.taobao.com:www.taobao.com.danuoyi.tbcache.com\\",\\n \\"dns_match_rule\\": \\"IN_DNS\\",\\n \\"dns_server\\": \\"192.168.XX.XX\\",\\n \\"dns_type\\": \\"A\\",\\n \\"empty_message\\": false,\\n \\"expect_exist_string\\": {\\n \\"expect_exist_string\\": [\\n \\"expected string\\"\\n ]\\n },\\n \\"expect_non_exist_string\\": {\\n \\"expect_non_exist_string\\": [\\n \\"unexpected string\\"\\n ]\\n },\\n \\"expect_value\\": \\"dns_server\\",\\n \\"failure_rate\\": 0.4,\\n \\"header\\": \\"testKey:testValue\\",\\n \\"http_method\\": \\"get\\",\\n \\"ip_network\\": \\"v4\\",\\n \\"isBase64Encode\\": \\"false\\",\\n \\"match_rule\\": 1,\\n \\"min_tls_version\\": \\"tlsv1.2\\",\\n \\"password\\": \\"123****\\",\\n \\"ping_num\\": 29,\\n \\"ping_port\\": 80,\\n \\"ping_type\\": \\"icmp\\",\\n \\"port\\": 110,\\n \\"protocol\\": \\"TCP\\",\\n \\"quic_enabled\\": true,\\n \\"quic_target\\": {\\n \\"quic_target\\": [\\n \\"www.taobao.com\\"\\n ]\\n },\\n \\"request_content\\": \\"aa=bb\\",\\n \\"request_format\\": \\"txt\\",\\n \\"response_content\\": \\"txt\\",\\n \\"response_format\\": \\"txt\\",\\n \\"retry_delay\\": 0,\\n \\"screen_shot\\": false,\\n \\"strict_mode\\": false,\\n \\"time_out\\": 3,\\n \\"traffic_hijack_element_blacklist\\": {\\n \\"traffic_hijack_element_blacklist\\": [\\n \\"www.taobao.com\\"\\n ]\\n },\\n \\"traffic_hijack_element_count\\": 0,\\n \\"traffic_hijack_element_whitelist\\": {\\n \\"traffic_hijack_element_whitelist\\": [\\n \\"www.taobao.com\\"\\n ]\\n },\\n \\"username\\": \\"testUser\\",\\n \\"waitTime_after_completion\\": 3,\\n \\"scroll_end\\": false,\\n \\"host_binding\\": \\"127.0.0.1:www.aliyun.com\\",\\n \\"host_binding_type\\": 0,\\n \\"hops\\": 20,\\n \\"icmp_timeout_millis\\": 3000,\\n \\"config_variables\\": {\\n \\"config_variables\\": [\\n {\\n \\"name\\": \\"variable_name\\",\\n \\"value\\": \\"variable_value\\",\\n \\"secure\\": true\\n }\\n ]\\n },\\n \\"steps\\": {\\n \\"steps\\": [\\n {\\n \\"name\\": \\"step1\\",\\n \\"step_type\\": \\"http\\",\\n \\"url\\": \\"https://aliyun.com\\",\\n \\"allow_failure\\": true,\\n \\"is_critical\\": true,\\n \\"wait_time_in_secs\\": 5,\\n \\"extracted_variables\\": {\\n \\"extracted_variables\\": [\\n {\\n \\"name\\": \\"test_variable\\",\\n \\"parser\\": {\\n \\"parser_type\\": \\"0\\",\\n \\"value\\": \\"x.testkey.arrayvalue[0].innerkey\\"\\n },\\n \\"field\\": \\"request_id\\",\\n \\"extracted_type\\": \\"1\\"\\n }\\n ]\\n },\\n \\"option\\": \\"{\\\\\\"enable_operator_dns\\\\\\": true}\\",\\n \\"step_name\\": \\"step1\\",\\n \\"use_generated_cookie\\": true,\\n \\"auto_extract_cookie\\": true\\n }\\n ]\\n },\\n \\"trace_region\\": \\"cn-hangzhou\\",\\n \\"trace_type\\": \\"OpenTelemetry\\",\\n \\"safe_link\\": 0,\\n \\"enable_packet_capture\\": true,\\n \\"use_private_crt\\": true,\\n \\"private_crt_file_name\\": \\"cert.pem\\",\\n \\"use_ssl\\": true,\\n \\"max_tls_version\\": \\"tlsv1.3\\",\\n \\"server_name\\": \\"www.aliyun.com\\",\\n \\"supported_cipher_suits\\": \\"TLS_AES_256_GCM_SHA384\\"\\n },\\n \\"TaskId\\": \\"cc641dff-c19d-45f3-ad0a-818a0c4f****\\",\\n \\"TaskName\\": \\"test123\\",\\n \\"TaskState\\": \\"1\\",\\n \\"TaskType\\": \\"HTTP\\",\\n \\"VpcConfig\\": {\\n \\"Region\\": \\"cn-beijing\\",\\n \\"SecurityGroupId\\": \\"sg-xxxxxx\\",\\n \\"VpcId\\": \\"vpc-xxxxxx\\",\\n \\"VswitchId\\": \\"vsw-xxxxxx\\"\\n }\\n },\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeSiteMonitorAttributeResponse>\\r\\n\\t<MetricRules>\\r\\n\\t\\t<MetricRule>\\r\\n\\t\\t\\t<ComparisonOperator>GreaterThanYesterday</ComparisonOperator>\\r\\n\\t\\t\\t<RuleId>bf071ae_7b7aec3817b0fdf****</RuleId>\\r\\n\\t\\t\\t<Period>15s</Period>\\r\\n\\t\\t\\t<EvaluationCount>3</EvaluationCount>\\r\\n\\t\\t\\t<Dimensions>\\r\\n\\t\\t\\t\\t<taskId>cc641dff-c19d-45f3-ad0a-818a0c4f****</taskId>\\r\\n\\t\\t\\t</Dimensions>\\r\\n\\t\\t\\t<Statistics>Availability</Statistics>\\r\\n\\t\\t\\t<Namespace>acs_networkmonitor</Namespace>\\r\\n\\t\\t\\t<AlarmActions>CloudMonitor</AlarmActions>\\r\\n\\t\\t\\t<MetricName>Availability</MetricName>\\r\\n\\t\\t\\t<OkActions>CloudMonitor</OkActions>\\r\\n\\t\\t\\t<Expression>$Availability=30</Expression>\\r\\n\\t\\t\\t<ActionEnable>true</ActionEnable>\\r\\n\\t\\t\\t<StateValue>OK</StateValue>\\r\\n\\t\\t\\t<Level>2</Level>\\r\\n\\t\\t\\t<RuleName>rule1</RuleName>\\r\\n\\t\\t\\t<Threshold>30</Threshold>\\r\\n\\t\\t</MetricRule>\\r\\n\\t</MetricRules>\\r\\n\\t<Message>successful</Message>\\r\\n\\t<RequestId>D17DF650-7EBD-54D0-903A-1D4E624D7402</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n\\t<SiteMonitors>\\r\\n\\t\\t<OptionJson>\\r\\n\\t\\t\\t<time_out>30000</time_out>\\r\\n\\t\\t\\t<http_method>get</http_method>\\r\\n\\t\\t</OptionJson>\\r\\n\\t\\t<TaskId>cc641dff-c19d-45f3-ad0a-818a0c4f****</TaskId>\\r\\n\\t\\t<Address>https://aliyun.com</Address>\\r\\n\\t\\t<TaskName>test123</TaskName>\\r\\n\\t\\t<TaskType>HTTP</TaskType>\\r\\n\\t\\t<IspCities>\\r\\n\\t\\t\\t<IspCity>\\r\\n\\t\\t\\t\\t<IspName>阿里巴巴</IspName>\\r\\n\\t\\t\\t\\t<Isp>465</Isp>\\r\\n\\t\\t\\t\\t<CityName>北京市</CityName>\\r\\n\\t\\t\\t\\t<City>738</City>\\r\\n\\t\\t\\t</IspCity>\\r\\n\\t\\t</IspCities>\\r\\n\\t\\t<TaskState>1</TaskState>\\r\\n\\t\\t<Interval>1</Interval>\\r\\n\\t</SiteMonitors>\\r\\n</DescribeSiteMonitorAttributeResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeSiteMonitorAttribute',
+ 'description' => 'This topic provides an example on how to query the details of a site monitoring task whose ID is `cc641dff-c19d-45f3-ad0a-818a0c4f****`. The returned result indicates that the task name is `test123`, the URL that is monitored by the task is `https://aliyun.com`, and the name of the carrier is `Alibaba`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSiteMonitorISPCityList' => [
+ 'summary' => 'Queries the detection points that are provided by carriers.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name or ID of the carrier.'."\n"
+ ."\n"
+ .'> Carrier names support fuzzy match.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'City',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name or ID of the city.'."\n"
+ ."\n"
+ .'> City names support fuzzy match.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'IPV6',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to query IPv6 probes. Valid values:'."\n"
+ ."\n"
+ .'* true (default): IPv6 probes are queried.'."\n"
+ .'* false: IPv6 probes are not queried.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'IPV4',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to query IPv4 probes. Valid values:'."\n"
+ ."\n"
+ .'* true (default): IPv4 probes are queried.'."\n"
+ .'* false: IPv4 probes are not queried.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'ViewAll',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to return all detection points. Valid values:'."\n"
+ ."\n"
+ .'* true (default): returns all detection points.'."\n"
+ .'* false: returns only available detection points.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'B35D7D84-547B-4E61-B909-48A1F8A0C756',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'IspCityList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'IspCity' => [
+ 'description' => 'The queried detection points.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The queried detection point.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'CityName.en' => [
+ 'description' => 'The city name.'."\n",
+ 'type' => 'string',
+ 'example' => 'Guiyang',
+ ],
+ 'IPV4ProbeCount' => [
+ 'description' => 'The number of IPv4 probes.'."\n",
+ 'type' => 'string',
+ 'example' => '4',
+ ],
+ 'City' => [
+ 'description' => 'The city ID.'."\n",
+ 'type' => 'string',
+ 'example' => '4',
+ ],
+ 'Isp' => [
+ 'description' => 'The carrier ID.'."\n",
+ 'type' => 'string',
+ 'example' => '232',
+ ],
+ 'CityName.zh_CN' => [
+ 'description' => 'The city name.'."\n"
+ ."\n"
+ .'> This parameter is valid only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Region.zh_CN' => [
+ 'description' => 'The name of the province.'."\n"
+ ."\n"
+ .'> This parameter can be returned only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'IspName.zh_CN' => [
+ 'description' => 'The carrier name.'."\n"
+ ."\n"
+ .'> This parameter is valid only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Country.en' => [
+ 'description' => 'The name of the country.'."\n",
+ 'type' => 'string',
+ 'example' => 'China',
+ ],
+ 'IPV6ProbeCount' => [
+ 'description' => 'The number of IPv6 probes.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Region' => [
+ 'description' => 'The province name.'."\n",
+ 'type' => 'string',
+ 'example' => '264',
+ ],
+ 'Country' => [
+ 'description' => 'The country name.'."\n"
+ ."\n"
+ .'> This parameter is valid only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '629',
+ ],
+ 'IspName.en' => [
+ 'description' => 'The carrier name.'."\n",
+ 'type' => 'string',
+ 'example' => 'China-Unicom',
+ ],
+ 'Region.en' => [
+ 'description' => 'The name of the province.'."\n",
+ 'type' => 'string',
+ 'example' => 'Guizhou',
+ ],
+ 'Country.zh_CN' => [
+ 'description' => 'The name of the country.'."\n"
+ ."\n"
+ .'> This parameter can be returned only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Area.zh_CN' => [
+ 'description' => 'The area name.'."\n"
+ ."\n"
+ .'> This parameter is valid only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Area.en' => [
+ 'description' => 'The area name.'."\n",
+ 'type' => 'string',
+ 'example' => 'XiNan',
+ ],
+ 'IPPool' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'IPPool' => [
+ 'description' => 'The IP address pool.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The IP address pool.'."\n",
+ 'type' => 'string',
+ 'example' => '["192.68.XX.XX","192.68.XX.XX"]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ThrottlingException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"B35D7D84-547B-4E61-B909-48A1F8A0C756\\",\\n \\"Success\\": \\"true\\",\\n \\"IspCityList\\": {\\n \\"IspCity\\": [\\n {\\n \\"CityName.en\\": \\"Guiyang\\",\\n \\"IPV4ProbeCount\\": \\"4\\",\\n \\"City\\": \\"4\\",\\n \\"Isp\\": \\"232\\",\\n \\"CityName.zh_CN\\": \\"贵阳市\\",\\n \\"Region.zh_CN\\": \\"贵州省\\",\\n \\"IspName.zh_CN\\": \\"联通\\",\\n \\"Country.en\\": \\"China\\",\\n \\"IPV6ProbeCount\\": \\"3\\",\\n \\"Region\\": \\"264\\",\\n \\"Country\\": \\"629\\",\\n \\"IspName.en\\": \\"China-Unicom\\",\\n \\"Region.en\\": \\"Guizhou\\",\\n \\"Country.zh_CN\\": \\"中国\\",\\n \\"Area.zh_CN\\": \\"西南\\",\\n \\"Area.en\\": \\"XiNan\\",\\n \\"IPPool\\": {\\n \\"IPPool\\": [\\n \\"[\\\\\\"192.68.XX.XX\\\\\\",\\\\\\"192.68.XX.XX\\\\\\"]\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeSiteMonitorISPCityListResponse>\\r\\n\\t<Message>successful</Message>\\r\\n\\t<RequestId>B35D7D84-547B-4E61-B909-48A1F8A0C756</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n\\t<IspCityList>\\r\\n\\t\\t<IspCity>\\r\\n\\t\\t\\t<Country.zh_CN>中国</Country.zh_CN>\\r\\n\\t\\t\\t<Area.zh_CN>西南</Area.zh_CN>\\r\\n\\t\\t\\t<CityName.en>Guiyang</CityName.en>\\r\\n\\t\\t\\t<IPV4ProbeCount>4</IPV4ProbeCount>\\r\\n\\t\\t\\t<Isp>232</Isp>\\r\\n\\t\\t\\t<City>4</City>\\r\\n\\t\\t\\t<IspName.en>China-Unicom</IspName.en>\\r\\n\\t\\t\\t<Country.en>China</Country.en>\\r\\n\\t\\t\\t<IPV6ProbeCount>0</IPV6ProbeCount>\\r\\n\\t\\t\\t<CityName.zh_CN>贵阳市</CityName.zh_CN>\\r\\n\\t\\t\\t<Area.en>XiNan</Area.en>\\r\\n\\t\\t\\t<Region.zh_CN>贵州省</Region.zh_CN>\\r\\n\\t\\t\\t<APIProbeCount>0</APIProbeCount>\\r\\n\\t\\t\\t<Region>264</Region>\\r\\n\\t\\t\\t<Country>629</Country>\\r\\n\\t\\t\\t<IspName.zh_CN>联通</IspName.zh_CN>\\r\\n\\t\\t\\t<Region.en>Guizhou</Region.en>\\r\\n\\t\\t\\t<IPPool>\\r\\n\\t\\t\\t\\t<IPPool>192.168.XX.XX</IPPool>\\r\\n\\t\\t\\t\\t<IPPool>192.168.XX.XX</IPPool>\\r\\n\\t\\t\\t</IPPool>\\r\\n\\t\\t</IspCity>\\r\\n\\t</IspCityList>\\r\\n</DescribeSiteMonitorISPCityListResponse>","errorExample":""}]',
+ 'title' => 'DescribeSiteMonitorISPCityList',
+ 'description' => 'This topic provides an example on how to query the detection points that are provided by China Unicom in Guiyang.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSiteMonitorData' => [
+ 'summary' => 'Queries the fine-grained monitoring data of a site monitoring task.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The job ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '49f7b317-7645-4cc9-94fd-ea42e522****',
+ ],
+ ],
+ [
+ 'name' => 'Type',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the monitored object whose monitoring data is to be queried. Valid values:'."\n"
+ ."\n"
+ .'* metric'."\n"
+ .'* event'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'metric',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name. Valid values:'."\n"
+ ."\n"
+ .'* Availability'."\n"
+ .'* ResponseTime'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Availability',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start of the time range to query. The following formats are supported:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 UTC on Thursday, January 1, 1970.'."\n"
+ .'* UTC time: the UTC time that follows the YYYY-MM-DDThh:mm:ssZ format.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1551579637000',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query. The following formats are supported:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 UTC on Thursday, January 1, 1970.'."\n"
+ .'* UTC time: the UTC time that follows the YYYY-MM-DDThh:mm:ssZ format.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1551581437000',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period. The value is an integral multiple of 60. Unit: seconds.'."\n"
+ ."\n"
+ .'> The default value equals the minimum interval at which detection requests are sent to the monitored address.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The pagination token.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '49f7b317-7645-4cc9-94fd-ea42e5220930ea42e5220930ea42e522****',
+ ],
+ ],
+ [
+ 'name' => 'Length',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of data points to return.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'NextToken' => [
+ 'description' => 'The pagination token.'."\n",
+ 'type' => 'string',
+ 'example' => 'ea42e5220930ea42e522****',
+ ],
+ 'Data' => [
+ 'description' => 'The monitoring data.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"Maximum":247,"Mimimum":61,"Average":154,"userId":"127067667954****","taskId":"49f7b317-7645-4cc9-94fd-ea42e522****","timestamp":1551581760000}]',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3febb181-0d98-4af9-8b04-7faf36b048b9',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true: The request was successful. false: The request failed.'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Successful',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ThrottlingException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"[{\\\\\\"Maximum\\\\\\":247,\\\\\\"Mimimum\\\\\\":61,\\\\\\"Average\\\\\\":154,\\\\\\"userId\\\\\\":\\\\\\"127067667954****\\\\\\",\\\\\\"taskId\\\\\\":\\\\\\"49f7b317-7645-4cc9-94fd-ea42e522****\\\\\\",\\\\\\"timestamp\\\\\\":1551581760000}]\\",\\n \\"NextToken\\": \\"ea42e5220930ea42e522****\\",\\n \\"RequestId\\": \\"3febb181-0d98-4af9-8b04-7faf36b048b9\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeSiteMonitorData>\\r\\n\\t\\t<Data>\\r\\n\\t\\t\\t<Over5totalTime>0</Over5totalTime>\\r\\n\\t\\t\\t<Error4XXRate>0</Error4XXRate>\\r\\n\\t\\t\\t<UnavailableNumber>0</UnavailableNumber>\\r\\n\\t\\t\\t<Over2totalTime>0</Over2totalTime>\\r\\n\\t\\t\\t<timestamp>1551581040000</timestamp>\\r\\n\\t\\t\\t<Over100FailureRate>0</Over100FailureRate>\\r\\n\\t\\t\\t<Over10FailureRate>0</Over10FailureRate>\\r\\n\\t\\t\\t<Availability>100</Availability>\\r\\n\\t\\t\\t<Over80FailureRate>0</Over80FailureRate>\\r\\n\\t\\t\\t<userId>123****</userId>\\r\\n\\t\\t\\t<AvailableNumber>2</AvailableNumber>\\r\\n\\t\\t\\t<Unavailability>0</Unavailability>\\r\\n\\t\\t\\t<ErrorCodeMaximum>0</ErrorCodeMaximum>\\r\\n\\t\\t\\t<Over10totalTime>0</Over10totalTime>\\r\\n\\t\\t\\t<taskId>49f7b317-7645-4cc9-94fd-1****</taskId>\\r\\n\\t\\t\\t<Over30FailureRate>0</Over30FailureRate>\\r\\n\\t\\t\\t<Error6XXRate>0</Error6XXRate>\\r\\n\\t\\t\\t<Over500NumberRate>0</Over500NumberRate>\\r\\n\\t\\t\\t<Over3totalTime>0</Over3totalTime>\\r\\n\\t\\t\\t<Over400NumberRate>0</Over400NumberRate>\\r\\n\\t\\t\\t<Error5XXRate>0</Error5XXRate>\\r\\n\\t\\t\\t<Error5XXNumber>0</Error5XXNumber>\\r\\n\\t\\t\\t<Over90FailureRate>0</Over90FailureRate>\\r\\n\\t\\t\\t<Error4XXNumber>0</Error4XXNumber>\\r\\n\\t\\t\\t<Over50FailureRate>0</Over50FailureRate>\\r\\n\\t\\t\\t<ErrorCodeMinimum>0</ErrorCodeMinimum>\\r\\n\\t\\t\\t<Error6XXNumber>0</Error6XXNumber>\\r\\n\\t\\t</Data>\\r\\n\\t\\t<Data>\\r\\n\\t\\t\\t<Over5totalTime>0</Over5totalTime>\\r\\n\\t\\t\\t<Error4XXRate>0</Error4XXRate>\\r\\n\\t\\t\\t<UnavailableNumber>0</UnavailableNumber>\\r\\n\\t\\t\\t<Over2totalTime>0</Over2totalTime>\\r\\n\\t\\t\\t<timestamp>1551581100000</timestamp>\\r\\n\\t\\t\\t<Over100FailureRate>0</Over100FailureRate>\\r\\n\\t\\t\\t<Over10FailureRate>0</Over10FailureRate>\\r\\n\\t\\t\\t<Availability>100</Availability>\\r\\n\\t\\t\\t<Over80FailureRate>0</Over80FailureRate>\\r\\n\\t\\t\\t<userId>12345</userId>\\r\\n\\t\\t\\t<AvailableNumber>2</AvailableNumber>\\r\\n\\t\\t\\t<Unavailability>0</Unavailability>\\r\\n\\t\\t\\t<ErrorCodeMaximum>0</ErrorCodeMaximum>\\r\\n\\t\\t\\t<Over10totalTime>0</Over10totalTime>\\r\\n\\t\\t\\t<taskId>49f7b317-7645-4cc9-94fd-1****</taskId>\\r\\n\\t\\t\\t<Over30FailureRate>0</Over30FailureRate>\\r\\n\\t\\t\\t<Error6XXRate>0</Error6XXRate>\\r\\n\\t\\t\\t<Over500NumberRate>0</Over500NumberRate>\\r\\n\\t\\t\\t<Over3totalTime>0</Over3totalTime>\\r\\n\\t\\t\\t<Over400NumberRate>0</Over400NumberRate>\\r\\n\\t\\t\\t<Error5XXRate>0</Error5XXRate>\\r\\n\\t\\t\\t<Error5XXNumber>0</Error5XXNumber>\\r\\n\\t\\t\\t<Over90FailureRate>0</Over90FailureRate>\\r\\n\\t\\t\\t<Error4XXNumber>0</Error4XXNumber>\\r\\n\\t\\t\\t<Over50FailureRate>0</Over50FailureRate>\\r\\n\\t\\t\\t<ErrorCodeMinimum>0</ErrorCodeMinimum>\\r\\n\\t\\t\\t<Error6XXNumber>0</Error6XXNumber>\\r\\n\\t\\t</Data>\\r\\n\\t\\t<RequestId>DBDEAC51-EA3C-4853-8F25-6B48D38A28A9</RequestId>\\r\\n\\t\\t<Success>true</Success>\\r\\n\\t\\t<Code>200</Code>\\r\\n</DescribeSiteMonitorData>","errorExample":""}]',
+ 'title' => 'DescribeSiteMonitorData',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => 'The returned data contains a JSON string that may consist of several or all of the following parameters:'."\n"
+ ."\n"
+ .'* Error4XXRate: the percentage of detection results with 4XX status codes.'."\n"
+ .'* Error6XXRate: the percentage of detection results with 6XX status codes.'."\n"
+ .'* Error5XXRate: the percentage of detection results with 5XX status codes.'."\n"
+ .'* Error4XXNumber: the number of detection results with 4XX status codes.'."\n"
+ .'* Error5XXNumber: the number of detection results with 5XX status codes.'."\n"
+ .'* Error6XXNumber: the number of detection results with 6XX status codes.'."\n"
+ .'* Over5totalTime: the percentage of detection requests to which the response time exceeds 5,000 ms.'."\n"
+ .'* Over3totalTime: the percentage of detection requests to which the response time exceeds 3,000 ms.'."\n"
+ .'* Over2totalTime: the percentage of detection requests to which the response time exceeds 2,000 ms.'."\n"
+ .'* Over10FailureRate: the percentage of detection points whose failure rate of detection requests exceeds 10%.'."\n"
+ .'* Over100FailureRate: the percentage of detection points whose failure rate of detection requests exceeds 99%.'."\n"
+ .'* Over30FailureRate: the percentage of detection points whose failure rate of detection requests exceeds 30%.'."\n"
+ .'* Over50FailureRate: the percentage of detection points whose failure rate of detection requests exceeds 50%.'."\n"
+ .'* Over80FailureRate: the percentage of detection points whose failure rate of detection requests exceeds 80%.'."\n"
+ .'* Over90FailureRate: the percentage of detection points whose failure rate of detection requests exceeds 90%.'."\n"
+ .'* Over400NumberRate: the percentage of detection results with status codes that are greater than 400.'."\n"
+ .'* Over400NumberRate: the percentage of detection results with status codes that are greater than 500.'."\n"
+ .'* AvailableNumber: the number of available detection points.'."\n"
+ .'* UnavailableNumber: the number of unavailable detection points.'."\n"
+ .'* Availability: the availability rate.'."\n"
+ .'* Unavailability: the unavailability rate.'."\n"
+ .'* ErrorCodeMaximum: the maximum error code in the detection results that were returned in a specific period. Assume that five status codes are returned in a minute after detection requests are sent from five detection points. The status code in four detection results is 200 and that in one detection result is 404. In this case, the maximum error code is 404.'."\n"
+ .'* ErrorCodeMinimum: the minimum error code in the detection results returned in a monitoring period. Assume that five status codes are returned in a minute after detection requests are sent from five detection points. The status code in four detection results is 200 and that in one detection result is 404. In this case, the minimum error code is 200.'."\n"
+ ."\n"
+ .'> We recommend that you use the AvailableNumber, UnavailableNumber, Availability, Unavailability, ErrorCodeMaximum, or ErrorCodeMinimum metric, whose value is easy to calculate.'."\n",
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSiteMonitorStatistics' => [
+ 'summary' => 'Queries the statistics of a specified metric for a specified site monitoring task.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the site monitoring task.'."\n"
+ ."\n"
+ .'For more information about how to obtain the ID of a site monitoring task, see [DescribeSiteMonitorList](~~115052~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ef4cdc8b-9dc7-43e7-810e-f950e56c****',
+ ],
+ ],
+ [
+ 'name' => 'TimeRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period.'."\n"
+ ."\n"
+ .'Unit: minutes. Default value: 1440 (one day). Maximum value: 43200 (30 days).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1440',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time range to query.'."\n"
+ ."\n"
+ .'Unit: milliseconds. The default value is 1 hour ahead of the current time.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1576142850527',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name. Valid values:'."\n"
+ ."\n"
+ .'* Availability'."\n"
+ .'* ErrorRate'."\n"
+ .'* ResponseTime'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Availability',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Succcessful',
+ ],
+ 'Data' => [
+ 'description' => 'The statistics.'."\n",
+ 'type' => 'string',
+ 'example' => '100',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3AD2724D-E317-4BFB-B422-D6691D071BE1',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'The specified parameter is not valid.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ [
+ 'errorCode' => 'InvalidClientTokenId',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"100\\",\\n \\"RequestId\\": \\"3AD2724D-E317-4BFB-B422-D6691D071BE1\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeSiteMonitorStatisticsResponse>\\n\\t<Message>successful</Message>\\n\\t<RequestId>3AD2724D-E317-4BFB-B422-D6691D071BE1</RequestId>\\n\\t<Data>100</Data>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</DescribeSiteMonitorStatisticsResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeSiteMonitorStatistics',
+ 'description' => 'This topic provides an example on how to query the statistics of the `Availability` metric for a site monitoring task whose ID is `ef4cdc8b-9dc7-43e7-810e-f950e56c****`. The result indicates that the availability rate of the site is `100%`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSiteMonitorList' => [
+ 'summary' => 'Queries site monitoring tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'a1ecd34a-8157-44d9-b060-14950837****',
+ ],
+ ],
+ [
+ 'name' => 'TaskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The protocol that is used by the site monitoring task. Valid values: HTTP, PING, TCP, UDP, DNS, SMTP, POP3, and FTP.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ ],
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword to be matched.'."\n"
+ ."\n"
+ .'> You can search for tasks by name or address. Fuzzy search is supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'site',
+ ],
+ ],
+ [
+ 'name' => 'Page',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'TaskState',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The task status. Valid values:'."\n"
+ ."\n"
+ .'* 1: The task is enabled.'."\n"
+ .'* 2: The task is disabled.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'AgentGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Task network type. Valid values:'."\n"
+ ."\n"
+ .'- PC: Cable Network'."\n"
+ ."\n"
+ .'- MOBILE: Mobile Cellular Network'."\n"
+ ."\n"
+ .'- FC: Alibaba Cloud VPC Network',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PC',
+ 'enum' => [
+ 'PC',
+ 'MOBILE',
+ 'FC',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'A80DB41C-AF6C-50E1-ADB5-66DCBA3D266B',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'SiteMonitors' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SiteMonitor' => [
+ 'description' => 'The site monitoring tasks that are returned.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskType' => [
+ 'description' => 'The protocol that is used by the site monitoring task. Valid values: HTTP, PING, TCP, UDP, DNS, SMTP, POP3, and FTP.'."\n",
+ 'type' => 'string',
+ 'example' => 'TCP',
+ ],
+ 'UpdateTime' => [
+ 'description' => 'The time when the site monitoring task was updated.'."\n",
+ 'type' => 'string',
+ 'example' => '2022-03-08 17:14:31',
+ ],
+ 'Interval' => [
+ 'description' => 'The interval at which detection requests are sent. Unit: minutes.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'TaskState' => [
+ 'description' => 'The task status. Valid values:'."\n"
+ ."\n"
+ .'* 1: The task is enabled.'."\n"
+ .'* 2: The task is disabled.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'CreateTime' => [
+ 'description' => 'The time when the site monitoring task was created.'."\n",
+ 'type' => 'string',
+ 'example' => '2021-11-01 11:05:18',
+ ],
+ 'TaskName' => [
+ 'description' => 'The name of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => '域名检测_example.com.cn',
+ ],
+ 'Address' => [
+ 'description' => 'The URL or IP address that is monitored by the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://aliyun.com',
+ ],
+ 'TaskId' => [
+ 'description' => 'The ID of the site monitoring task.'."\n",
+ 'type' => 'string',
+ 'example' => 'f5783760-1b39-4b6b-80e8-453d962a****',
+ ],
+ 'OptionsJson' => [
+ 'description' => 'The extended options of the site monitoring task. The options vary based on the specified protocol. For more information, see [CreateSiteMonitor](~~115048~~).'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'password' => [
+ 'description' => 'The password of the SMTP, POP3, or FTP protocol.'."\n",
+ 'type' => 'string',
+ 'example' => '123****',
+ ],
+ 'request_format' => [
+ 'description' => 'The format of the HTTP request. Valid values:'."\n"
+ ."\n"
+ .'* hex: hexadecimal'."\n"
+ .'* txt: text'."\n",
+ 'type' => 'string',
+ 'example' => 'hex',
+ ],
+ 'response_content' => [
+ 'description' => 'The response to the HTTP request.'."\n"
+ ."\n"
+ .'* Hexadecimal format: If the request content is a byte string and cannot be represented in printable characters, you can convert the byte string to printable characters in the hexadecimal format. If you convert the byte string to printable characters in the hexadecimal format, one byte is converted to two hexadecimal characters. For example, (byte)1 is converted to `01` and (byte)27 is converted to `1B`. If the request content is a binary array in the Java format, for example, `{(byte)1, (byte)27}`, you can convert the binary array to `011b` or `011B`. Hexadecimal characters are not case-sensitive in site monitoring tasks. You can enter `011B` in the request content and set the request_format parameter to hex.'."\n"
+ .'* Text format: Common text refers to strings that consist of printable characters.'."\n",
+ 'type' => 'string',
+ 'example' => 'cf0f85',
+ ],
+ 'failure_rate' => [
+ 'description' => 'The packet loss rate.'."\n"
+ ."\n"
+ .'> This parameter is returned only if the TaskType parameter is set to PING.'."\n",
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '0.5',
+ ],
+ 'time_out' => [
+ 'description' => 'The timeout period. Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3000',
+ ],
+ 'header' => [
+ 'description' => 'The header of the HTTP request. An HTTP header is a key-value pair in which the key and the value are separated by a colon (:). The format is `key1:value1`. Each HTTP header occupies a line.'."\n",
+ 'type' => 'string',
+ 'example' => 'testKey:testValue',
+ ],
+ 'cookie' => [
+ 'description' => 'The cookie of the HTTP request.'."\n",
+ 'type' => 'string',
+ 'example' => 'lang=en',
+ ],
+ 'port' => [
+ 'description' => 'The port number of the TCP, UDP, SMTP, or POP3 protocol.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'ping_num' => [
+ 'description' => 'The number of hops for the PING protocol.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'authentication' => [
+ 'description' => 'Indicates whether the security authentication feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'* 0: The feature is enabled.'."\n"
+ .'* 1: The feature is disabled.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'http_method' => [
+ 'description' => 'The HTTP request method. Valid values:'."\n"
+ ."\n"
+ .'* get'."\n"
+ .'* post'."\n"
+ .'* head'."\n",
+ 'type' => 'string',
+ 'example' => 'get',
+ ],
+ 'match_rule' => [
+ 'description' => 'Indicates whether the alert rule is included. Valid values:'."\n"
+ ."\n"
+ .'* 0: The alert rule is included.'."\n"
+ .'* 1: The alert rule is not included.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'dns_match_rule' => [
+ 'description' => 'The relationship between the list of expected aliases or IP addresses and the list of DNS results. Valid values:'."\n"
+ ."\n"
+ .'* IN_DNS: The list of expected values is a subset of the list of DNS results.'."\n"
+ .'* DNS_IN: The list of DNS results is a subset of the list of expected values.'."\n"
+ .'* EQUAL: The list of DNS results is the same as the list of expected values.'."\n"
+ .'* ANY: The list of DNS results intersects with the list of expected values.'."\n",
+ 'type' => 'string',
+ 'example' => 'IN_DNS',
+ ],
+ 'request_content' => [
+ 'description' => 'The content of the HTTP request.'."\n",
+ 'type' => 'string',
+ 'example' => 'cf0f85',
+ ],
+ 'username' => [
+ 'description' => 'The username of the FTP, SMTP, or POP3 protocol.'."\n",
+ 'type' => 'string',
+ 'example' => 'testUser',
+ ],
+ 'response_format' => [
+ 'description' => 'The format of the HTTP response. Valid values:'."\n"
+ ."\n"
+ .'* hex: hexadecimal'."\n"
+ .'* txt: text'."\n",
+ 'type' => 'string',
+ 'example' => 'hex',
+ ],
+ 'dns_type' => [
+ 'description' => 'The type of the DNS record. This parameter is returned only if the TaskType parameter is set to DNS. Valid values:'."\n"
+ ."\n"
+ .'* A (default): a record that specifies an IP address related to the specified host name or domain name.'."\n"
+ .'* CNAME: a record that maps multiple domain names to a domain name.'."\n"
+ .'* NS: a record that specifies a DNS server used to parse domain names.'."\n"
+ .'* MX: a record that links domain names to the address of a mail server.'."\n"
+ .'* TXT: a record that stores the text information of host name or domain names. The text must be 1 to 512 bytes in length. The TXT record serves as a Sender Policy Framework (SPF) record to fight against spam.'."\n"
+ .'* AAAA: a record that maps a domain name to the relevant IPv6 address.'."\n",
+ 'type' => 'string',
+ 'example' => 'A',
+ ],
+ 'dns_server' => [
+ 'description' => 'The domain name or IP address of the DNS server.'."\n",
+ 'type' => 'string',
+ 'example' => '192.168.XX.XX',
+ ],
+ 'enable_operator_dns' => [
+ 'description' => 'Indicates whether the DNS server of the carrier is used.'."\n"
+ ."\n"
+ .'* true (default): The DNS server of the carrier is used.'."\n"
+ .'* false: The DNS server of the carrier is not used. The default DNS server or the specified DNS server is used.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'attempts' => [
+ 'description' => 'The number of retries after a DNS failure occurred.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3',
+ ],
+ 'protocol' => [
+ 'description' => 'The protocol type of DNS detection. Valid values:'."\n"
+ ."\n"
+ .'* udp (default)'."\n"
+ .'* tcp'."\n"
+ .'* tcp-tls'."\n",
+ 'type' => 'string',
+ 'example' => 'udp',
+ ],
+ 'proxy_protocol' => [
+ 'description' => 'Indicates whether the PROXY protocol is enabled. Valid values:'."\n"
+ ."\n"
+ .'* false (default): The PROXY protocol is disabled.'."\n"
+ .'* true: The PROXY protocol is enabled.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'acceptable_response_code' => [
+ 'description' => 'The acceptable status code.'."\n"
+ ."\n"
+ .'> We recommend that you configure assertions.'."\n",
+ 'type' => 'string',
+ 'example' => '400',
+ ],
+ 'isBase64Encode' => [
+ 'description' => 'Indicates whether the password is decoded by using the Base64 algorithm. Valid values:'."\n"
+ ."\n"
+ .'* true: The password is decoded by using the Base64 algorithm.'."\n"
+ .'* false (default): The password is not decoded by using the Base64 algorithm.'."\n",
+ 'type' => 'string',
+ 'example' => 'false',
+ ],
+ 'cert_verify' => [
+ 'description' => 'Indicates whether the certificate is verified. Valid values:'."\n"
+ ."\n"
+ .'* false (default): The certificate is not verified.'."\n"
+ .'* true: The certificate is verified.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'unfollow_redirect' => [
+ 'description' => 'Indicates whether redirects are followed if the status code 301 or 302 is returned. Valid values:'."\n"
+ ."\n"
+ .'* true: Redirects are not followed.'."\n"
+ .'* false (default): Redirects are followed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'diagnosis_mtr' => [
+ 'description' => 'Indicates whether MTR is automatically used to diagnose network issues if a task fails. Valid values:'."\n"
+ ."\n"
+ .'* false (default): MTR is not automatically used to diagnose network issues if a task fails.'."\n"
+ .'* true: MTR is automatically used to diagnose network issues if a task fails.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'diagnosis_ping' => [
+ 'description' => 'Indicates whether ping requests are automatically sent to detect network latency if a detection task fails. Valid values:'."\n"
+ ."\n"
+ .'* false (default): Ping requests are not automatically sent to detect network latency if a detection task fails.'."\n"
+ .'* true: Ping requests are automatically sent to detect network latency if a detection task fails.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'retry_delay' => [
+ 'description' => 'The number of times a failed detection request is retried.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'assertions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'assertions' => [
+ 'description' => 'The assertions.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'property' => [
+ 'description' => 'The parsing path of the assertion.'."\n"
+ ."\n"
+ .'* If the assertion type is `body_json`, the path is `json path`.'."\n"
+ .'* If the assertion type is `body_xml`, the path is `xml path`.'."\n",
+ 'type' => 'string',
+ 'example' => 'json path',
+ ],
+ 'type' => [
+ 'description' => 'The assertion type. Valid values:'."\n"
+ ."\n"
+ .'* response_time: checks whether the response time meets expectations.'."\n"
+ .'* status_code: checks whether the HTTP status code meets expectations.'."\n"
+ .'* header: checks whether the fields in the response header meet expectations.'."\n"
+ .'* body_text: checks whether the content in the response body meets expectations by using text matching.'."\n"
+ .'* body_json: checks whether the content in the response body meets expectations by using JSON parsing (JSONPath).'."\n"
+ .'* body_xml: checks whether the content in the response body meets expectations by using XML parsing (XPath).'."\n",
+ 'type' => 'string',
+ 'example' => 'response_time',
+ ],
+ 'operator' => [
+ 'description' => 'The comparison operator of the assertion. Valid values:'."\n"
+ ."\n"
+ .'* contains: contains'."\n"
+ .'* doesNotContain: does not contain'."\n"
+ .'* matches: matches regular expressions'."\n"
+ .'* doesNotMatch: does not match regular expressions'."\n"
+ .'* is: equal to a numeric value or matches a character'."\n"
+ .'* isNot: not equal to'."\n"
+ .'* lessThan: less than'."\n"
+ .'* moreThan: greater than'."\n",
+ 'type' => 'string',
+ 'example' => 'lessThan',
+ ],
+ 'target' => [
+ 'description' => 'The numeric value or character used for matching.'."\n",
+ 'type' => 'string',
+ 'example' => '1000',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'AgentGroup' => [
+ 'description' => 'The detection point type. Valid values:'."\n"
+ ."\n"
+ .'* PC'."\n"
+ .'* MOBILE'."\n",
+ 'type' => 'string',
+ 'example' => 'PC',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ThrottlingException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A80DB41C-AF6C-50E1-ADB5-66DCBA3D266B\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"SiteMonitors\\": {\\n \\"SiteMonitor\\": [\\n {\\n \\"TaskType\\": \\"TCP\\",\\n \\"UpdateTime\\": \\"2022-03-08 17:14:31\\",\\n \\"Interval\\": \\"1\\",\\n \\"TaskState\\": \\"1\\",\\n \\"CreateTime\\": \\"2021-11-01 11:05:18\\",\\n \\"TaskName\\": \\"新的探测任务\\",\\n \\"Address\\": \\"https://aliyun.com\\",\\n \\"TaskId\\": \\"f5783760-1b39-4b6b-80e8-453d962a****\\",\\n \\"OptionsJson\\": {\\n \\"password\\": \\"123****\\",\\n \\"request_format\\": \\"hex\\",\\n \\"response_content\\": \\"cf0f85\\",\\n \\"failure_rate\\": 0.5,\\n \\"time_out\\": 3000,\\n \\"header\\": \\"testKey:testValue\\",\\n \\"cookie\\": \\"lang=en\\",\\n \\"port\\": 80,\\n \\"ping_num\\": 20,\\n \\"authentication\\": 1,\\n \\"http_method\\": \\"get\\",\\n \\"match_rule\\": 0,\\n \\"dns_match_rule\\": \\"IN_DNS\\",\\n \\"request_content\\": \\"cf0f85\\",\\n \\"username\\": \\"testUser\\",\\n \\"response_format\\": \\"hex\\",\\n \\"dns_type\\": \\"A\\",\\n \\"dns_server\\": \\"192.168.XX.XX\\",\\n \\"enable_operator_dns\\": true,\\n \\"attempts\\": 3,\\n \\"protocol\\": \\"udp\\",\\n \\"proxy_protocol\\": false,\\n \\"acceptable_response_code\\": \\"400\\",\\n \\"isBase64Encode\\": \\"false\\",\\n \\"cert_verify\\": false,\\n \\"unfollow_redirect\\": false,\\n \\"diagnosis_mtr\\": false,\\n \\"diagnosis_ping\\": false,\\n \\"retry_delay\\": 1,\\n \\"assertions\\": {\\n \\"assertions\\": [\\n {\\n \\"property\\": \\"json path\\",\\n \\"type\\": \\"response_time\\",\\n \\"operator\\": \\"lessThan\\",\\n \\"target\\": \\"1000\\"\\n }\\n ]\\n }\\n },\\n \\"AgentGroup\\": \\"PC\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeSiteMonitorListResponse>\\r\\n\\t<TotalCount>1</TotalCount>\\r\\n\\t<RequestId>A80DB41C-AF6C-50E1-ADB5-66DCBA3D266B</RequestId>\\r\\n\\t<Message>successful</Message>\\r\\n\\t<PageSize>10</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n\\t<SiteMonitors>\\r\\n\\t\\t<SiteMonitor>\\r\\n\\t\\t\\t<TaskId>f5783760-1b39-4b6b-80e8-453d962a****</TaskId>\\r\\n\\t\\t\\t<Address>https://aliyun.com</Address>\\r\\n\\t\\t\\t<EndTime></EndTime>\\r\\n\\t\\t\\t<TaskName>test123</TaskName>\\r\\n\\t\\t\\t<OptionsJson>\\r\\n\\t\\t\\t\\t<response_content></response_content>\\r\\n\\t\\t\\t\\t<request_format>hex</request_format>\\r\\n\\t\\t\\t\\t<response_format>hex</response_format>\\r\\n\\t\\t\\t\\t<request_content>cf0f85</request_content>\\r\\n\\t\\t\\t\\t<port>80</port>\\r\\n\\t\\t\\t</OptionsJson>\\r\\n\\t\\t\\t<TaskType>TCP</TaskType>\\r\\n\\t\\t\\t<CreateTime>2021-11-01 11:05:18</CreateTime>\\r\\n\\t\\t\\t<UpdateTime>2022-03-08 17:14:31</UpdateTime>\\r\\n\\t\\t\\t<TaskState>1</TaskState>\\r\\n\\t\\t\\t<Interval>1</Interval>\\r\\n\\t\\t</SiteMonitor>\\r\\n\\t</SiteMonitors>\\r\\n</DescribeSiteMonitorListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeSiteMonitorList',
+ 'description' => 'This topic provides an example on how to query all the site monitoring tasks of your Alibaba Cloud account. In this example, the returned result indicates that the Alibaba Cloud account has one site monitoring task named `HanZhou_ECS2`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSiteMonitorLog' => [
+ 'summary' => 'Queries the logs of one or more instant test tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The IDs of the instant test tasks. Separate multiple task IDs with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'afa5c3ce-f944-4363-9edb-ce919a29****',
+ ],
+ ],
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The carrier identification code.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '465',
+ ],
+ ],
+ [
+ 'name' => 'City',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The city identification code.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '546',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the metric.'."\n"
+ ."\n"
+ .'Only the `ProbeLog` metric is supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ProbeLog',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start of the time range to query. The following formats are supported:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 Thursday, January 1, 1970'."\n"
+ .'* UTC time: the UTC time that follows the YYYY-MM-DDThh:mm:ssZ format'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* The specified time range includes the end time and excludes the start time. The start time must be earlier than the end time.\\'."\n"
+ .' We recommend that you use UNIX timestamps to prevent time zone-related issues.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1638422474389',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query. Valid values:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 Thursday, January 1, 1970'."\n"
+ .'* UTC time: the UTC time that follows the YYYY-MM-DDThh:mm:ssZ format'."\n"
+ ."\n"
+ .'> We recommend that you use UNIX timestamps to prevent time zone-related issues.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1638422475687',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The token that is used to initiate the next request if the response of the current request is truncated. You can use the token to initiate another request and obtain the remaining records.``'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'IWBjqMYSy0is7zSMGu16****',
+ ],
+ ],
+ [
+ 'name' => 'Length',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries to return on each page. Valid values: 1 to 1440.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ ],
+ [
+ 'name' => 'Filter',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The filter condition.'."\n"
+ ."\n"
+ .'You can specify a simple expression, for example, `TotalTime>100`. In this case, the operation returns only the data for instant test tasks whose total response time exceeds 100 milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TotalTime>100',
+ ],
+ ],
+ [
+ 'name' => 'BrowserInfo',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'Browser',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ ' Chrome' => ' Chrome',
+ 'Safari' => 'Safari',
+ 'Edge' => 'Edge',
+ 'Firefox' => 'Firefox',
+ ],
+ 'example' => 'Chrome',
+ ],
+ ],
+ [
+ 'name' => 'Device',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'tablet' => 'tablet',
+ 'mobile' => 'mobile',
+ 'laptop' => 'laptop',
+ ],
+ 'example' => 'laptop',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'NextToken' => [
+ 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n",
+ 'type' => 'string',
+ 'example' => 'IWBjqMYSy0is7zSMGu16****',
+ ],
+ 'Data' => [
+ 'description' => 'The logs of the instant test tasks.'."\n",
+ 'type' => 'string',
+ 'example' => '\\[{\\\\"redirectCount\\\\":0.0,\\\\"SSLConnectTime\\\\":0.0,\\\\"pingDetail\\\\":\\\\"\\\\",\\\\"HTTPConnectTime\\\\":0.0,\\\\"isp\\\\":\\\\"465\\\\",\\\\"errorCode\\\\":611,\\\\"ispCN\\\\":\\\\"Alibaba\\\\",\\\\"resolution\\\\":\\\\"\\\\",\\\\"areaEN\\\\":\\\\"HuaBei\\\\",\\\\"taskEndTimestamp\\\\":1638422475687,\\\\"targetIspEN\\\\":\\\\"\\\\",\\\\"TotalTime\\\\":1.0,\\\\"taskStartTimestamp\\\\":1638422474389,\\\\"countryCN\\\\":\\\\"China\\\\",\\\\"provinceEN\\\\":\\\\"Beijing\\\\",\\\\"countryEN\\\\":\\\\"China\\\\",\\\\"targetCityEN\\\\":\\\\"\\\\",\\\\"curlConnectTime\\\\":0.0,\\\\"ips\\\\":\\\\"\\\\",\\\\"route\\\\":\\\\"\\\\",\\\\"tcpConnectTime\\\\":0.0,\\\\"cityEN\\\\":\\\\"Beijing\\\\",\\\\"HTTPDownloadSpeed\\\\":0.0,\\\\"HTTPDownloadTime\\\\":0.0,\\\\"HTTPResponseCode\\\\":0.0,\\\\"areaCN\\\\":\\\\"North China\\\\",\\\\"city\\\\":\\\\"546\\\\",\\\\"expection\\\\":\\\\"\\\\",\\\\"suorceIp\\\\":\\\\"192.168.XX.XX \\\\",\\\\"ispEN\\\\":\\\\"Alibaba\\\\",\\\\"HTTPDNSTime\\\\":1.0,\\\\"targetIsp\\\\":\\\\"\\\\",\\\\"curlStarttransferTime\\\\":0.0,\\\\"provinceCN\\\\":\\\\"Beijing\\\\",\\\\"timestamp\\\\":1638422474000,\\\\"redirectTime\\\\":0.0,\\\\"targetCity\\\\":\\\\"\\\\", \\\\"expect\\\\":\\\\"\\\\",\\\\"HTTPDownloadSize\\\\":0.0,\\\\"localDns\\\\":\\\\"192.168.XX.XX\\\\",\\\\"cityCN\\\\":\\\\"Beijing\\\\",\\\\"taskId\\\\":\\\\"afa5c3ce-f944-4363-9edb-ce919a29\\*\\*\\*\\*\\\\"}]'."\n",
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '67F646FA-ED8A-58C2-B461-451DB52C8B14',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'**'."\n"
+ ."\n"
+ .'**Description** The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'successful',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ThrottlingException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"IWBjqMYSy0is7zSMGu16****\\",\\n \\"Data\\": \\"[{\\\\\\\\\\\\\\"redirectCount\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"SSLConnectTime\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"pingDetail\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"HTTPConnectTime\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"isp\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"465\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"errorCode\\\\\\\\\\\\\\":611,\\\\\\\\\\\\\\"ispCN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"阿里巴巴\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"resolution\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"areaEN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"HuaBei\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"taskEndTimestamp\\\\\\\\\\\\\\":1638422475687,\\\\\\\\\\\\\\"targetIspEN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"TotalTime\\\\\\\\\\\\\\":1.0,\\\\\\\\\\\\\\"taskStartTimestamp\\\\\\\\\\\\\\":1638422474389,\\\\\\\\\\\\\\"countryCN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"中国\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"provinceEN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Beijing\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"countryEN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"China\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"targetCityEN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"curlConnectTime\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"ips\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"route\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tcpConnectTime\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"cityEN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Beijing\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"HTTPDownloadSpeed\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"HTTPDownloadTime\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"HTTPResponseCode\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"areaCN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"华北\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"city\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"546\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"expection\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"suorceIp\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"192.168.XX.XX \\\\\\\\\\\\\\",\\\\\\\\\\\\\\"ispEN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Alibaba\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"HTTPDNSTime\\\\\\\\\\\\\\":1.0,\\\\\\\\\\\\\\"targetIsp\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"curlStarttransferTime\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"provinceCN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"北京市\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"timestamp\\\\\\\\\\\\\\":1638422474000,\\\\\\\\\\\\\\"redirectTime\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"targetCity\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"expect\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"HTTPDownloadSize\\\\\\\\\\\\\\":0.0,\\\\\\\\\\\\\\"localDns\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"192.168.XX.XX\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"cityCN\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"北京市\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"taskId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"afa5c3ce-f944-4363-9edb-ce919a29****\\\\\\\\\\\\\\"}]\\",\\n \\"RequestId\\": \\"67F646FA-ED8A-58C2-B461-451DB52C8B14\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\"\\n}","type":"json"}]',
+ 'title' => 'DescribeSiteMonitorLog',
+ 'description' => 'You can create an instant test task only by using the Alibaba Cloud account that you used to enable Network Analysis and Monitoring.'."\n"
+ ."\n"
+ .'This topic provides an example to show how to query the logs of an instant test task whose ID is `afa5c3ce-f944-4363-9edb-ce919a29****`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ ],
+ 'DescribeMetricLast' => [
+ 'summary' => 'Queries the latest monitoring data of a metric.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric that is used to monitor the cloud service.'."\n"
+ ."\n"
+ .'For more information about metric names, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'CPUUtilization',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period of the monitoring data.'."\n"
+ ."\n"
+ .'Valid values: 15, 60, 900, and 3600.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* If this parameter is not specified, monitoring data is queried based on the period in which metric values are reported. The statistical period of metrics (`MetricName`) varies for each cloud service. The statistical period of metrics is displayed in the `MinPeriods` column on the **Metrics** page for each cloud service. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start of the time range to query monitoring data.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2019-01-31 10:00:00',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query monitoring data.'."\n"
+ ."\n"
+ .'* For second-level data, the start time is obtained by comparing the time that is specified by the StartTime parameter and 20 minutes earlier of the time that is specified by the EndTime parameter. The earlier one of the compared points in time is used as the start time.'."\n"
+ .'* For minute-level data, the start time is obtained by comparing the time that is specified by the StartTime parameter and 2 hours earlier of the time that is specified by the EndTime parameter. The earlier one of the compared points in time is used as the start time.'."\n"
+ .'* For hour-level data, the start time is obtained by comparing the time that is specified by the StartTime parameter and two days earlier of the time that is specified by the EndTime parameter. The earlier one of the compared points in time is used as the start time.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2019-01-31 10:10:00',
+ ],
+ ],
+ [
+ 'name' => 'Dimensions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The monitoring dimensions of the specified resource.'."\n"
+ ."\n"
+ .'Set the value to a collection of `key:value` pairs. Example: `{"userId":"120886317861****"}` or `{"instanceId":"i-2ze2d6j5uhg20x47****"}`.'."\n"
+ ."\n"
+ .'> You can query a maximum of 50 instances in each request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"instanceId":"i-abcdefgh12****"}]',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The pagination token.'."\n"
+ ."\n"
+ .'* If the number of results exceeds the maximum number of entries allowed on a single page, a pagination token is returned.'."\n"
+ .'* This token can be used as an input parameter to obtain the next page of results. If all results are obtained, no token is returned.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '15761432850009dd70bb64cff1f0fff6c0b08ffff073be5fb1e785e2b020f7fed9b5e137bd810a6d6cff5ae****',
+ ],
+ ],
+ [
+ 'name' => 'Length',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Default value: 1000. This value indicates that a maximum of 1,000 entries of monitoring data can be returned on each page.'."\n"
+ ."\n"
+ .'> The maximum value of the Length parameter for each request is 1440.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ ],
+ [
+ 'name' => 'Express',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The expression that is used to calculate the query results in real time.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"groupby":["userId","instanceId"]}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'NextToken' => [
+ 'description' => 'The pagination token.'."\n",
+ 'type' => 'string',
+ 'example' => 'xxxxxx',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '021472A6-25E3-4094-8D00-BA4B6A5486C3',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Datapoints' => [
+ 'description' => 'The monitoring data.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"timestamp":1548777660000,"userId":"123456789876****","instanceId":"i-abcdefgh12****","Minimum":93.1,"Average":99.52,"Maximum":100}]',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'Period' => [
+ 'description' => 'The time interval.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'example' => '60',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"xxxxxx\\",\\n \\"RequestId\\": \\"021472A6-25E3-4094-8D00-BA4B6A5486C3\\",\\n \\"Success\\": true,\\n \\"Datapoints\\": \\"[{\\\\\\"timestamp\\\\\\":1548777660000,\\\\\\"userId\\\\\\":\\\\\\"123456789876****\\\\\\",\\\\\\"instanceId\\\\\\":\\\\\\"i-abcdefgh12****\\\\\\",\\\\\\"Minimum\\\\\\":93.1,\\\\\\"Average\\\\\\":99.52,\\\\\\"Maximum\\\\\\":100}]\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"Period\\": \\"60\\"\\n}","errorExample":""},{"type":"xml","example":"<QueryMetricListResponse>\\r\\n\\t<Period>60</Period>\\r\\n\\t<Datapoints>\\r\\n\\t\\t<timestamp>1548777660000</timestamp>\\r\\n\\t\\t<Maximum>100</Maximum>\\r\\n\\t\\t<userId>123456789876****</userId>\\r\\n\\t\\t<Minimum>93.1</Minimum>\\r\\n\\t\\t<instanceId>i-abcdefgh12****</instanceId>\\r\\n\\t\\t<Average>99.52</Average>\\r\\n\\t</Datapoints>\\r\\n\\t<RequestId>6A5F022D-AC7C-460E-94AE-B9E75083D027</RequestId>\\r\\n\\t<Success>true</Success>\\r\\n\\t<Code>200</Code>\\r\\n</QueryMetricListResponse>","errorExample":""}]',
+ 'title' => 'DescribeMetricLast',
+ 'description' => '### [](#)Limits'."\n"
+ ."\n"
+ .'* The total free quota is 1 million calls per month for the DescribeMetricLast, DescribeMetricList, DescribeMetricData, and DescribeMetricTop operations. If the free quota is used up and CloudMonitor Basic (pay-as-you-go) is not activated, these API operations can no longer be called as expected. If you have activated CloudMonitor Basic (pay-as-you-go), these API operations can still be called even if the free quota is used up. After the free quota is used up, you are charged for the excess usage based on the pay-as-you-go billing method. For more information about how to activate CloudMonitor Basic (pay-as-you-go), see [Enable the pay-as-you-go billing method](https://common-buy.aliyun.com/?spm=a2c4g.11186623.0.0.6c8f3481IbSHgG\\&commodityCode=cms_basic_public_cn\\&from_biz_channel=help_bill).'."\n"
+ .'* Each API operation can be called up to 50 times per second. An Alibaba Cloud account and the Resource Access Management (RAM) users within the account share the quota.'."\n"
+ ."\n"
+ .'> If `Throttling.User` or `Request was denied due to user flow control` is returned when you call an API operation, the API operation is throttled. For more information about how to handle the issue, see [How do I handle the throttling of a query API?](~~2615031~~)'."\n"
+ ."\n"
+ .'### [](#)Precautions'."\n"
+ ."\n"
+ .'The storage duration of the monitoring data of each cloud service is related to the `Period` parameter (statistical period). A larger value of the `Period` parameter indicates that the monitoring data is distributed in a larger time range and the storage duration of the monitoring data is longer. The following list describes the specific relationships:'."\n"
+ ."\n"
+ .'* The storage duration is 7 days if the value of the `Period` parameter is less than 60 seconds.'."\n"
+ .'* The storage duration is 31 days if the value of the `Period` parameter is 60 seconds.'."\n"
+ .'* The storage duration is 91 days if the value of the `Period` parameter is greater than or equal to 300 seconds.'."\n"
+ ."\n"
+ .'### [](#)Operation description'."\n"
+ ."\n"
+ .'This topic provides an example on how to query the latest monitoring data of the `CPUUtilization` metric for Elastic Compute Service (ECS). The namespace of ECS is `acs_ecs_dashboard`. The returned result indicates that the monitoring data for the instance `i-abcdefgh12****` of the account `123456789876****` is queried at an interval of 60 seconds. The maximum, minimum, and average values of the metric are 100, 93.1, and 99.52.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMetricList' => [
+ 'summary' => 'Queries the monitoring data of a metric for a specified cloud service.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service. Format: acs_service name.'."\n"
+ ."\n"
+ .'For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the metric.'."\n"
+ ."\n"
+ .'For more information about metric names, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cpu_idle',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The interval at which the monitoring data is queried.'."\n"
+ ."\n"
+ .'Valid values: 60, 300, and 900.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n"
+ ."\n"
+ .'> Configure this parameter based on your business scenario.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time range to query. The following formats are supported:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 Thursday, January 1, 1970'."\n"
+ .'* UTC time: the UTC time that follows the YYYY-MM-DDThh:mm:ssZ format'."\n"
+ ."\n"
+ .'> The specified period includes the end time and excludes the start time. The start time must be earlier than the end time.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2019-01-30 00:00:00',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query. The following formats are supported:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 Thursday, January 1, 1970'."\n"
+ .'* UTC time: the UTC time that follows the YYYY-MM-DDThh:mm:ssZ format'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2019-01-30 00:10:00',
+ ],
+ ],
+ [
+ 'name' => 'Dimensions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The dimensions that specify the resources whose monitoring data you want to query.'."\n"
+ ."\n"
+ .'Set the value to a collection of key-value pairs. A typical key-value pair is `instanceId:i-2ze2d6j5uhg20x47****`.'."\n"
+ ."\n"
+ .'> You can query a maximum of 50 instances in a single request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"instanceId": "i-abcdefgh12****"}]',
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The paging token.'."\n"
+ ."\n"
+ .'> If this parameter is not specified, the data on the first page is returned. A return value other than Null of this parameter indicates that not all entries have been returned. You can use this value as an input parameter to obtain entries on the next page. The value Null indicates that all query results have been returned.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '15761485350009dd70bb64cff1f0fff750b08ffff073be5fb1e785e2b020f1a949d5ea14aea7fed82f01dd8****',
+ ],
+ ],
+ [
+ 'name' => 'Length',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries to return on each page.'."\n"
+ ."\n"
+ .'> The maximum value of the Length parameter in a request is 1440.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ ],
+ [
+ 'name' => 'Express',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The expression that is used to compute the query results in real time.'."\n"
+ ."\n"
+ .'> Only the groupby expression is supported. This expression is similar to the GROUP BY statement that is used in databases.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"groupby":["userId","instanceId"]}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'NextToken' => [
+ 'description' => 'The paging token.'."\n",
+ 'type' => 'string',
+ 'example' => '15761441850009dd70bb64cff1f0fff6d0b08ffff073be5fb1e785e2b020f7fed9b5e137bd810a6d6cff5ae****',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '3121AE7D-4AFF-4C25-8F1D-C8226EBB1F42',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Datapoints' => [
+ 'description' => 'The monitoring data.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"timestamp":1548777660000,"userId":"120886317861****","instanceId":"i-abc","Minimum":9.92,"Average":9.92,"Maximum":9.92}]',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'Period' => [
+ 'description' => 'The interval at which the monitoring data is queried. Unit: seconds. Valid values: 60, 300, and 900.'."\n",
+ 'type' => 'string',
+ 'example' => '60',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"15761441850009dd70bb64cff1f0fff6d0b08ffff073be5fb1e785e2b020f7fed9b5e137bd810a6d6cff5ae****\\",\\n \\"RequestId\\": \\"3121AE7D-4AFF-4C25-8F1D-C8226EBB1F42\\",\\n \\"Success\\": true,\\n \\"Datapoints\\": \\"[{\\\\\\"timestamp\\\\\\":1548777660000,\\\\\\"userId\\\\\\":\\\\\\"120886317861****\\\\\\",\\\\\\"instanceId\\\\\\":\\\\\\"i-abc\\\\\\",\\\\\\"Minimum\\\\\\":9.92,\\\\\\"Average\\\\\\":9.92,\\\\\\"Maximum\\\\\\":9.92}]\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"Period\\": \\"60\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricListResponse>\\r\\n\\t<Period>60</Period>\\r\\n\\t<Datapoints>\\r\\n\\t\\t<timestamp>1490152860000</timestamp>\\r\\n\\t\\t<Maximum>100</Maximum>\\r\\n\\t\\t<userId>120886317861****</userId>\\r\\n\\t\\t<Minimum>93.1</Minimum>\\r\\n\\t\\t<instanceId>i-abcdefgh12****</instanceId>\\r\\n\\t\\t<Average>99.52</Average>\\r\\n\\t</Datapoints>\\r\\n\\t<RequestId>6A5F022D-AC7C-460E-94AE-B9E75083D027</RequestId>\\r\\n\\t<Success>true</Success>\\r\\n\\t<Code>200</Code>\\r\\n</DescribeMetricListResponse>","errorExample":""}]',
+ 'title' => 'DescribeMetricList',
+ 'description' => '## Limits'."\n"
+ ."\n"
+ .'Each API operation can be called up to 50 times per second. An Alibaba Cloud account and the RAM users within the account share the quota. '."\n"
+ ."\n\n"
+ .'>This topic provides an example to show how to query the monitoring data of the `cpu_idle` metric for Elastic Compute Service (ECS). The namespace of ECS is `acs_ecs_dashboard`. The returned result indicates that the monitoring data for the instance `i-abcdefgh12****` of the account `120886317861****` is queried at an interval of 60 seconds. The maximum, minimum, and average values of the metric are 100, 93.1, and 99.52.',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMetricData' => [
+ 'summary' => 'Queries the monitoring data of a metric for a cloud service.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric that is used to monitor the cloud service.'."\n"
+ ."\n"
+ .'For more information about the metrics of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cpu_idle',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period of the metric.'."\n"
+ ."\n"
+ .'Valid values: 15, 60, 900, and 3600.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* If this parameter is not specified, monitoring data is queried based on the period in which metric values are reported.'."\n"
+ ."\n"
+ .'* For more information about the statistical period of a metric that is specified by the `MetricName` parameter, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start of the time range to query monitoring data.'."\n"
+ ."\n"
+ .'* If the `StartTime` and `EndTime` parameters are not specified, the monitoring data of the last statistical period is queried.``'."\n"
+ ."\n"
+ .'* If the `StartTime` and `EndTime` parameters are specified, the monitoring data of the last statistical period in the specified time range is queried.```` The following examples demonstrate how to determine the period in which monitoring data is queried:'."\n"
+ ."\n"
+ .' * If you set the `Period` parameter to 15, the specified time range must be less than or equal to 20 minutes. For example, if you set the StartTime parameter to 2021-05-08 08:10:00 and the EndTime parameter to 2021-05-08 08:30:00, the monitoring data of the last 15 seconds in the time range is queried.'."\n"
+ .' * If you set the `Period` to 60 or 900, the specified time range must be less than or equal to 2 hours. For example, if you set the Period parameter to 60, the StartTime parameter to 2021-05-08 08:00:00, and the EndTime parameter to 2021-05-08 10:00:00, the monitoring data of the last 60 seconds in the time range is queried.'."\n"
+ .' * If you set the `Period` parameter to 3600, the specified time range must be less than or equal to 2 days. For example, if you set the StartTime parameter to 2021-05-08 08:00:00 and the EndTime parameter to 2021-05-10 08:00:00, the monitoring data of the last 3,600 seconds in the time range is queried.'."\n"
+ ."\n"
+ .'The following formats are supported:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 UTC on Thursday, January 1, 1970.'."\n"
+ .'* UTC time: the UTC time that follows the YYYY-MM-DDThh:mm:ssZ format.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* You must set the `StartTime` parameter to a point in time that is later than 00:00:00 UTC on Thursday, January 1, 1970. Otherwise, this parameter is invalid.'."\n"
+ ."\n"
+ .'* We recommend that you use UNIX timestamps to prevent time zone-related issues.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1618368900000',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query monitoring data.'."\n"
+ ."\n"
+ .'* If the `StartTime` and `EndTime` parameters are not specified, the monitoring data of the last statistical period is queried.``'."\n"
+ ."\n"
+ .'* If the `StartTime` and `EndTime` parameters are specified, the monitoring data of the last statistical period in the specified time range is queried.```` The following examples demonstrate how to determine the period in which monitoring data is queried:'."\n"
+ ."\n"
+ .' * If you set the `Period` parameter to 15, the specified time range must be less than or equal to 20 minutes. For example, if you set the StartTime parameter to 2021-05-08 08:10:00 and the EndTime parameter to 2021-05-08 08:30:00, the monitoring data of the last 15 seconds in the time range is queried.'."\n"
+ .' * If you set the `Period` to 60 or 900, the specified time range must be less than or equal to 2 hours. For example, if you set the Period parameter to 60, the StartTime parameter to 2021-05-08 08:00:00, and the EndTime parameter to 2021-05-08 10:00:00, the monitoring data of the last 60 seconds in the time range is queried.'."\n"
+ .' * If you set the `Period` parameter to 3600, the specified time range must be less than or equal to 2 days. For example, if you set the StartTime parameter to 2021-05-08 08:00:00 and the EndTime parameter to 2021-05-10 08:00:00, the monitoring data of the last 3,600 seconds in the time range is queried.'."\n"
+ ."\n"
+ .'The following formats are supported:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 UTC on Thursday, January 1, 1970.'."\n"
+ .'* UTC time: the UTC time that follows the YYYY-MM-DDThh:mm:ssZ format.'."\n"
+ ."\n"
+ .'> We recommend that you use UNIX timestamps to prevent time zone-related issues.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1618368960000',
+ ],
+ ],
+ [
+ 'name' => 'Dimensions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The dimensions based on which the resources are queried.'."\n"
+ ."\n"
+ .'Set the value to a collection of key-value pairs. A typical key-value pair is `instanceId:i-2ze2d6j5uhg20x47****`.'."\n"
+ ."\n"
+ .'> You can query a maximum of 50 instances in a single request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"instanceId": "i-abcdefgh12****"}]',
+ ],
+ ],
+ [
+ 'name' => 'Express',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The expression that is used to compute the query results in real time.'."\n"
+ ."\n"
+ .'> Only the `groupby` expression is supported. This expression is similar to the `GROUP BY` statement that is used in databases.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"groupby":["userId","instanceId"]}',
+ ],
+ ],
+ [
+ 'name' => 'Length',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Default value: 1000.'."\n"
+ ."\n"
+ .'> The maximum value of the Length parameter in a request is 1440.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '6A5F022D-AC7C-460E-94AE-B9E75083D027',
+ ],
+ 'Datapoints' => [
+ 'description' => 'The monitoring data. The value includes the following fields:'."\n"
+ ."\n"
+ .'* `timestamp`: the time when the alert was triggered.'."\n"
+ .'* `userId`: the ID of the user for which the alert was triggered.'."\n"
+ .'* `instanceId`: the ID of the instance for which the alert was triggered.'."\n"
+ .'* `Minimum`, `Average`, and `Maximum`: the aggregation methods.'."\n",
+ 'type' => 'string',
+ 'example' => '[{\\"timestamp\\":1618368900000,\\"Average\\":95.8291666666667,\\"Minimum\\":65.48,\\"Maximum\\":100.0},{\\"timestamp\\":1618368960000,\\"Average\\":95.8683333333333,\\"Minimum\\":67.84,\\"Maximum\\":100.0}]',
+ ],
+ 'Period' => [
+ 'description' => 'The statistical period of the monitoring data.'."\n"
+ ."\n"
+ .'Valid values: 15, 60, 900, and 3600.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'example' => '60',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"6A5F022D-AC7C-460E-94AE-B9E75083D027\\",\\n \\"Datapoints\\": \\"[{\\\\\\\\\\\\\\"timestamp\\\\\\\\\\\\\\":1618368900000,\\\\\\\\\\\\\\"Average\\\\\\\\\\\\\\":95.8291666666667,\\\\\\\\\\\\\\"Minimum\\\\\\\\\\\\\\":65.48,\\\\\\\\\\\\\\"Maximum\\\\\\\\\\\\\\":100.0},{\\\\\\\\\\\\\\"timestamp\\\\\\\\\\\\\\":1618368960000,\\\\\\\\\\\\\\"Average\\\\\\\\\\\\\\":95.8683333333333,\\\\\\\\\\\\\\"Minimum\\\\\\\\\\\\\\":67.84,\\\\\\\\\\\\\\"Maximum\\\\\\\\\\\\\\":100.0}]\\",\\n \\"Period\\": \\"60\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricDataResponse>\\r\\n\\t<RequestId>7598FEED-3B79-4B4A-AD01-435F34DA8EDC</RequestId>\\r\\n\\t<Period>60</Period>\\t\\r\\n <Datapoints>[{\\\\\\"timestamp\\\\\\":1618368900000,\\\\\\"Average\\\\\\":95.8291666666667,\\\\\\"Minimum\\\\\\":65.48,\\\\\\"Maximum\\\\\\":100.0},{\\\\\\"timestamp\\\\\\":1618368960000,\\\\\\"Average\\\\\\":95.8683333333333,\\\\\\"Minimum\\\\\\":67.84,\\\\\\"Maximum\\\\\\":100.0}]</Datapoints>\\r\\n\\t<Code>200</Code>\\r\\n</DescribeMetricDataResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeMetricData',
+ 'description' => '### [](#)Limits'."\n"
+ ."\n"
+ .'* The total free quota is 1 million calls per month for the DescribeMetricLast, DescribeMetricList, DescribeMetricData, and DescribeMetricTop operations. If the free quota is used up and CloudMonitor Basic (pay-as-you-go) is not activated, these API operations can no longer be called as expected. If you have activated CloudMonitor Basic (pay-as-you-go), these API operations can still be called even if the free quota is used up. If the free quota is used up, you are automatically charged for the excess usage based on the pay-as-you-go billing method. For more information about how to activate CloudMonitor Basic (pay-as-you-go), see [Enable the pay-as-you-go billing method](https://common-buy.aliyun.com/?spm=a2c4g.11186623.0.0.6c8f3481IbSHgG\\&commodityCode=cms_basic_public_cn\\&from_biz_channel=help_bill).'."\n"
+ .'* Each API operation can be called up to 10 times per second. An Alibaba Cloud account and the Resource Access Management (RAM) users within the account share the quota.'."\n"
+ ."\n"
+ .'### [](#)Description'."\n"
+ ."\n"
+ .'> Different from [DescribeMetricList](~~51936~~), the DescribeMetricData operation provides statistical features. You can set the Dimension parameter to `{"instanceId": "i-abcdefgh12****"}` to aggregate all data of your Alibaba Cloud account.'."\n"
+ ."\n"
+ .'This topic provides an example on how to query the monitoring data of the `cpu_idle` metric for Elastic Compute Service (ECS). The namespace of ECS is `acs_ecs_dashboard`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMetricMetaList' => [
+ 'summary' => 'Queries the details of metrics that are supported in CloudMonitor.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'acs_kvstore',
+ ],
+ ],
+ [
+ 'name' => 'Labels',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The tags for filtering metrics. Specify a JSON string.'."\n"
+ ."\n"
+ .'Format: ` [{"name":"tag key","value":"tag value"},{"name":"tag key","value":"tag value"}] `. The following tags are available:'."\n"
+ ."\n"
+ .'* metricCategory: the category of the metric.'."\n"
+ .'* alertEnable: specifies whether to report alerts for the metric.'."\n"
+ .'* alertUnit: the unit of the metric in the alerts.'."\n"
+ .'* unitFactor: the factor for metric unit conversion.'."\n"
+ .'* minAlertPeriod: the minimum interval at which the alert is reported.'."\n"
+ .'* productCategory: the category of the service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"name":"productCategory","value":"kvstore_old"}]',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CPUUtilization',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 30.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '0CCE0AF0-053C-4B13-A583-DC9A85785D49',
+ ],
+ 'TotalCount' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'string',
+ 'example' => '12',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The configuration of the metrics in the resources.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'CPUUtilization',
+ ],
+ 'Description' => [
+ 'description' => 'The metric description.'."\n",
+ 'type' => 'string',
+ 'example' => 'CPUUtilization',
+ ],
+ 'Labels' => [
+ 'description' => 'The tags of the metric, including one or more JSON strings.'."\n"
+ ."\n"
+ .'Format: `[{"name":"tag key","value":"tag value"}]`. The `name` can be repeated. The following tags are available:'."\n"
+ ."\n"
+ .'* metricCategory: the category of the metric.'."\n"
+ .'* alertEnable: indicates whether to report alerts for the metric.'."\n"
+ .'* alertUnit: the unit of the metric in the alerts.'."\n"
+ .'* unitFactor: the factor for metric unit conversion.'."\n"
+ .'* minAlertPeriod: the minimum interval at which the alert is reported.'."\n"
+ .'* productCategory: the category of the service.'."\n",
+ 'type' => 'string',
+ 'example' => '[{\\"name\\":\\"alertUnit\\",\\"value\\":\\"Bytes\\"},{\\"name\\":\\"minAlertPeriod\\",\\"value\\":\\"60\\"},{\\"name\\":\\"metricCategory\\",\\"value\\":\\"instanceId\\"},{\\"name\\":\\"instanceType\\",\\"value\\":\\"disaster\\"},{\\"name\\":\\"is_alarm\\",\\"value\\":\\"true\\"},{\\"name\\":\\"productCategory\\",\\"value\\":\\"kvstore_old\\"}]',
+ ],
+ 'Unit' => [
+ 'description' => 'The unit of the metric.'."\n",
+ 'type' => 'string',
+ 'example' => '%',
+ ],
+ 'Dimensions' => [
+ 'description' => 'The monitoring dimensions of the resource. Multiple monitoring dimensions are separated with commas (,).'."\n",
+ 'type' => 'string',
+ 'example' => 'instanceId',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_kvstore',
+ ],
+ 'Periods' => [
+ 'description' => 'The statistical periods of the metric. Multiple statistical periods are separated with commas (,).'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'example' => '60,300',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical method. Multiple statistical methods are separated with commas (,).'."\n",
+ 'type' => 'string',
+ 'example' => 'Average,Minimum,Maximum',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Parameter invalid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"CDE9EAFF-D54E-4024-BBFC-B0AAC883143B\\",\\n \\"TotalCount\\": \\"10\\",\\n \\"Success\\": true,\\n \\"Resources\\": {\\n \\"Resource\\": [\\n {\\n \\"MetricName\\": \\"ads.diskSize\\",\\n \\"Description\\": \\"The rated disk capacity\\",\\n \\"Labels\\": \\"[{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"minAlertPeriod\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"300\\\\\\\\\\\\\\"},{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"alertDefault\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\"},{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"unitFactor\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"},{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"alertUnit\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Mbytes\\\\\\\\\\\\\\"},{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"productCategory\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"ads\\\\\\\\\\\\\\"},{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"is_alarm\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"true\\\\\\\\\\\\\\"},{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"metricCategory\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"workerId\\\\\\\\\\\\\\"}]\\",\\n \\"Unit\\": \\"MB\\",\\n \\"Dimensions\\": \\"userId,instanceId,tableSchema,workerId\\",\\n \\"Namespace\\": \\"acs_ads\\",\\n \\"Periods\\": \\"300\\",\\n \\"Statistics\\": \\"Average,Minimum,Maximum\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricMetaListResponse>\\r\\n\\t\\t<TotalCount>1853</TotalCount>\\r\\n\\t\\t<RequestId>CDE9EAFF-D54E-4024-BBFC-B0AAC883143B</RequestId>\\r\\n\\t\\t<Success>true</Success>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Resources>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>磁盘额定容量</Description>\\r\\n\\t\\t\\t\\t<Statistics>Average,Minimum,Maximum</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>ads.diskSize</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"300\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertDefault\\\\\\",\\\\\\"value\\\\\\":\\\\\\"\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"unitFactor\\\\\\",\\\\\\"value\\\\\\":\\\\\\"1\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"Mbytes\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"productCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"ads\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"workerId\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,instanceId,tableSchema,workerId</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_ads</Namespace>\\r\\n\\t\\t\\t\\t<Periods>300</Periods>\\r\\n\\t\\t\\t\\t<Unit>MB</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>磁盘已用容量</Description>\\r\\n\\t\\t\\t\\t<Statistics>Average,Minimum,Maximum</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>ads.diskUsed</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"Mbytes\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"300\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"workerId\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,instanceId,tableSchema,workerId</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_ads</Namespace>\\r\\n\\t\\t\\t\\t<Periods>300</Periods>\\r\\n\\t\\t\\t\\t<Unit>MB</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>磁盘使用率</Description>\\r\\n\\t\\t\\t\\t<Statistics>Average,Minimum,Maximum</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>ads.diskUsedPercent</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"%\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"300\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"workerId\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,instanceId,tableSchema,workerId</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_ads</Namespace>\\r\\n\\t\\t\\t\\t<Periods>300</Periods>\\r\\n\\t\\t\\t\\t<Unit>%</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>queue的未消费的消息数目</Description>\\r\\n\\t\\t\\t\\t<Statistics>Maximum</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>QueueMessageAccumulation</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"60\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertDefault\\\\\\",\\\\\\"value\\\\\\":\\\\\\"\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"unitFactor\\\\\\",\\\\\\"value\\\\\\":\\\\\\"1\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"count/min\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"productCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"amqp\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"queue\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,regionId,vhostName,queueName</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_amqp</Namespace>\\r\\n\\t\\t\\t\\t<Periods>60,300</Periods>\\r\\n\\t\\t\\t\\t<Unit>count/min</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>queue每分钟消息生产量</Description>\\r\\n\\t\\t\\t\\t<Statistics>Value</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>QueueMessageInput</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"60\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertDefault\\\\\\",\\\\\\"value\\\\\\":\\\\\\"\\\\\\"},{\\\\\\"n ame\\\\\\":\\\\\\"unitFactor\\\\\\",\\\\\\"value\\\\\\":\\\\\\"1\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"count/min\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"productCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"amqp\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"queue\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,regionId,vhostName,queueName</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_amqp</Namespace>\\r\\n\\t\\t\\t\\t<Periods>60,300</Periods>\\r\\n\\t\\t\\t\\t<Unit>count/min</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>queue的未消费的消息数目</Description>\\r\\n\\t\\t\\t\\t<Statistics>Value</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>QueueMessageOutput</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"60\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertDefault\\\\\\",\\\\\\"value\\\\\\":\\\\\\"\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"unitFactor\\\\\\",\\\\\\"value\\\\\\":\\\\\\"1\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"count/min\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"productCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"amqp\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"queue\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,regionId,vhostName,queueName</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_amqp</Namespace>\\r\\n\\t\\t\\t\\t<Periods>60,300</Periods>\\r\\n\\t\\t\\t\\t<Unit>count/min</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>实例每分钟产生的消息数量</Description>\\r\\n\\t\\t\\t\\t<Statistics>Value</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>VhostMessageInput</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"60\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertDefault\\\\\\",\\\\\\"value\\\\\\":\\\\\\"\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"unitFactor\\\\\\",\\\\\\"value\\\\\\":\\\\\\"1\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"count/min\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"productCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"amqp\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"vhost\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,regionId,vhostName</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_amqp</Namespace>\\r\\n\\t\\t\\t\\t<Periods>60,300</Periods>\\r\\n\\t\\t\\t\\t<Unit>count/min</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>实例每分钟消费的消息数量</Description>\\r\\n\\t\\t\\t\\t<Statistics>Value</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>VhostMessageOutput</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"60\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertDefault\\\\\\",\\\\\\"value\\\\\\":\\\\\\"\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"unitFactor\\\\\\",\\\\\\"value\\\\\\":\\\\\\"1\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"count/min\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"productCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"amqp\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"vhost\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,regionId,vhostName</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_amqp</Namespace>\\r\\n\\t\\t\\t\\t<Periods>60,300</Periods>\\r\\n\\t\\t\\t\\t<Unit>count/min</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description></Description>\\r\\n\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>Latency</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"ms\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"60\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"instanceId\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,region,apiUid</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_apigateway_dashboard</Namespace>\\r\\n\\t\\t\\t\\t<Periods>60,300,900</Periods>\\r\\n\\t\\t\\t\\t<Unit>ms</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>时间粒度内http返回码4XX占全部返回码的百分比</Description>\\r\\n\\t\\t\\t\\t<Statistics>Average,Minimum,Maximum</Statistics>\\r\\n\\t\\t\\t\\t<MetricName>code4xx</MetricName>\\r\\n\\t\\t\\t\\t<Labels>[{\\\\\\"name\\\\\\":\\\\\\"alertUnit\\\\\\",\\\\\\"value\\\\\\":\\\\\\"%\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"minAlertPeriod\\\\\\",\\\\\\"value\\\\\\":\\\\\\"60\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"metricCategory\\\\\\",\\\\\\"value\\\\\\":\\\\\\"instanceId\\\\\\"},{\\\\\\"name\\\\\\":\\\\\\"is_alarm\\\\\\",\\\\\\"value\\\\\\":\\\\\\"true\\\\\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Dimensions>userId,instanceId</Dimensions>\\r\\n\\t\\t\\t\\t<Namespace>acs_cdn</Namespace>\\r\\n\\t\\t\\t\\t<Periods>60,300</Periods>\\r\\n\\t\\t\\t\\t<Unit>%</Unit>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t</Resources>\\r\\n</DescribeMetricMetaListResponse>","errorExample":""}]',
+ 'title' => 'DescribeMetricMetaList',
+ 'description' => 'This operation is used together with DescribeMetricList and DescribeMetricLast. For more information, see [DescribeMetricList](~~51936~~) and [DescribeMetricLast](~~51939~~).'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeProjectMeta' => [
+ 'summary' => 'Queries the information about monitored services in CloudMonitor.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Labels',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The tags. Tags are used to filter services.'."\n"
+ ."\n"
+ .'You can filter services only by the tag whose `name` is `product`. Example: {"name":"product","value":"ECS"}.'."\n"
+ ."\n"
+ .'> We recommend that you do not use the special tags in the CloudMonitor console.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"name":"product","value":"ECS"}]',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Valid values: 1 to 100.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Valid values: 1 to 10000.'."\n"
+ ."\n"
+ .'Default value: 30.'."\n"
+ ."\n"
+ .'> The value of this parameter is not limited. You can view a large number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '4C2061B2-3B1B-43BF-A4A4-C53426F479C0',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true: The request was successful. false: The request failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'string',
+ 'example' => '5',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'string',
+ 'example' => '12',
+ ],
+ 'Resources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The details of the cloud service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service. Format: `acs_Service name abbreviation`. For more information about namespaces, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_cdn',
+ ],
+ 'Description' => [
+ 'description' => 'The description.'."\n",
+ 'type' => 'string',
+ 'example' => 'CDN',
+ ],
+ 'Labels' => [
+ 'description' => 'The tags. Tags are used to filter services.'."\n"
+ ."\n"
+ .'Tags are returned in the following format: `[{"name":"Tag key","value":"Tag value"}, {"name":"Tag key","value":"Tag value"}]`. The following tags are commonly used:'."\n"
+ ."\n"
+ .'* alertUnit: the unit of the metric value in alerts. If the unit is small, the original metric value may be too large. In this case, you can use the `alertUnit` tag to specify an appropriate unit. This tag is used in CloudMonitor.'."\n"
+ .'* minAlertPeriod: the minimum time interval to report a new alert. The interval at which monitoring data is reported. The value is usually 1 minute.'."\n"
+ .'* metricCategory: the service specification. Example: kvstore_sharding. Some Alibaba Cloud services have multiple specifications that are defined in the same namespace. This parameter is used to identify the specifications.'."\n"
+ .'* is_alarm: indicates whether an alert rule can be configured. We recommend that you do not use the special tags in the CloudMonitor console.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"groupFlag":true}]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4C2061B2-3B1B-43BF-A4A4-C53426F479C0\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"PageSize\\": \\"5\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"Total\\": \\"12\\",\\n \\"Resources\\": {\\n \\"Resource\\": [\\n {\\n \\"Namespace\\": \\"acs_cdn\\",\\n \\"Description\\": \\"CDN\\",\\n \\"Labels\\": \\"[{\\\\\\"metricCategory\\\\\\":ecs}]\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeProjectMeta>\\r\\n\\t\\t<PageNumber>1</PageNumber>\\r\\n\\t\\t<PageSize>5</PageSize>\\r\\n\\t\\t<RequestId>4C2061B2-3B1B-43BF-A4A4-C53426F479C0</RequestId>\\r\\n\\t\\t<Success>true</Success>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Total>12</Total>\\r\\n\\t\\t<Resources>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>分析型数据库</Description>\\r\\n\\t\\t\\t\\t<Labels>[{\\"name\\":\\"product\\",\\"value\\":\\"ADS\\"},{\\"name\\":\\"productCategory\\",\\"value\\":\\"ads\\"},{\\"name\\":\\"groupFlag\\",\\"value\\":\\"true\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Namespace>acs_ads</Namespace>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>智能推荐</Description>\\r\\n\\t\\t\\t\\t<Labels>[{\\"name\\":\\"product\\",\\"value\\":\\"AIRec\\"},{\\"name\\":\\"productCategory\\",\\"value\\":\\"airec\\"},{\\"name\\":\\"groupFlag\\",\\"value\\":\\"true\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Namespace>acs_airec</Namespace>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>API网关</Description>\\r\\n\\t\\t\\t\\t<Labels>[{\\"name\\":\\"product\\",\\"value\\":\\"APIGateway\\"},{\\"name\\":\\"productCategory\\",\\"value\\":\\"apigateway\\"},{\\"name\\":\\"groupFlag\\",\\"value\\":\\"true\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Namespace>acs_apigateway_dashboard</Namespace>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>CDN</Description>\\r\\n\\t\\t\\t\\t<Labels>[{\\"name\\":\\"product\\",\\"value\\":\\"CDN\\"},{\\"name\\":\\"productCategory\\",\\"value\\":\\"cdn\\"},{\\"name\\":\\"groupFlag\\",\\"value\\":\\"true\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Namespace>acs_cdn</Namespace>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t<Description>云企业网</Description>\\r\\n\\t\\t\\t\\t<Labels>[{\\"name\\":\\"product\\",\\"value\\":\\"CEN\\"},{\\"name\\":\\"productCategory\\",\\"value\\":\\"cen,cen_flow,cen_vbr\\"},{\\"name\\":\\"groupFlag\\",\\"value\\":\\"true\\"}]</Labels>\\r\\n\\t\\t\\t\\t<Namespace>acs_cen</Namespace>\\r\\n\\t\\t\\t</Resource>\\r\\n\\t\\t</Resources>\\r\\n</DescribeProjectMeta>\\r\\n","errorExample":""}]',
+ 'title' => 'DescribeProjectMeta',
+ 'description' => 'The information obtained by this operation includes the service description, namespace, and tags.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteExporterOutput' => [
+ 'summary' => 'Deletes a configuration set that is used to export monitoring data.',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DestName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the configuration set.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testName',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '2DECF751-7AFA-43BB-8C63-2B6B07E51AE1',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* `true`'."\n"
+ .'* `false`'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success\\",\\n \\"RequestId\\": \\"2DECF751-7AFA-43BB-8C63-2B6B07E51AE1\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<Message>success</Message>\\n<RequestId>296AE90D-153C-4612-AF24-75D0F5921976</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>","errorExample":""}]',
+ 'title' => 'DeleteExporterOutput',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteExporterRule' => [
+ 'summary' => 'Deletes a data export rule.',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the data export rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'myRuleName',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '6A5F022D-AC7C-460E-94AE-B9E75083D023',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* `true`'."\n"
+ .'* `false`'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"6A5F022D-AC7C-460E-94AE-B9E75083D023\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<Message>success</Message>\\n<RequestId>8B524AE2-FBB1-4202-AA17-B3DEAAC8D861</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>","errorExample":""}]',
+ 'title' => 'DeleteExporterRule',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeExporterOutputList' => [
+ 'summary' => 'Queries configuration sets that are used to export monitoring data.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '10',
+ 'default' => '1000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Datapoints' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Datapoint' => [
+ 'description' => 'The configuration sets for exporting monitoring data.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ConfigJson' => [
+ 'description' => 'The JSON object that contains the details about the destination to which the monitoring data is exported.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ak' => [
+ 'description' => 'The AccessKey ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'LTAIpY33********',
+ ],
+ 'endpoint' => [
+ 'description' => 'The Log Service endpoint to which the monitoring data is exported.'."\n",
+ 'type' => 'string',
+ 'example' => 'http://cn-qingdao-share.log.aliyuncs.com',
+ ],
+ 'logstore' => [
+ 'description' => 'The Logstore.'."\n",
+ 'type' => 'string',
+ 'example' => 'monitorlogstore',
+ ],
+ 'project' => [
+ 'description' => 'The Log Service project to which the monitoring data is exported.'."\n",
+ 'type' => 'string',
+ 'example' => 'exporter',
+ ],
+ ],
+ ],
+ 'CreateTime' => [
+ 'description' => 'The time when the configuration set was created. The value is a UNIX timestamp.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1584016495498',
+ ],
+ 'DestName' => [
+ 'description' => 'The name of the configuration set.'."\n",
+ 'type' => 'string',
+ 'example' => 'exporterOut',
+ ],
+ 'DestType' => [
+ 'description' => 'The service to which the monitoring data is exported.'."\n"
+ ."\n"
+ .'> Only Log Service is supported. More services will be supported in the future.'."\n",
+ 'type' => 'string',
+ 'example' => 'SLS',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'sucess',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number of the returned page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '0E657631-CD6C-4C24-9637-98D000B9272C',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* `true`'."\n"
+ .'* `false`'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of returned entries.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '25',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0E657631-CD6C-4C24-9637-98D000B9272C\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"sucess\\",\\n \\"PageNumber\\": 1,\\n \\"Total\\": 25,\\n \\"Datapoints\\": {\\n \\"Datapoint\\": [\\n {\\n \\"DestType\\": \\"SLS\\",\\n \\"CreateTime\\": 1584016495498,\\n \\"DestName\\": \\"exporterOut\\",\\n \\"ConfigJson\\": {\\n \\"ak\\": \\"LTAIpY33********\\",\\n \\"endpoint\\": \\"http://cn-qingdao-share.log.aliyuncs.com\\",\\n \\"project\\": \\"exporter\\",\\n \\"logstore\\": \\"monitorlogstore\\",\\n \\"as\\": \\"TxHwuJ8yAb3AULcnny******\\"\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<RequestId>BB30C6D9-8D0D-442E-9484-C15BADE76A21</RequestId>\\n<PageNumber>1</PageNumber>\\n<Total>1</Total>\\n<Datapoints>\\n <Datapoint>\\n <DestType>SLS</DestType>\\n <DestName>desctName1</DestName>\\n <CreateTime>1584016495498</CreateTime>\\n <ConfigJson>\\n <endpoint>http://cn-qingdao-share.log.aliyuncs.com</endpoint>\\n <as>TxHwuJ8yAb3AULcnny******</as>\\n <project>exporter</project>\\n <ak>LTAIpY33********</ak>\\n <logstore>exporter</logstore>\\n </ConfigJson>\\n </Datapoint>\\n</Datapoints>\\n<Code>200</Code>\\n<Success>true</Success>","errorExample":""}]',
+ 'title' => 'DescribeExporterOutputList',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeExporterRuleList' => [
+ 'summary' => 'Queries data export rules.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 1000.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '1000',
+ 'default' => '1000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Datapoints' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Datapoint' => [
+ 'description' => 'The details of the data export rules.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CreateTime' => [
+ 'description' => 'The time when the rule was created. The value is a UNIX timestamp.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1584024616228',
+ ],
+ 'Describe' => [
+ 'description' => 'The description of the rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'Export monitoring data'."\n",
+ ],
+ 'Dimension' => [
+ 'description' => 'The associated dimensions.'."\n",
+ 'type' => 'string',
+ 'example' => '{"instanceId":"xxxxx"}',
+ ],
+ 'DstName' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DstName' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Indicates whether the call is successful. Valid values:'."\n"
+ ."\n"
+ .'* `true`: The call is successful.'."\n"
+ .'* `false`: The call fails.'."\n",
+ 'type' => 'string',
+ 'example' => 'exporter1',
+ ],
+ ],
+ ],
+ ],
+ 'Enabled' => [
+ 'description' => 'Indicates whether the rule is enabled.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'MetricName' => [
+ 'description' => 'The name of the metric.'."\n"
+ ."\n"
+ .'> For more information, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~28619~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the service.'."\n"
+ ."\n"
+ .'> For more information, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~28619~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the data export rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'myRuleName',
+ ],
+ 'TargetWindows' => [
+ 'description' => 'The time window of the exported data.\\'."\n"
+ .'Multiple windows are separated with commas (,).'."\n"
+ ."\n"
+ .'> Data in a time window of less than 60 seconds cannot be exported.'."\n",
+ 'type' => 'string',
+ 'example' => '60,300',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'susscess',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number of the returned page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '6BA047CA-8BC6-40BC-BC8F-FBECF35F1993',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* `true`'."\n"
+ .'* `false`'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of returned entries.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1000',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Datapoints\\": {\\n \\"Datapoint\\": [\\n {\\n \\"CreateTime\\": 1667526533000,\\n \\"Describe\\": \\"export test\\",\\n \\"Dimension\\": \\"hotsName\\",\\n \\"DstName\\": {\\n \\"DstName\\": [\\n \\"[]\\"\\n ]\\n },\\n \\"Enabled\\": true,\\n \\"MetricName\\": \\"CPUUtilization\\",\\n \\"Namespace\\": \\"acs_ecs_dashboard\\",\\n \\"RuleName\\": \\"L121-寿险-全能保建议书系统_DefaultEventRule_10842827\\",\\n \\"TargetWindows\\": \\"rule_test\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"6BA047CA-8BC6-40BC-BC8F-FBECF35F1993\\",\\n \\"Success\\": true,\\n \\"Total\\": 1000\\n}","type":"json"}]',
+ 'title' => 'DescribeExporterRuleList',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMetricTop' => [
+ 'summary' => 'Queries the latest monitoring data of a metric for a cloud service. The data can be sorted by a specified order.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period of the monitoring data.'."\n"
+ ."\n"
+ .'Valid values: 15, 60, 900, and 3600.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* If this parameter is not specified, monitoring data is queried based on the period in which metric values are reported.'."\n"
+ ."\n"
+ .'* Statistical periods vary based on the metrics that are specified by `MetricName`. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric that is used to monitor the cloud service.'."\n"
+ ."\n"
+ .'For more information about metric names, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cpu_idle',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start of the time range to query monitoring data.'."\n"
+ ."\n"
+ .'* If the `StartTime` and `EndTime` parameters are not specified, the monitoring data of the last statistical period is queried.``'."\n"
+ ."\n"
+ .'* If the `StartTime` and `EndTime` parameters are specified, the monitoring data of the last statistical period in the specified time range is queried.````'."\n"
+ ."\n"
+ .' * If you set the `Period` parameter to 15, the specified time range must be less than or equal to 20 minutes. For example, if you set the StartTime parameter to 2021-05-08 08:10:00 and the EndTime parameter to 2021-05-08 08:30:00, the monitoring data of the last 15 seconds in the time range is queried.'."\n"
+ .' * If you set the `Period` parameter to 60 or 900, the specified time range must be less than or equal to 2 hours. For example, if you set the Period parameter to 60, the StartTime parameter to 2021-05-08 08:00:00, and the EndTime parameter to 2021-05-08 10:00:00, the monitoring data of the last 60 seconds in the time range is queried.'."\n"
+ .' * If you set the `Period` parameter to 3600, the specified time range must be less than or equal to two days. For example, if you set the StartTime parameter to 2021-05-08 08:00:00 and the EndTime parameter to 2021-05-10 08:00:00, the monitoring data of the last 3,600 seconds in the time range is queried.'."\n"
+ ."\n"
+ .'The following formats are supported:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 Thursday, January 1, 1970'."\n"
+ .'* Time format: YYYY-MM-DDThh:mm:ssZ'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* You must set the `StartTime` parameter to a point in time that is later than 00:00:00 Thursday, January 1, 1970. Otherwise, this parameter is invalid.'."\n"
+ ."\n"
+ .'* We recommend that you use UNIX timestamps to prevent time zone-related issues.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2021-05-08 08:00:00',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query monitoring data.'."\n"
+ ."\n"
+ .'* If the `StartTime` and `EndTime` parameters are not specified, the monitoring data of the last statistical period is queried.``'."\n"
+ ."\n"
+ .'* If the `StartTime` and `EndTime` parameters are specified, the monitoring data of the last statistical period in the specified time range is queried.````'."\n"
+ ."\n"
+ .' * If you set the `Period` parameter to 15, the specified time range must be less than or equal to 20 minutes. For example, if you set the StartTime parameter to 2021-05-08 08:10:00 and the EndTime parameter to 2021-05-08 08:30:00, the monitoring data of the last 15 seconds in the time range is queried.'."\n"
+ .' * If you set the `Period` parameter to 60 or 900, the specified time range must be less than or equal to 2 hours. For example, if you set the Period parameter to 60, the StartTime parameter to 2021-05-08 08:00:00, and the EndTime parameter to 2021-05-08 10:00:00, the monitoring data of the last 60 seconds in the time range is queried.'."\n"
+ .' * If you set the `Period` parameter to 3600, the specified time range must be less than or equal to two days. For example, if you set the StartTime parameter to 2021-05-08 08:00:00 and the EndTime parameter to 2021-05-10 08:00:00, the monitoring data of the last 3,600 seconds in the time range is queried.'."\n"
+ ."\n"
+ .'The following formats are supported:'."\n"
+ ."\n"
+ .'* UNIX timestamp: the number of milliseconds that have elapsed since 00:00:00 Thursday, January 1, 1970'."\n"
+ .'* Time format: YYYY-MM-DDThh:mm:ssZ'."\n"
+ ."\n"
+ .'> We recommend that you use UNIX timestamps to prevent time zone-related issues.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2021-05-08 10:00:00',
+ ],
+ ],
+ [
+ 'name' => 'Dimensions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The monitoring dimensions of the specified resource.'."\n"
+ ."\n"
+ .'Set the value to a collection of `key:value` pairs. Example: `{"userId":"120886317861****"}` or `{"instanceId":"i-2ze2d6j5uhg20x47****"}`.'."\n"
+ ."\n"
+ .'> You can query a maximum of 50 instances in each request.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"instanceId": "i-abcdefgh12****"}]',
+ ],
+ ],
+ [
+ 'name' => 'Orderby',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The field based on which data is sorted. Valid values:'."\n"
+ ."\n"
+ .'* Average'."\n"
+ .'* Minimum'."\n"
+ .'* Maximum'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'OrderDesc',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The order in which data is sorted. Valid values:'."\n"
+ ."\n"
+ .'* True: sorts data in ascending order.'."\n"
+ .'* False (default): sorts data in descending order.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'False',
+ ],
+ ],
+ [
+ 'name' => 'Length',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Default value: 10.'."\n"
+ ."\n"
+ .'> The maximum value of the Length parameter in a request is 1440.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Express',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The expression that is used to compute the query results in real time.'."\n"
+ ."\n"
+ .'> Only the `groupby` expression is supported. This expression is similar to the GROUP BY statement used in databases.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"groupby":["userId","instanceId"]}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3121AE7D-4AFF-4C25-8F1D-C8226EBB1F42',
+ ],
+ 'Datapoints' => [
+ 'description' => 'The monitoring data.'."\n",
+ 'type' => 'string',
+ 'example' => '[{\\"order\\":1,\\"timestamp\\":1620287520000,\\"userId\\":\\"120886317861****\\",\\"instanceId\\":\\"i-j6ccf7d5fn335qpo****\\",\\"Average\\":99.92,\\"Minimum\\":99.5,\\"Maximum\\":100.0,\\"_count\\":1.0},{\\"order\\":2,\\"timestamp\\":1620287520000,\\"userId\\":\\"120886317861****\\",\\"instanceId\\":\\"i-0xii2bvf42iqvxbp****\\",\\"Average\\":99.91,\\"Minimum\\":99.0,\\"Maximum\\":100.0,\\"_count\\":1.0}]',
+ ],
+ 'Period' => [
+ 'description' => 'The statistical period of the monitoring data. Unit: seconds. Valid values: 15, 60, 900, and 3600.'."\n",
+ 'type' => 'string',
+ 'example' => '60',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"3121AE7D-4AFF-4C25-8F1D-C8226EBB1F42\\",\\n \\"Datapoints\\": \\"[{\\\\\\\\\\\\\\"order\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"timestamp\\\\\\\\\\\\\\":1620287520000,\\\\\\\\\\\\\\"userId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"120886317861****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"instanceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"i-j6ccf7d5fn335qpo****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Average\\\\\\\\\\\\\\":99.92,\\\\\\\\\\\\\\"Minimum\\\\\\\\\\\\\\":99.5,\\\\\\\\\\\\\\"Maximum\\\\\\\\\\\\\\":100.0,\\\\\\\\\\\\\\"_count\\\\\\\\\\\\\\":1.0},{\\\\\\\\\\\\\\"order\\\\\\\\\\\\\\":2,\\\\\\\\\\\\\\"timestamp\\\\\\\\\\\\\\":1620287520000,\\\\\\\\\\\\\\"userId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"120886317861****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"instanceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"i-0xii2bvf42iqvxbp****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Average\\\\\\\\\\\\\\":99.91,\\\\\\\\\\\\\\"Minimum\\\\\\\\\\\\\\":99.0,\\\\\\\\\\\\\\"Maximum\\\\\\\\\\\\\\":100.0,\\\\\\\\\\\\\\"_count\\\\\\\\\\\\\\":1.0}]\\",\\n \\"Period\\": \\"60\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricTopResponse>\\r\\n\\t<RequestId>18DC44ED-B058-49B0-9D49-1D6608328E4D</RequestId>\\r\\n\\t<Period>60</Period>\\r\\n\\t<Datapoints>[{\\\\\\"order\\\\\\":1,\\\\\\"timestamp\\\\\\":1620287520000,\\\\\\"userId\\\\\\":\\\\\\"120886317861****\\\\\\",\\\\\\"instanceId\\\\\\":\\\\\\"i-j6ccf7d5fn335qpo****\\\\\\",\\\\\\"Average\\\\\\":99.92,\\\\\\"Minimum\\\\\\":99.5,\\\\\\"Maximum\\\\\\":100.0,\\\\\\"_count\\\\\\":1.0},{\\\\\\"order\\\\\\":2,\\\\\\"timestamp\\\\\\":1620287520000,\\\\\\"userId\\\\\\":\\\\\\"120886317861****\\\\\\",\\\\\\"instanceId\\\\\\":\\\\\\"i-0xii2bvf42iqvxbp****\\\\\\",\\\\\\"Average\\\\\\":99.91,\\\\\\"Minimum\\\\\\":99.0,\\\\\\"Maximum\\\\\\":100.0,\\\\\\"_count\\\\\\":1.0}]</Datapoints>\\r\\n\\t<Code>200</Code>\\r\\n</DescribeMetricTopResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeMetricTop',
+ 'description' => '### [](#)Limits'."\n"
+ ."\n"
+ .'* The total free quota is 1 million calls per month for the DescribeMetricLast, DescribeMetricList, DescribeMetricData, and DescribeMetricTop operations. If the free quota is used up and CloudMonitor Basic (pay-as-you-go) is not activated, these API operations can no longer be called as expected. If you have activated CloudMonitor Basic (pay-as-you-go), these API operations can still be called even if the free quota is used up. After the free quota is used up, you are charged for the excess usage based on the pay-as-you-go billing method. For more information about how to activate CloudMonitor Basic (pay-as-you-go), see [Enable the pay-as-you-go billing method](https://common-buy.aliyun.com/?spm=a2c4g.11186623.0.0.6c8f3481IbSHgG\\&commodityCode=cms_basic_public_cn\\&from_biz_channel=help_bill).'."\n"
+ .'* Each API operation can be called up to 10 times per second. An Alibaba Cloud account and the Resource Access Management (RAM) users within the account share the quota.'."\n"
+ ."\n"
+ .'### [](#)Precautions'."\n"
+ ."\n"
+ .'The storage duration of the monitoring data of each cloud service is related to the `Period` parameter (statistical period). A larger value of the `Period` parameter indicates that the monitoring data is distributed in a larger time range and the storage duration of the monitoring data is longer. The following list describes the specific relationships:'."\n"
+ ."\n"
+ .'* The storage duration is 7 days if the value of the `Period` parameter is less than 60 seconds.'."\n"
+ .'* The storage duration is 31 days if the value of the `Period` parameter is 60 seconds.'."\n"
+ .'* The storage duration is 91 days if the value of the `Period` is greater than or equal to 300 seconds.'."\n"
+ ."\n"
+ .'### [](#)Operation description'."\n"
+ ."\n"
+ .'This topic provides an example on how to query the monitoring data of the `cpu_idle` metric in the last 60 seconds for Elastic Compute Service (ECS). The namespace of ECS is `acs_ecs_dashboard`. The monitoring data is sorted in descending order based on the `Average` field.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutExporterOutput' => [
+ 'summary' => 'Creates or modifies a configuration set for exporting monitoring data.',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DestName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the configuration set.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'exporterConfig',
+ ],
+ ],
+ [
+ 'name' => 'ConfigJson',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The configuration set for exporting monitoring data. It is a JSON object string. The string must include the following fields:'."\n"
+ ."\n"
+ .'* endpoint: the endpoint of Log Service.'."\n"
+ .'* project: the Log Service project to which monitoring data is exported.'."\n"
+ .'* logstore: the Log Service Logstore to which the monitoring data is exported.'."\n"
+ .'* ak: the AccessKey ID.'."\n"
+ .'* as: the AccessKey secret.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '{ "endpoint": "http://cn-qingdao-share.log.aliyuncs.com", "project": "exporter", "logstore": "exporter","ak": "LTAIp*******", "userId": "17754********", "as": "TxHwuJ8yAb3AU******"}',
+ ],
+ ],
+ [
+ 'name' => 'Desc',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the configuration set.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'Export CPU metrics'."\n",
+ ],
+ ],
+ [
+ 'name' => 'DestType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The service to which the monitoring data is exported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'sls',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '6A5F022D-AC7C-460E-94AE-B9E75083D027',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. true: The request was successful. false: The request failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"6A5F022D-AC7C-460E-94AE-B9E75083D027\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<PutExporterOutput>\\n\\t\\t<RequestId>E5DC60DD-2FDE-488F-942C-424FA3E18BF8</RequestId>\\n\\t\\t<Code>200</Code>\\n\\t\\t<Success>true</Success>\\n</PutExporterOutput>","errorExample":""}]',
+ 'title' => 'PutExporterOutput',
+ 'description' => '> The monitoring data can be exported only to Log Service. More services will be supported in the future.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutExporterRule' => [
+ 'summary' => 'Creates or modifies a data export rule.',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the rule.'."\n"
+ ."\n"
+ .'> If the specified rule exists, the existing rule is modified. Otherwise, a rule is created.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'MyRuleName',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'> For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the metric.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'TargetWindows',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The time window of the exported data. Unit: seconds.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* Separate multiple time windows with commas (,).'."\n"
+ ."\n"
+ .'* Data in a time window of less than 60 seconds cannot be exported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => '60,300',
+ ],
+ ],
+ [
+ 'name' => 'Describe',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the data export rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'Export CPU metrics'."\n",
+ ],
+ ],
+ [
+ 'name' => 'DstNames',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The destination to which the data is exported. Valid values of N: 1 to 20.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ ],
+ 'required' => true,
+ 'example' => 'distName1',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'PutExporterRule',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeAlertHistoryList' => [
+ 'summary' => 'Queries historical alerts.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => true,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'applyTemplate61dc81b5-d357-4cf6-a9b7-9f83c1d5****',
+ ],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n"
+ ."\n"
+ .'For information about how to query the name of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Rule',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For information about how to query the namespace of a cloud service, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric that is used to monitor the cloud service.'."\n"
+ ."\n"
+ .'For information about how to query the name of a metric, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7671****',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether alerts are muted. Valid values:'."\n"
+ ."\n"
+ .'* 2 (default value): Alerts are muted and are not triggered within the mute period, even if the condition specified in the alert rule is met.'."\n"
+ .'* 0: Alerts are triggered or cleared.'."\n"
+ .'* 1: The alert rule is ineffective.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'State',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of the alert. Valid values:'."\n"
+ ."\n"
+ .'* ALARM (default value): Alerts are triggered.'."\n"
+ .'* OK: No alerts are triggered.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ALARM',
+ ],
+ ],
+ [
+ 'name' => 'Ascending',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The order of alerts. Valid values:'."\n"
+ ."\n"
+ .'* true (default value): reverse chronological order'."\n"
+ .'* false: chronological order'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start timestamp of the historical alerts that you want to query.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1640237400000',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end timestamp of the historical alerts that you want to query.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1640608200000',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries to return on each page.'."\n"
+ ."\n"
+ .'Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Page',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of the page to return.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'C3C69FBE-2262-541F-A409-C52F380BAE63',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AlarmHistoryList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'AlarmHistory' => [
+ 'description' => 'The details of historical alerts.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => 'Indicates whether alerts are muted. Valid values:'."\n"
+ ."\n"
+ .'* 2 (default): Alerts are muted and are not triggered within the mute period, even if the condition specified in the alert rule is met.'."\n"
+ .'* 0: Alerts are triggered or cleared.'."\n"
+ .'* 1: The alert rule is ineffective.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'EvaluationCount' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'State' => [
+ 'description' => 'The alert status. Valid values:'."\n"
+ ."\n"
+ .'* ALARM: Alerts are triggered.'."\n"
+ .'* OK: No alerts are triggered.'."\n",
+ 'type' => 'string',
+ 'example' => 'ALARM',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'Webhooks' => [
+ 'description' => 'The callback URL.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://www.aliyun.com',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Rule',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'applyTemplate61dc81b5-d357-4cf6-a9b7-9f83c1d5****',
+ ],
+ 'LastTime' => [
+ 'description' => 'The duration of the alert. Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '360133',
+ ],
+ 'Value' => [
+ 'description' => 'The threshold of the metric value to trigger or clear an alert.'."\n",
+ 'type' => 'string',
+ 'example' => '10.58',
+ ],
+ 'Expression' => [
+ 'description' => 'The expression that is used to trigger alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '$Average>=10',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '7671****',
+ ],
+ 'AlertTime' => [
+ 'description' => 'The timestamp when the alert was triggered. Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1640586600000',
+ ],
+ 'InstanceName' => [
+ 'description' => 'The instance name.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-bp1cqhiw1za2****',
+ ],
+ 'Dimensions' => [
+ 'description' => 'The resources that are monitored.'."\n",
+ 'type' => 'string',
+ 'example' => '{\\"instanceId\\":\\"i-bp1cqhiw1za2****\\"}',
+ ],
+ 'Level' => [
+ 'description' => 'The severity level and notification methods of the alert. Valid values:'."\n"
+ ."\n"
+ .'* P4: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* OK: No alert is generated.'."\n",
+ 'type' => 'string',
+ 'example' => 'P4',
+ ],
+ 'Contacts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Contact' => [
+ 'description' => 'The alert contacts that receive alert notifications.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert contact that receives alert notifications.'."\n",
+ 'type' => 'string',
+ 'example' => 'Alice',
+ ],
+ ],
+ ],
+ ],
+ 'ContactALIIMs' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactALIIM' => [
+ 'description' => 'The TradeManager IDs of the alert contacts.'."\n"
+ ."\n"
+ .'> This parameter is valid only on the China site (aliyun.com).'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The TradeManager ID of the alert contact.'."\n"
+ ."\n"
+ .'> This parameter is valid only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '[email protected]',
+ ],
+ ],
+ ],
+ ],
+ 'ContactMails' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactMail' => [
+ 'description' => 'The email addresses of the alert contacts.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The email address of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => '[email protected]',
+ ],
+ ],
+ ],
+ ],
+ 'ContactSmses' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactSms' => [
+ 'description' => 'The mobile numbers of the alert contacts.'."\n"
+ ."\n"
+ .'> This parameter is valid only on the China site (aliyun.com).'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The mobile number of the alert contact.'."\n"
+ ."\n"
+ .'> This parameter is valid only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '13900009999',
+ ],
+ ],
+ ],
+ ],
+ 'ContactGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactGroup' => [
+ 'description' => 'The alert contact groups.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert contact group.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 204 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError ',
+ 'errorMessage' => 'The request processing has failed due to some unknown error. ',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'substitutions' => [
+ 'Cms::2019-01-01::DescribeAlertLogList',
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"C3C69FBE-2262-541F-A409-C52F380BAE63\\",\\n \\"Total\\": \\"2\\",\\n \\"Success\\": true,\\n \\"AlarmHistoryList\\": {\\n \\"AlarmHistory\\": [\\n {\\n \\"Status\\": 2,\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"EvaluationCount\\": 3,\\n \\"State\\": \\"ALARM\\",\\n \\"Namespace\\": \\"acs_ecs_dashboard\\",\\n \\"Webhooks\\": \\"https://www.aliyun.com\\",\\n \\"RuleName\\": \\"ECS_Rule\\",\\n \\"RuleId\\": \\"applyTemplate61dc81b5-d357-4cf6-a9b7-9f83c1d5****\\",\\n \\"LastTime\\": 360133,\\n \\"Value\\": \\"10.58\\",\\n \\"Expression\\": \\"$Average>=10\\",\\n \\"GroupId\\": \\"7671****\\",\\n \\"AlertTime\\": 1640586600000,\\n \\"InstanceName\\": \\"i-bp1cqhiw1za2****\\",\\n \\"Dimensions\\": \\"{\\\\\\\\\\\\\\"instanceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"i-bp1cqhiw1za2****\\\\\\\\\\\\\\"}\\",\\n \\"Level\\": \\"P4\\",\\n \\"Contacts\\": {\\n \\"Contact\\": [\\n \\"Alice\\"\\n ]\\n },\\n \\"ContactALIIMs\\": {\\n \\"ContactALIIM\\": [\\n \\"[email protected]\\"\\n ]\\n },\\n \\"ContactMails\\": {\\n \\"ContactMail\\": [\\n \\"[email protected]\\"\\n ]\\n },\\n \\"ContactSmses\\": {\\n \\"ContactSms\\": [\\n \\"13900009999\\"\\n ]\\n },\\n \\"ContactGroups\\": {\\n \\"ContactGroup\\": [\\n \\"ECS_Group\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeAlertHistoryListResponse>\\r\\n\\t<AlarmHistoryList>\\r\\n\\t\\t<AlarmHistory>\\r\\n\\t\\t\\t<Status>2</Status>\\r\\n\\t\\t\\t<ContactGroups>\\r\\n\\t\\t\\t\\t<ContactGroup>ECS_Group</ContactGroup>\\r\\n\\t\\t\\t</ContactGroups>\\r\\n\\t\\t\\t<RuleId>applyTemplate61dc81b5-d357-4cf6-a9b7-9f83c1d5****</RuleId>\\r\\n\\t\\t\\t<Dimensions>{\\\\\\"instanceId\\\\\\":\\\\\\"i-bp1cqhiw1za2****\\\\\\"}</Dimensions>\\r\\n\\t\\t\\t<EvaluationCount>3</EvaluationCount>\\r\\n\\t\\t\\t<ContactMails></ContactMails>\\r\\n\\t\\t\\t<ContactSmses></ContactSmses>\\r\\n\\t\\t\\t<Namespace>acs_ecs_dashboard</Namespace>\\r\\n\\t\\t\\t<AlertTime>1640586600000</AlertTime>\\r\\n\\t\\t\\t<GroupId>7671****</GroupId>\\r\\n\\t\\t\\t<InstanceName>i-bp1cqhiw1za2****</InstanceName>\\r\\n\\t\\t\\t<MetricName>cpu_total</MetricName>\\r\\n\\t\\t\\t<Contacts></Contacts>\\r\\n\\t\\t\\t<Expression>$Average>=10</Expression>\\r\\n\\t\\t\\t<State>ALARM</State>\\r\\n\\t\\t\\t<Value>10.58</Value>\\r\\n\\t\\t\\t<Level>P4</Level>\\r\\n\\t\\t\\t<PreLevel>P4</PreLevel>\\r\\n\\t\\t\\t<LastTime>360133</LastTime>\\r\\n\\t\\t\\t<RuleName>ECS_Rule</RuleName>\\r\\n\\t\\t\\t<ContactALIIMs></ContactALIIMs>\\r\\n\\t\\t</AlarmHistory>\\r\\n\\t\\t<AlarmHistory>\\r\\n\\t\\t\\t<Status>0</Status>\\r\\n\\t\\t\\t<ContactGroups>\\r\\n\\t\\t\\t\\t<ContactGroup>ECS_Group</ContactGroup>\\r\\n\\t\\t\\t</ContactGroups>\\r\\n\\t\\t\\t<RuleId>applyTemplate61dc81b5-d357-4cf6-a9b7-9f83****</RuleId>\\r\\n\\t\\t\\t<Dimensions>{\\\\\\"instanceId\\\\\\":\\\\\\"i-bp1cqhiw1za2807s****\\\\\\"}</Dimensions>\\r\\n\\t\\t\\t<EvaluationCount>3</EvaluationCount>\\r\\n\\t\\t\\t<ContactMails></ContactMails>\\r\\n\\t\\t\\t<ContactSmses></ContactSmses>\\r\\n\\t\\t\\t<Namespace>acs_ecs_dashboard</Namespace>\\r\\n\\t\\t\\t<AlertTime>1640586540000</AlertTime>\\r\\n\\t\\t\\t<GroupId>7671****</GroupId>\\r\\n\\t\\t\\t<InstanceName>i-bp1cqhiw1za2807s****</InstanceName>\\r\\n\\t\\t\\t<MetricName>cpu_total</MetricName>\\r\\n\\t\\t\\t<Contacts></Contacts>\\r\\n\\t\\t\\t<Expression>$Average>=10</Expression>\\r\\n\\t\\t\\t<State>ALARM</State>\\r\\n\\t\\t\\t<Value>10.13</Value>\\r\\n\\t\\t\\t<Level>P4</Level>\\r\\n\\t\\t\\t<LastTime>300085</LastTime>\\r\\n\\t\\t\\t<RuleName>ECS_Rule</RuleName>\\r\\n\\t\\t\\t<ContactALIIMs>\\r\\n\\t\\t\\t\\t<ContactALIIM>\\\\\\"[email protected]\\\\\\"</ContactALIIM>\\r\\n\\t\\t\\t</ContactALIIMs>\\r\\n\\t\\t</AlarmHistory>\\r\\n\\t</AlarmHistoryList>\\r\\n\\t<RequestId>C3C69FBE-2262-541F-A409-C52F380BAE63</RequestId>\\r\\n\\t<Total>2</Total>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeAlertHistoryListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeAlertHistoryList',
+ 'description' => 'This API operation is no longer maintained. We recommend that you call the [DescribeAlertLogList](~~201087~~) operation.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeAlertLogCount' => [
+ 'summary' => 'Queries the statistics of alert logs.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start timestamp of the alert logs to be queried.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n"
+ ."\n"
+ .'You can query only the alert logs within the last year. If the query time is longer than one year, the return value of the `AlertLogCount` parameter is empty.'."\n"
+ ."\n"
+ .'> The interval between the start time (StartTime) and end time (EndTime) must be less than or equal to 15 days. The start time and end time must be specified or left empty at the same time. If you do not specify the start time and end time, the alert logs within the last 15 minutes are queried by default.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1609988009694',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end timestamp of the alert logs to be queried.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n"
+ ."\n"
+ .'You can query only the alert logs within the last year. If the query time is longer than one year, the return value of the `AlertLogCount` parameter is empty.'."\n"
+ ."\n"
+ .'> The interval between the start time (StartTime) and end time (EndTime) must be less than or equal to 15 days. The start time and end time must be specified or left empty at the same time. If you do not specify the start time and end time, the alert logs within the last 15 minutes are queried by default.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1610074409694',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The dimension based on which data is aggregated. This parameter is equivalent to the GROUP BY clause in SQL. Valid values:'."\n"
+ ."\n"
+ .'* `product`: aggregates data by cloud service.'."\n"
+ .'* `level`: aggregates data by alert level.'."\n"
+ .'* `groupId`: aggregates data by application group.'."\n"
+ .'* `contactGroup`: aggregates data by alert contact group.'."\n"
+ .'* `product,metricName`: aggregates data both by cloud service and by metric.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries to return on each page. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'SearchKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword based on which the alert logs to be counted are searched.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'> For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7301****',
+ ],
+ ],
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the service name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The level and notification method of the alert. Valid values:'."\n"
+ ."\n"
+ .'* P4: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* OK: No alert is generated.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'P4',
+ ],
+ ],
+ [
+ 'name' => 'SendStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of the alert. Valid values:'."\n"
+ ."\n"
+ .'* 0: The alert is triggered or cleared.'."\n"
+ .'* 1: The alert is generated not during the effective period.'."\n"
+ .'* 2: The alert is muted and not triggered in a specified period.'."\n"
+ .'* 3: The host is restarting.'."\n"
+ .'* 4: Notifications are not sent for the alert.'."\n"
+ ."\n"
+ .'When the value of the SendStatus parameter is 0, the value P4 of the Level parameter indicates a triggered alert and the value OK indicates a cleared alert.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test123',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the metric.'."\n"
+ ."\n"
+ .'> For more information about the metrics of different cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'LastMin',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period of alert logs. Unit: minutes.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '360',
+ ],
+ ],
+ [
+ 'name' => 'GroupBy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The dimension based on which data is aggregated. This parameter is similar to the Group By clause of SQL statements. Valid values:'."\n"
+ ."\n"
+ .'* `product`: aggregates data by cloud service.'."\n"
+ .'* `level`: aggregates data by alert level.'."\n"
+ .'* `groupId`: aggregates data by application group.'."\n"
+ .'* `contactGroup`: aggregates data by alert group.'."\n"
+ .'* `product,metricName`: aggregates data both by cloud service and by metric.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'product',
+ ],
+ ],
+ [
+ 'name' => 'SourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'This parameter is deprecated.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'None'."\n",
+ ],
+ ],
+ [
+ 'name' => 'EventType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the alert event. Valid values:'."\n"
+ ."\n"
+ .'* TRIGGERED: The alert is triggered.'."\n"
+ .'* RESOLVED: The alert is resolved.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TRIGGERED',
+ ],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'For more information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'bfae2ca5b4e07d2c7278772e***********',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '1C4A3709-BF52-42EE-87B5-7435F0929585',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AlertLogCount' => [
+ 'description' => 'The statistics of alert logs.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Count' => [
+ 'description' => 'The number of alert logs.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Logs' => [
+ 'description' => 'The details about alert logs.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => 'The name of the dimension field based on which alert logs are aggregated.'."\n",
+ 'type' => 'string',
+ 'example' => 'product',
+ ],
+ 'Value' => [
+ 'description' => 'The value of the dimension field based on which alert logs are aggregated.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Parameter invalid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"1C4A3709-BF52-42EE-87B5-7435F0929585\\",\\n \\"Success\\": true,\\n \\"AlertLogCount\\": [\\n {\\n \\"Count\\": 1,\\n \\"Logs\\": [\\n {\\n \\"Name\\": \\"product\\",\\n \\"Value\\": \\"ECS\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeAlertLogCountResponse>\\r\\n\\t<RequestId>0BA67F6D-B699-4E3F-B205-93A5C38A0A2E</RequestId>\\r\\n\\t<AlertLogCount>\\r\\n\\t\\t<Count>1</Count>\\r\\n\\t\\t<Logs>\\r\\n\\t\\t\\t<Value>ECS</Value>\\r\\n\\t\\t\\t<Name>product</Name>\\r\\n\\t\\t</Logs>\\r\\n\\t</AlertLogCount>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeAlertLogCountResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeAlertLogCount',
+ 'description' => 'Queries the statistics of alert logs.'."\n"
+ ."\n"
+ .'This topic provides an example on how to query the statistics of alert logs for Elastic Compute Service (ECS) based on the `product` dimension.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeAlertLogList' => [
+ 'summary' => 'Queries alert logs.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start timestamp of the alert logs to be queried.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n"
+ ."\n"
+ .'You can query only the alert logs within the last year. If the query time is longer than one year, the return value of the `AlertLogList` parameter is empty.'."\n"
+ ."\n"
+ .'> The time period between the start time specified by `StartTime` and the end time specified by `EndTime` must be less than or equal to 15 days. You must specify StartTime and EndTime at the same time, or leave StartTime and EndTime empty at the same time. If you do not specify this parameter, the alert logs within the last 15 minutes are queried by default.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1609988009694',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end timestamp of the alert logs to be queried.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n"
+ ."\n"
+ .'You can query only the alert logs within the last year. If the query time is longer than one year, the return value of the `AlertLogList` parameter is empty.'."\n"
+ ."\n"
+ .'> The time period between the start time specified by `StartTime` and end time specified by `EndTime` must be less than or equal to 15 days. You must specify StartTime and EndTime at the same time, or leave StartTime and EndTime empty at the same time. If you do not specify this parameter, the alert logs within the last 15 minutes are queried by default.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1610074409694',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'SearchKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The search keyword that is used to query alert logs.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'alert',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7301****',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'> For information about how to query the namespace of a cloud service, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the service name.'."\n"
+ ."\n"
+ .'For information about how to obtain the abbreviation of a cloud service name, see [DescribeProductsOfActiveMetricRule](~~114930~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The severity level and notification methods of the alert. Valid values:'."\n"
+ ."\n"
+ .'* P4: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* OK: No alert is generated.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'P4',
+ ],
+ ],
+ [
+ 'name' => 'SendStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of the alert. Valid values:'."\n"
+ ."\n"
+ .'* 0: The alert is triggered or cleared.'."\n"
+ .'* 1: The alert is ineffective.'."\n"
+ .'* 2: The alert is muted.'."\n"
+ .'* 3: The host is restarting.'."\n"
+ .'* 4: No alert notification is sent.'."\n"
+ ."\n"
+ .'If the value of the SendStatus parameter is 0, the value P4 of the Level parameter indicates a triggered alert and the value OK indicates a cleared alert.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert contact group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test123',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'> For more information about the metrics of different cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'IntranetInRate',
+ ],
+ ],
+ [
+ 'name' => 'LastMin',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period of alert logs. Unit: minutes.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '360',
+ ],
+ ],
+ [
+ 'name' => 'GroupBy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The dimensions based on which data is aggregated. This parameter is equivalent to the GROUP BY clause in SQL. Valid values:'."\n"
+ ."\n"
+ .'* `product`: aggregates data by cloud service.'."\n"
+ .'* `level`: aggregates data by alert level.'."\n"
+ .'* `groupId`: aggregates data by application group.'."\n"
+ .'* `contactGroup`: aggregates data by alert contact group.'."\n"
+ .'* `product,metricName`: aggregates data both by cloud service and by metric.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'product',
+ ],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'bc369e8_30f87e517ed2fc****',
+ ],
+ ],
+ [
+ 'name' => 'SourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the alert rule. Valid value: METRIC. This value indicates an alert rule for time series metrics.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'METRIC',
+ ],
+ ],
+ [
+ 'name' => 'EventType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the alert event. Valid values:'."\n"
+ ."\n"
+ .'* TRIGGERED: The alert is triggered.'."\n"
+ .'* RESOLVED: The alert is resolved.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TRIGGERED',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '1C4A3709-BF52-42EE-87B5-7435F0929585',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'AlertLogList' => [
+ 'description' => 'The queried alert logs.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'EventName' => [
+ 'description' => 'The event name.'."\n",
+ 'type' => 'string',
+ 'example' => 'IOHang',
+ ],
+ 'Product' => [
+ 'description' => 'The identifier of the cloud service. Valid values:'."\n"
+ ."\n"
+ .'* If the cloud service is provided by Alibaba Cloud, the abbreviation of the service name is returned. Example: ECS.'."\n"
+ .'* If the cloud service is not provided by Alibaba Cloud, a value in the `acs_Service keyword` format is returned. Example: acs_networkmonitor.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS',
+ ],
+ 'BlackListUUID' => [
+ 'description' => 'The ID of the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'example' => '8410dbbd-7d30-41c5-94cb-*****',
+ ],
+ 'Message' => [
+ 'description' => 'The alert information in a JSON string.'."\n",
+ 'type' => 'string',
+ 'example' => '{"alertName":"e47aa0ac-4076-44db-a47d-d1083968****_Availability"}',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'LevelChange' => [
+ 'description' => 'Indicates whether the alert level was changed. Valid values:'."\n"
+ ."\n"
+ .'* `P4->OK`: The alert level was changed from P4 to OK.'."\n"
+ .'* `P4->P4`: The alert level was still P4.'."\n",
+ 'type' => 'string',
+ 'example' => 'P4->OK',
+ ],
+ 'InstanceId' => [
+ 'description' => 'The resource ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-m5e1qg6uo38rztr4****',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'd582b9e9-b1c1-4f17-9279-0fe7333a****_ResponseTime',
+ ],
+ 'BlackListName' => [
+ 'description' => 'The name of the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'example' => '{"id":123,"metricProject":"acs_ecs_dashboard","userId":1736511134389110,"uuid":"8410dbbd-7d30-41c5-94cb-***","name":"alert-***","productCategory":"ecs","instances":[{"instanceId":"host-***"}],"metrics":null,"scopeType":"USER","scopeValue":"","startTime":"0001-01-01T00:00:00Z","endTime":"9999-12-31T23:59:59.999999999+08:00","effectiveTime":null,"isEnable":true,"status":1,"gmtCreate":"2021-11-02T16:35:59+08:00","gmtModified":"2021-11-02T16:35:59+08:00","loadTime":"2021-11-02T16:36:15.213072177+08:00"}',
+ ],
+ 'GroupName' => [
+ 'description' => 'The name of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Instances',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '7301****',
+ ],
+ 'AlertTime' => [
+ 'description' => 'The timestamp that was generated when the alert was triggered.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1610043776621',
+ ],
+ 'InstanceName' => [
+ 'description' => 'The resource name.'."\n",
+ 'type' => 'string',
+ 'example' => 'portalHost',
+ ],
+ 'BlackListDetail' => [
+ 'description' => 'The details of the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'example' => 'BlackListDetail',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level and the methods that are used to send alert notifications. Valid values:'."\n"
+ ."\n"
+ .'* P4: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* OK: No alert is generated.'."\n",
+ 'type' => 'string',
+ 'example' => 'P4',
+ ],
+ 'SendStatus' => [
+ 'description' => 'The status of the alert. Valid values:'."\n"
+ ."\n"
+ .'* 0: The alert is triggered or cleared.'."\n"
+ .'* 1: The alert is ineffective.'."\n"
+ .'* 2: The alert is muted.'."\n"
+ .'* 3: The host is restarting.'."\n"
+ .'* 4: No alert notification is sent.'."\n"
+ ."\n"
+ .'If the value of the SendStatus parameter is 0, the value P4 of the Level parameter indicates a triggered alert and the value OK indicates a cleared alert.'."\n",
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ 'ExtendedInfo' => [
+ 'description' => 'The extended fields.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => 'The name of the extended field.'."\n",
+ 'type' => 'string',
+ 'example' => 'userId',
+ ],
+ 'Value' => [
+ 'description' => 'The value of the extended field.'."\n",
+ 'type' => 'string',
+ 'example' => '120886317861****',
+ ],
+ ],
+ ],
+ ],
+ 'Dimensions' => [
+ 'description' => 'The dimensions of the resource that triggered alerts.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The key of the dimension.'."\n",
+ 'type' => 'string',
+ 'example' => 'instanceId',
+ ],
+ 'Value' => [
+ 'description' => 'The value of the dimension.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-m5e1qg6uo38rztr4****',
+ ],
+ ],
+ ],
+ ],
+ 'WebhookList' => [
+ 'description' => 'The callback URLs.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'code' => [
+ 'description' => 'The status code of the alert callback.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'url' => [
+ 'description' => 'The callback URL.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://www.aliyun.com/webhook.html',
+ ],
+ 'message' => [
+ 'description' => 'The message returned for the alert callback.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ ],
+ ],
+ ],
+ 'DingdingWebhookList' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The webhook URL of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=b7ff24032da1a5f86659ecda46797e13cc1d4e4da6903d7b014ea1d1488b****',
+ ],
+ 'description' => '',
+ ],
+ 'ContactOnCallList' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The phone number of the alert contact that receives alert phone calls.'."\n"
+ ."\n"
+ .'> This parameter applies only to the Alibaba Cloud China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '1368888****',
+ ],
+ 'description' => '',
+ ],
+ 'ContactMailList' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The email address of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => '[email protected]',
+ ],
+ 'description' => '',
+ ],
+ 'ContactGroups' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert contact group.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Group',
+ ],
+ 'description' => '',
+ ],
+ 'ContactALIIWWList' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The TradeManager ID of the alert contact.'."\n"
+ ."\n"
+ .'> This parameter applies only to the Alibaba Cloud China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => 'Alice',
+ ],
+ 'description' => '',
+ ],
+ 'ContactSMSList' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The phone number of the alert contact that receives alert text messages.'."\n"
+ ."\n"
+ .'> This parameter applies only to the Alibaba Cloud China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '1368888****',
+ ],
+ 'description' => '',
+ ],
+ 'ContactDingList' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The DingTalk chatbot of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => 'CloudMonitor',
+ ],
+ 'description' => '',
+ ],
+ 'SendDetail' => [
+ 'description' => 'The details about the sending results of alert notifications.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ResultCode' => [
+ 'description' => 'Indicates whether the alert notifications are sent.'."\n"
+ ."\n"
+ .'* If the alert notifications are sent, the value "success" is returned.'."\n"
+ .'* If the configuration is invalid, no alert notification is sent and an error code is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'ChannelResultList' => [
+ 'description' => 'The list of sending results that are categorized by notification method.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Channel' => [
+ 'description' => 'The method that is used to send alert notifications. Valid values:'."\n"
+ ."\n"
+ .'* MAIL: email'."\n"
+ .'* SMS: text message'."\n"
+ .'* WEBHOOK: alert callback'."\n"
+ .'* SLS: Simple Log Service'."\n"
+ .'* ONCALL: phone call'."\n"
+ .'* FC: Function Compute'."\n"
+ .'* MNS: Message Service queue'."\n",
+ 'type' => 'string',
+ 'example' => 'MAIL',
+ ],
+ 'ResultList' => [
+ 'description' => 'The sending results of alert notifications.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'* If the value of the `Channel` parameter is `WEBHOOK`, the status code is 200 or 500.'."\n"
+ .'* If the value of the `Channel` parameter is `MAIL`, `SMS`, `SLS`, `ONCALL`, `FC`, or `MNS`, this parameter is empty or not returned.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID returned when CloudMonitor calls another cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => '0BDAF8A8-04DC-5F0C-90E4-724D42C4****',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Detail' => [
+ 'description' => 'The details of the returned results.'."\n",
+ 'type' => 'string',
+ 'example' => '{ }',
+ ],
+ 'notifyTargetList' => [
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of notification methods.'."\n",
+ 'type' => 'string',
+ 'example' => '1270676********',
+ ],
+ 'description' => '',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ 'Escalation' => [
+ 'description' => 'The alert rule based on which the alert is triggered.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Expression' => [
+ 'description' => 'The description of the alert rule.'."\n"
+ ."\n"
+ .'> The content of the alert rule. This parameter indicates the conditions that trigger an alert.'."\n",
+ 'type' => 'string',
+ 'example' => '$Average<90',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level and the methods that are used to send alert notifications. Valid values:'."\n"
+ ."\n"
+ .'* P4: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* OK: No alert is generated.'."\n",
+ 'type' => 'string',
+ 'example' => 'P4',
+ ],
+ ],
+ ],
+ 'SendResultList' => [
+ 'description' => 'The sending results of alert notifications.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The category of the alert notification method. Valid values:'."\n"
+ ."\n"
+ .'* MAIL: email'."\n"
+ .'* ALIIM: TradeManager'."\n"
+ .'* SMS: text message'."\n"
+ .'* CALL: phone call'."\n"
+ .'* DING: DingTalk chatbot'."\n"
+ .'* Merged: alert merging'."\n",
+ 'type' => 'string',
+ 'example' => 'Mail',
+ ],
+ 'Value' => [
+ 'description' => 'The notification object corresponding to the alert notification method.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The notification object corresponding to the alert notification method.'."\n",
+ 'type' => 'string',
+ 'example' => '[email protected]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'LogId' => [
+ 'description' => 'The log ID.'."\n",
+ 'type' => 'string',
+ 'example' => '7818361[1523]@1671593992[1]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Parameter invalid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1C4A3709-BF52-42EE-87B5-7435F0929585\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"AlertLogList\\": [\\n {\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"EventName\\": \\"IOHang\\",\\n \\"Product\\": \\"ECS\\",\\n \\"BlackListUUID\\": \\"8410dbbd-7d30-41c5-94cb-****\\",\\n \\"Message\\": \\"{\\\\\\"alertName\\\\\\":\\\\\\"e47aa0ac-4076-44db-a47d-d1083968****_Availability\\\\\\"}\\",\\n \\"Namespace\\": \\"acs_ecs_dashboard\\",\\n \\"LevelChange\\": \\"P4->OK\\",\\n \\"InstanceId\\": \\"i-m5e1qg6uo38rztr4****\\",\\n \\"RuleName\\": \\"CPU使用率\\",\\n \\"RuleId\\": \\"d582b9e9-b1c1-4f17-9279-0fe7333a****_ResponseTime\\",\\n \\"BlackListName\\": \\"Black_Test\\",\\n \\"GroupName\\": \\"ECS_Instances\\",\\n \\"GroupId\\": \\"7301****\\",\\n \\"AlertTime\\": \\"1610043776621\\",\\n \\"InstanceName\\": \\"portalHost\\",\\n \\"BlackListDetail\\": \\"{\\\\\\"id\\\\\\":12****,\\\\\\"metricProject\\\\\\":\\\\\\"acs_ecs_dashboard\\\\\\",\\\\\\"userId\\\\\\":173651113438****,\\\\\\"uuid\\\\\\":\\\\\\"8410dbbd-7d30-41c5-94cb-****\\\\\\",\\\\\\"name\\\\\\":\\\\\\"alert-****\\\\\\",\\\\\\"productCategory\\\\\\":\\\\\\"ecs\\\\\\",\\\\\\"instances\\\\\\":[{\\\\\\"instanceId\\\\\\":\\\\\\"i-m5e1qg6uo38rztr4****\\\\\\"}],\\\\\\"metrics\\\\\\":null,\\\\\\"scopeType\\\\\\":\\\\\\"USER\\\\\\",\\\\\\"scopeValue\\\\\\":\\\\\\"\\\\\\",\\\\\\"startTime\\\\\\":\\\\\\"0001-01-01T00:00:00Z\\\\\\",\\\\\\"endTime\\\\\\":\\\\\\"9999-12-31T23:59:59.999999999+08:00\\\\\\",\\\\\\"effectiveTime\\\\\\":null,\\\\\\"isEnable\\\\\\":true,\\\\\\"status\\\\\\":1,\\\\\\"gmtCreate\\\\\\":\\\\\\"2021-11-02T16:35:59+08:00\\\\\\",\\\\\\"gmtModified\\\\\\":\\\\\\"2021-11-02T16:35:59+08:00\\\\\\",\\\\\\"loadTime\\\\\\":\\\\\\"2021-11-02T16:36:15.213072177+08:00\\\\\\"}\\",\\n \\"Level\\": \\"P4\\",\\n \\"SendStatus\\": \\"0\\",\\n \\"ExtendedInfo\\": [\\n {\\n \\"Name\\": \\"userId\\",\\n \\"Value\\": \\"100931896542****\\"\\n }\\n ],\\n \\"Dimensions\\": [\\n {\\n \\"Key\\": \\"instanceId\\",\\n \\"Value\\": \\"i-m5e1qg6uo38rztr4****\\"\\n }\\n ],\\n \\"WebhookList\\": [\\n {\\n \\"code\\": \\"200\\",\\n \\"url\\": \\"https://www.aliyun.com/webhook.html\\",\\n \\"message\\": \\"success\\"\\n }\\n ],\\n \\"DingdingWebhookList\\": [\\n \\"https://oapi.dingtalk.com/robot/send?access_token=b7ff24032da1a5f86659ecda46797e13cc1d4e4da6903d7b014ea1d1488b****\\"\\n ],\\n \\"ContactOnCallList\\": [\\n \\"1368888****\\"\\n ],\\n \\"ContactMailList\\": [\\n \\"[email protected]\\"\\n ],\\n \\"ContactGroups\\": [\\n \\"ECS_Group\\"\\n ],\\n \\"ContactALIIWWList\\": [\\n \\"Alice\\"\\n ],\\n \\"ContactSMSList\\": [\\n \\"1368888****\\"\\n ],\\n \\"ContactDingList\\": [\\n \\"CloudMonitor\\"\\n ],\\n \\"SendDetail\\": {\\n \\"ResultCode\\": \\"success\\",\\n \\"ChannelResultList\\": [\\n {\\n \\"Channel\\": \\"MAIL\\",\\n \\"ResultList\\": [\\n {\\n \\"Code\\": \\"200\\",\\n \\"RequestId\\": \\"0BDAF8A8-04DC-5F0C-90E4-724D42C4****\\",\\n \\"Success\\": true,\\n \\"Detail\\": \\"{ }\\",\\n \\"notifyTargetList\\": [\\n \\"MAIL\\"\\n ]\\n }\\n ]\\n }\\n ]\\n },\\n \\"Escalation\\": {\\n \\"Expression\\": \\"$Average<90\\",\\n \\"Times\\": 1,\\n \\"Level\\": \\"P4\\"\\n },\\n \\"SendResultList\\": [\\n {\\n \\"Key\\": \\"MAIL\\",\\n \\"Value\\": [\\n \\"[email protected]\\"\\n ]\\n }\\n ],\\n \\"LogId\\": \\"7510****::e8a472a0-46ae-4ac0-84b1-e46be368****\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeAlertLogListResponse>\\r\\n\\t<AlertLogList>\\r\\n\\t\\t<GroupName></GroupName>\\r\\n\\t\\t<Message>{\\\\\\"alertName\\\\\\":\\\\\\"d582b9e9-b1c1-4f17-9279-0fe7333a****_ResponseTime\\\\\\",\\\\\\"curLevel\\\\\\":\\\\\\"OK\\\\\\",\\\\\\"dimensions\\\\\\":{\\\\\\"taskId\\\\\\":\\\\\\"d582b9e9-b1c1-4f17-9279-0fe7333a****\\\\\\",\\\\\\"userId\\\\\\":\\\\\\"127067667954****\\\\\\"},\\\\\\"escalation\\\\\\":{\\\\\\"expression\\\\\\":\\\\\\"$Average>=800\\\\\\",\\\\\\"level\\\\\\":P4,\\\\\\"tag\\\\\\":\\\\\\"P4\\\\\\",\\\\\\"times\\\\\\":1}</Message>\\r\\n\\t\\t<RuleId>d582b9e9-b1c1-4f17-9279-0fe7****_ResponseTime</RuleId>\\r\\n\\t\\t<Escalation>\\r\\n\\t\\t\\t<Expression>$Average>=800</Expression>\\r\\n\\t\\t\\t<Times>1</Times>\\r\\n\\t\\t\\t<Level>P4</Level>\\r\\n\\t\\t</Escalation>\\r\\n\\t\\t<SendStatus>0</SendStatus>\\r\\n\\t\\t<Product>acs_ecs_dashboard</Product>\\r\\n\\t\\t<MetricName>cpu_total</MetricName>\\r\\n\\t\\t<RuleName>CPU使用率</RuleName>\\r\\n\\t\\t<ContactGroups>ECS_Group</ContactGroups>\\r\\n\\t\\t<InstanceId></InstanceId>\\r\\n\\t\\t<LevelChange>P4->OK</LevelChange>\\r\\n\\t\\t<Dimensions>\\r\\n\\t\\t\\t<Value>100931896542****</Value>\\r\\n\\t\\t\\t<Key>userId</Key>\\r\\n\\t\\t</Dimensions>\\r\\n\\t\\t<Dimensions>\\r\\n\\t\\t\\t<Value>i-abcdefgh12****</Value>\\r\\n\\t\\t\\t<Key>instanceId</Key>\\r\\n\\t\\t</Dimensions>\\r\\n\\t\\t<EventName>AlertOk</EventName>\\r\\n\\t\\t<ExtendedInfo>\\r\\n\\t\\t\\t<Value>i-hp34y1eiszazu49y****</Value>\\r\\n\\t\\t\\t<Name>instanceId</Name>\\r\\n\\t\\t</ExtendedInfo>\\r\\n\\t\\t<ExtendedInfo>\\r\\n\\t\\t\\t<Value>12706****</Value>\\r\\n\\t\\t\\t<Name>userId</Name>\\r\\n\\t\\t</ExtendedInfo>\\r\\n\\t\\t<Namespace>acs_ecs_dashboard</Namespace>\\r\\n\\t\\t<AlertTime>1610085521564</AlertTime>\\r\\n\\t\\t<GroupId>7301****</GroupId>\\r\\n\\t\\t<InstanceName>portalHost</InstanceName>\\r\\n\\t\\t<Level>OK</Level>\\r\\n\\t</AlertLogList>\\r\\n\\t<RequestId>6FCB1AB7-57F7-4DDA-B14E-6468FAFE79D9</RequestId>\\r\\n\\t<PageSize>10</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeAlertLogListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeAlertLogList',
+ 'description' => 'You can call the operation to query only the alert logs within the last year.'."\n"
+ ."\n"
+ .'This topic provides an example to show how to query the alert logs of Elastic Compute Service (ECS) based on the `product` dimension.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeAlertLogHistogram' => [
+ 'summary' => 'Queries the number of alert logs that are generated during each interval within a period of time.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start timestamp of the alert logs to be queried.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* You can query only the alert logs within the last year.'."\n"
+ ."\n"
+ .'* The interval between the start time (`StartTime`) and end time (`EndTime`) must be less than or equal to 15 days.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1609988009694',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end timestamp of the alert logs to be queried.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* You can query only the alert logs within the last year.'."\n"
+ ."\n"
+ .'* The interval between the start time (`StartTime`) and end time (`EndTime`) must be less than or equal to 15 days.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1609989009694',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'SearchKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword that is used to query alert logs.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'alert',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7301****',
+ ],
+ ],
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the Alibaba Cloud service name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the Alibaba Cloud service.'."\n"
+ ."\n"
+ .'> For more information about the namespaces of different cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The severity level and notification methods of the alert. Valid values:'."\n"
+ ."\n"
+ .'* P4: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* OK: No alert is generated.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'P4',
+ ],
+ ],
+ [
+ 'name' => 'SendStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert status. Valid values:'."\n"
+ ."\n"
+ .'* 0: The alert is triggered or cleared.'."\n"
+ .'* 1: The alert is ineffective.'."\n"
+ .'* 2: The alert is muted and not triggered in a specified period.'."\n"
+ .'* 3: The host is restarting.'."\n"
+ .'* 4: No alert notification is sent.'."\n"
+ ."\n"
+ .'If the value of the SendStatus parameter is 0, the value P4 of the Level parameter indicates a triggered alert and the value OK indicates a cleared alert.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert contact group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test123',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'> For more information about the metrics of different cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'LastMin',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period of alert logs. Unit: minutes.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '360',
+ ],
+ ],
+ [
+ 'name' => 'GroupBy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The dimensions based on which data is aggregated. This parameter is equivalent to the GROUP BY clause in SQL. Valid values:'."\n"
+ ."\n"
+ .'* `product`: aggregates data by cloud service.'."\n"
+ .'* `level`: aggregates data by alert level.'."\n"
+ .'* `groupId`: aggregates data by application group.'."\n"
+ .'* `contactGroup`: aggregates data by alert contact group.'."\n"
+ .'* `product,metricName`: aggregates data both by cloud service and by metric.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'product',
+ ],
+ ],
+ [
+ 'name' => 'SourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'This parameter is deprecated.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'None'."\n",
+ ],
+ ],
+ [
+ 'name' => 'EventType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the alert event. Valid values:'."\n"
+ ."\n"
+ .'* TRIGGERED: The alert is triggered.'."\n"
+ .'* RESOLVED: The alert is resolved.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'RESOLVED',
+ ],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'For more information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ae06917_75a8c43178ab66****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '1C4A3709-BF52-42EE-87B5-7435F0929585',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AlertLogHistogramList' => [
+ 'description' => 'The number of alert logs that were generated during each interval of a time period.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'From' => [
+ 'description' => 'The start timestamp of the queried alert logs.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1610074791',
+ ],
+ 'To' => [
+ 'description' => 'The end timestamp of the queried alert logs.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1610074800',
+ ],
+ 'Count' => [
+ 'description' => 'The number of alert logs.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"1C4A3709-BF52-42EE-87B5-7435F0929585\\",\\n \\"Success\\": true,\\n \\"AlertLogHistogramList\\": [\\n {\\n \\"From\\": 1610074791,\\n \\"To\\": 1610074800,\\n \\"Count\\": 20\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeAlertLogHistogramResponse>\\n <Code>200</Code>\\n <Message>The specified resource is not found.</Message>\\n <RequestId>1C4A3709-BF52-42EE-87B5-7435F0929585</RequestId>\\n <Success>true</Success>\\n <AlertLogHistogramList>\\n <From>1610074791</From>\\n <To>1610074800</To>\\n <Count>20</Count>\\n </AlertLogHistogramList>\\n</DescribeAlertLogHistogramResponse>","errorExample":""}]',
+ 'title' => 'DescribeAlertLogHistogram',
+ 'description' => 'This topic provides an example on how to query the number of alert logs for Elastic Compute Service (ECS) based on the `product` dimension.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeProductsOfActiveMetricRule' => [
+ 'summary' => 'Queries the cloud services for which the initiative alert feature is enabled.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'F82E6667-7811-4BA0-842F-5B2DC42BBAAD',
+ ],
+ 'Datapoints' => [
+ 'description' => 'The information about the services for which the initiative alert feature is enabled. Services are separated with commas (,). Valid values:'."\n"
+ ."\n"
+ .'* ECS: Elastic Compute Service (ECS)'."\n"
+ .'* rds: ApsaraDB RDS'."\n"
+ .'* slb: Server Load Balancer (SLB)'."\n"
+ .'* redis_standard: Redis Open-Source Edition (standard architecture)'."\n"
+ .'* redis_sharding: Redis Open-Source Edition (cluster architecture)'."\n"
+ .'* redis_splitrw: Redis Open-Source Edition (read/write splitting architecture)'."\n"
+ .'* mongodb: ApsaraDB for MongoDB of the replica set architecture'."\n"
+ .'* mongodb_sharding: ApsaraDB for MongoDB of the sharded cluster architecture'."\n"
+ .'* hbase: ApsaraDB for HBase'."\n"
+ .'* elasticsearch: Elasticsearch'."\n"
+ .'* opensearch: OpenSearch'."\n",
+ 'type' => 'string',
+ 'example' => 'ecs,rds',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The request was successful.'."\n"
+ .'* false: The request failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'AllProductInitMetricRuleList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'AllProductInitMetricRule' => [
+ 'description' => 'The information about the services for which one-click alert is enabled.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The information about the services for which one-click alert is enabled.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Product' => [
+ 'description' => 'The abbreviation of the service name.'."\n",
+ 'type' => 'string',
+ 'example' => 'ecs',
+ ],
+ 'AlertInitConfigList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'AlertInitConfig' => [
+ 'description' => 'The initial alert rules that are generated after one-click alert is enabled for a service.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The initial alert rules that are generated after one-click alert is enabled for a service.',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric name. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'EvaluationCount' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the service. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_rds_dashboard',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ 'Statistics' => [
+ 'description' => 'The method used to calculate metric values that trigger alerts. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'Period' => [
+ 'description' => 'The aggregation period of monitoring data. Unit: minutes. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => '1m',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* INFO'."\n"
+ ."\n"
+ .' <!-- -->'."\n"
+ ."\n"
+ .' <!-- -->'."\n"
+ ."\n"
+ .' <!-- -->'."\n"
+ ."\n"
+ .'* WARN'."\n"
+ ."\n"
+ .' <!-- -->'."\n"
+ ."\n"
+ .' <!-- -->'."\n"
+ ."\n"
+ .' <!-- -->'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ ."\n"
+ .' <!-- -->'."\n"
+ ."\n"
+ .' <!-- -->'."\n"
+ ."\n"
+ .' <!-- -->'."\n",
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'INFO' => '',
+ 'WARN' => '',
+ 'CRITICAL' => '',
+ ],
+ 'example' => 'CRITICAL',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Warn-level alerts.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ ."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ ."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ ."\n"
+ .'* NotEqualToThreshold: does not equal to the threshold'."\n"
+ ."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ ."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ ."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ ."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ ."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'LessThanThreshold' => '',
+ 'GreaterThanLastWeek' => '',
+ 'LessThanOrEqualToThreshold' => '',
+ 'NotEqualToThreshold' => '',
+ 'GreaterThanLastPeriod' => '',
+ 'GreaterThanYesterday' => '',
+ 'LessThanYesterday' => '',
+ 'LessThanLastWeek' => '',
+ 'GreaterThanOrEqualToThreshold' => '',
+ 'GreaterThanThreshold' => '',
+ 'LessThanLastPeriod' => '',
+ ],
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The specified parameter is not valid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'The Request is not authorization.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"F82E6667-7811-4BA0-842F-5B2DC42BBAAD\\",\\n \\"Datapoints\\": \\"ecs,rds\\",\\n \\"Success\\": true,\\n \\"AllProductInitMetricRuleList\\": {\\n \\"AllProductInitMetricRule\\": [\\n {\\n \\"Product\\": \\"ecs\\",\\n \\"AlertInitConfigList\\": {\\n \\"AlertInitConfig\\": [\\n {\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"EvaluationCount\\": \\"3\\",\\n \\"Namespace\\": \\"acs_rds_dashboard\\",\\n \\"Threshold\\": \\"90\\",\\n \\"Statistics\\": \\"Average\\",\\n \\"Period\\": \\"1m\\",\\n \\"Level\\": \\"CRITICAL\\",\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeProductsOfActiveMetricRuleResponse>\\r\\n\\t\\t<RequestId>A4FFAEFF-4225-4EF6-8F63-FAAA8F58289D</RequestId>\\r\\n\\t\\t<AllProductInitMetricRuleList>\\r\\n\\t\\t\\t<AllProductInitMetricRule>\\r\\n\\t\\t\\t\\t<AlertInitConfigList>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>CPUUtilization</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>1m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_ecs_dashboard</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>95</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>vm.DiskUtilization</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>1m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_ecs_dashboard</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>95</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>vm.MemoryUtilization</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>1m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_ecs_dashboard</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>95</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>InternetOutRate_Percent</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>1m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_ecs_dashboard</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>95</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t</AlertInitConfigList>\\r\\n\\t\\t\\t\\t<Product>ecs</Product>\\r\\n\\t\\t\\t</AllProductInitMetricRule>\\r\\n\\t\\t\\t<AllProductInitMetricRule>\\r\\n\\t\\t\\t\\t<AlertInitConfigList>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>CpuUsage</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>5m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_rds_dashboard</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>80</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>DiskUsage</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>5m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_rds_dashboard</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>80</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>IOPSUsage</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>5m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_rds_dashboard</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>80</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>ConnectionUsage</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>5m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_rds_dashboard</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>80</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>DataDelay</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>5m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_rds_dashboard</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>5</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t</AlertInitConfigList>\\r\\n\\t\\t\\t\\t<Product>rds</Product>\\r\\n\\t\\t\\t</AllProductInitMetricRule>\\r\\n\\t\\t\\t<AllProductInitMetricRule>\\r\\n\\t\\t\\t\\t<AlertInitConfigList>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>DocSizeRatiobyApp</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>1</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>10m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Maximum</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_opensearch</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>85</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>lossqpsbyapp</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>1</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>10m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Maximum</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_opensearch</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>0</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>ComputeResourceRatiobyApp</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>1</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>10m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Maximum</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_opensearch</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>85</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t<AlertInitConfig>\\r\\n\\t\\t\\t\\t\\t\\t<MetricName>app_realtime_write_latency</MetricName>\\r\\n\\t\\t\\t\\t\\t\\t<EvaluationCount>1</EvaluationCount>\\r\\n\\t\\t\\t\\t\\t\\t<Period>20m</Period>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Maximum</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Namespace>acs_opensearch</Namespace>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>1800000</Threshold>\\r\\n\\t\\t\\t\\t\\t</AlertInitConfig>\\r\\n\\t\\t\\t\\t</AlertInitConfigList>\\r\\n\\t\\t\\t\\t<Product>opensearch</Product>\\r\\n\\t\\t\\t</AllProductInitMetricRule>\\r\\n\\t\\t</AllProductInitMetricRuleList>\\r\\n\\t\\t<Datapoints>rds,redis_standard</Datapoints>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeProductsOfActiveMetricRuleResponse>","errorExample":""}]',
+ 'title' => 'DescribeProductsOfActiveMetricRule',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeActiveMetricRuleList' => [
+ 'summary' => 'Queries the details of initiative alert rules.',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the cloud service that supports initiative alert rules.'."\n"
+ ."\n"
+ .'For more information about how to obtain the name of a cloud service, see [DescribeProductsOfActiveMetricRule](~~114930~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'ecs',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'F82E6667-7811-4BA0-842F-5B2DC42BBAAD',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Datapoints' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Alarm' => [
+ 'description' => 'The details of the alert rules.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alerts are not sent even if the trigger conditions are met.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'example' => '86400',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'EvaluationCount' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL.'."\n",
+ 'type' => 'string',
+ 'example' => 'http://www.aliyun.com',
+ ],
+ 'State' => [
+ 'description' => 'Indicates whether the alert rule is enabled.'."\n",
+ 'type' => 'string',
+ 'example' => 'Enable',
+ ],
+ 'ContactGroups' => [
+ 'description' => 'The alert contact group.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Group',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'SystemDefault_acs_rds_dashboard_CpuUsage',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'a151cd6023eacee2f0978e03863cc1697c89508****',
+ ],
+ 'Period' => [
+ 'description' => 'The aggregation period of monitoring data.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'example' => '60',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used in the alert rule. Valid values:'."\n"
+ ."\n"
+ .'* `>`'."\n"
+ .'* `<`'."\n"
+ .'* `>=`'."\n"
+ .'* `<=`'."\n"
+ .'* `=`'."\n"
+ .'* `=`'."\n",
+ 'type' => 'string',
+ 'example' => '>',
+ ],
+ 'EndTime' => [
+ 'description' => 'The end of the time period during which the alert rule is effective.'."\n"
+ ."\n"
+ .'Unit: hours. For example, the value 23 indicates `23:59:59`.'."\n",
+ 'type' => 'string',
+ 'example' => '24',
+ ],
+ 'StartTime' => [
+ 'description' => 'The beginning of the time period during which the alert rule is effective.'."\n"
+ ."\n"
+ .'Unit: hours. For example, the value 00 indicates `00:00:00`.'."\n",
+ 'type' => 'string',
+ 'example' => '00',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical method.'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'Enable' => [
+ 'description' => 'Indicates whether the alert rule is enabled. Valid values:'."\n"
+ ."\n"
+ .'* true: The alert rule is enabled.'."\n"
+ .'* false: The alert rule is disabled.'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'AlertList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Alert' => [
+ 'description' => 'The details of the alert rules. The result is in the same structure as that returned by the DescribeMetricRuleList operation.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alerts are not sent even if the trigger conditions are met.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'example' => '86400',
+ ],
+ 'MetricName' => [
+ 'description' => 'The name of the metric.'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL.'."\n",
+ 'type' => 'string',
+ 'example' => 'http://www.aliyun.com',
+ ],
+ 'ContactGroups' => [
+ 'description' => 'The alert contact group.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Group',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the Alibaba Cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'EffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is effective.'."\n",
+ 'type' => 'string',
+ 'example' => '00:00-23:59',
+ ],
+ 'NoEffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is ineffective.'."\n",
+ 'type' => 'string',
+ 'example' => '00:00-06:00',
+ ],
+ 'MailSubject' => [
+ 'description' => 'The subject of the alert notification email.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Bucket',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'myAlert',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'ruleIdxxxx',
+ ],
+ 'Period' => [
+ 'description' => 'The aggregation period of monitoring data.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'example' => '60',
+ ],
+ 'AlertState' => [
+ 'description' => 'The status of the alert rule. Valid values:'."\n"
+ ."\n"
+ .'* OK: The alert rule has no active alerts.'."\n"
+ .'* ALARM: The alert rule has active alerts.'."\n"
+ .'* INSUFFICIENT_DATA: No data is found.'."\n",
+ 'type' => 'string',
+ 'example' => 'OK',
+ ],
+ 'Dimensions' => [
+ 'description' => 'The monitoring data of the specified resource.'."\n",
+ 'type' => 'string',
+ 'example' => '""',
+ ],
+ 'EnableState' => [
+ 'description' => 'Indicates whether the alert rule is enabled. Valid values:'."\n"
+ ."\n"
+ .'* true: The alert rule is enabled.'."\n"
+ .'* false: The alert rule is disabled.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resources' => [
+ 'description' => 'The resources that are associated with the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"resource":"_ALL"}]',
+ ],
+ 'Escalations' => [
+ 'description' => 'The conditions for triggering different levels of alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Info' => [
+ 'description' => 'The conditions for triggering Info-level alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Info-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanThreshold',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times'."\n"
+ ."\n"
+ .'for which the metric value meets the alert condition before an Info-level alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Threshold' => [
+ 'description' => 'The threshold for Info-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '95',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical methods for Info-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ ],
+ ],
+ 'Warn' => [
+ 'description' => 'The conditions for triggering Warn-level alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Warn-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanThreshold',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times'."\n"
+ ."\n"
+ .'for which the metric value meets the alert condition before a Warn-level alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Threshold' => [
+ 'description' => 'The threshold for Warn-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '80',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical methods for Warn-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ ],
+ ],
+ 'Critical' => [
+ 'description' => 'The trigger condition for Critical-level alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Critical-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanThreshold',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Threshold' => [
+ 'description' => 'The threshold for Critical-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '99',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical methods for Critical-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"F82E6667-7811-4BA0-842F-5B2DC42BBAAD\\",\\n \\"Success\\": true,\\n \\"Datapoints\\": {\\n \\"Alarm\\": [\\n {\\n \\"SilenceTime\\": \\"86400\\",\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"EvaluationCount\\": \\"3\\",\\n \\"Webhook\\": \\"https://www.aliyun.com\\",\\n \\"State\\": \\"Enable\\",\\n \\"ContactGroups\\": \\"ECS_Group\\",\\n \\"Namespace\\": \\"acs_ecs_dashboard\\",\\n \\"RuleName\\": \\"SystemDefault_acs_rds_dashboard_CpuUsage\\",\\n \\"RuleId\\": \\"a151cd6023eacee2f0978e03863cc1697c89508****\\",\\n \\"Period\\": \\"60\\",\\n \\"ComparisonOperator\\": \\">\\",\\n \\"EndTime\\": \\"24\\",\\n \\"StartTime\\": \\"00\\",\\n \\"Threshold\\": \\"90\\",\\n \\"Statistics\\": \\"Average\\",\\n \\"Enable\\": \\"true\\"\\n }\\n ]\\n },\\n \\"AlertList\\": {\\n \\"Alert\\": [\\n {\\n \\"SilenceTime\\": \\"86400\\",\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"Webhook\\": \\"http://www.aliyun.com\\",\\n \\"ContactGroups\\": \\"ECS_Group\\",\\n \\"Namespace\\": \\"acs_ecs_dashboard\\",\\n \\"EffectiveInterval\\": \\"00:00-23:59\\",\\n \\"NoEffectiveInterval\\": \\"00:00-06:00\\",\\n \\"MailSubject\\": \\"ECS_Bucket\\",\\n \\"RuleName\\": \\"myAlert\\",\\n \\"RuleId\\": \\"ruleIdxxxx\\",\\n \\"Period\\": \\"60\\",\\n \\"AlertState\\": \\"OK\\",\\n \\"Dimensions\\": \\"\\\\\\"\\\\\\"\\",\\n \\"EnableState\\": true,\\n \\"Resources\\": \\"[{\\\\\\"resource\\\\\\":\\\\\\"_ALL\\\\\\"}]\\",\\n \\"Escalations\\": {\\n \\"Info\\": {\\n \\"ComparisonOperator\\": \\"GreaterThanThreshold\\",\\n \\"Times\\": \\"3\\",\\n \\"Threshold\\": \\"95\\",\\n \\"Statistics\\": \\"Average\\"\\n },\\n \\"Warn\\": {\\n \\"ComparisonOperator\\": \\"GreaterThanThreshold\\",\\n \\"Times\\": \\"3\\",\\n \\"Threshold\\": \\"80\\",\\n \\"Statistics\\": \\"Average\\"\\n },\\n \\"Critical\\": {\\n \\"ComparisonOperator\\": \\"GreaterThanThreshold\\",\\n \\"Times\\": \\"3\\",\\n \\"Threshold\\": \\"99\\",\\n \\"Statistics\\": \\"Average\\"\\n }\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeActiveMetricRuleListResponse>\\r\\n\\t\\t<AlertList>\\r\\n\\t\\t\\t<Alert>\\r\\n\\t\\t\\t\\t<SilenceTime>86400</SilenceTime>\\r\\n\\t\\t\\t\\t<ContactGroups>ECS_Group</ContactGroups>\\r\\n\\t\\t\\t\\t<NoEffectiveInterval></NoEffectiveInterval>\\r\\n\\t\\t\\t\\t<MailSubject>${serviceType}-${metricName}-${levelDescription}</MailSubject>\\r\\n\\t\\t\\t\\t<RuleId>SystemDefault_acs_rds_dashboard_IOPSUsage</RuleId>\\r\\n\\t\\t\\t\\t<Period>300</Period>\\r\\n\\t\\t\\t\\t<Dimensions></Dimensions>\\r\\n\\t\\t\\t\\t<EffectiveInterval></EffectiveInterval>\\r\\n\\t\\t\\t\\t<Namespace>acs_rds_dashboard</Namespace>\\r\\n\\t\\t\\t\\t<AlertState>INSUFFICIENT_DATA</AlertState>\\r\\n\\t\\t\\t\\t<MetricName>IOPSUsage</MetricName>\\r\\n\\t\\t\\t\\t<EnableState>true</EnableState>\\r\\n\\t\\t\\t\\t<Escalations>\\r\\n\\t\\t\\t\\t\\t<Critical />\\r\\n\\t\\t\\t\\t\\t<Info>\\r\\n\\t\\t\\t\\t\\t\\t<ComparisonOperator>GreaterThanThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t\\t\\t<Times>5</Times>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>80</Threshold>\\r\\n\\t\\t\\t\\t\\t</Info>\\r\\n\\t\\t\\t\\t\\t<Warn />\\r\\n\\t\\t\\t\\t</Escalations>\\r\\n\\t\\t\\t\\t<Webhook></Webhook>\\r\\n\\t\\t\\t\\t<Resources>[{\\\\\\"resource\\\\\\":\\\\\\"_ALL\\\\\\"}]</Resources>\\r\\n\\t\\t\\t\\t<RuleName>SystemDefault_acs_rds_dashboard_IOPSUsage</RuleName>\\r\\n\\t\\t\\t</Alert>\\r\\n\\t\\t\\t<Alert>\\r\\n\\t\\t\\t\\t<SilenceTime>86400</SilenceTime>\\r\\n\\t\\t\\t\\t<ContactGroups>ECS_Group</ContactGroups>\\r\\n\\t\\t\\t\\t<NoEffectiveInterval></NoEffectiveInterval>\\r\\n\\t\\t\\t\\t<MailSubject>${serviceType}-${metricName}-${levelDescription}</MailSubject>\\r\\n\\t\\t\\t\\t<RuleId>SystemDefault_acs_rds_dashboard_CpuUsage</RuleId>\\r\\n\\t\\t\\t\\t<Period>300</Period>\\r\\n\\t\\t\\t\\t<Dimensions></Dimensions>\\r\\n\\t\\t\\t\\t<EffectiveInterval></EffectiveInterval>\\r\\n\\t\\t\\t\\t<Namespace>acs_rds_dashboard</Namespace>\\r\\n\\t\\t\\t\\t<AlertState>INSUFFICIENT_DATA</AlertState>\\r\\n\\t\\t\\t\\t<MetricName>CpuUsage</MetricName>\\r\\n\\t\\t\\t\\t<EnableState>true</EnableState>\\r\\n\\t\\t\\t\\t<Escalations>\\r\\n\\t\\t\\t\\t\\t<Critical />\\r\\n\\t\\t\\t\\t\\t<Info>\\r\\n\\t\\t\\t\\t\\t\\t<ComparisonOperator>GreaterThanThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t\\t\\t<Times>5</Times>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>80</Threshold>\\r\\n\\t\\t\\t\\t\\t</Info>\\r\\n\\t\\t\\t\\t\\t<Warn />\\r\\n\\t\\t\\t\\t</Escalations>\\r\\n\\t\\t\\t\\t<Webhook></Webhook>\\r\\n\\t\\t\\t\\t<Resources>[{\\\\\\"resource\\\\\\":\\\\\\"_ALL\\\\\\"}]</Resources>\\r\\n\\t\\t\\t\\t<RuleName>SystemDefault_acs_rds_dashboard_CpuUsage</RuleName>\\r\\n\\t\\t\\t</Alert>\\r\\n\\t\\t</AlertList>\\r\\n\\t\\t<Datapoints>\\r\\n\\t\\t\\t<Alarm>\\r\\n\\t\\t\\t\\t<SilenceTime>86400</SilenceTime>\\r\\n\\t\\t\\t\\t<ContactGroups>[\\\\\\"Alice\\\\\\"]</ContactGroups>\\r\\n\\t\\t\\t\\t<ComparisonOperator>GreaterThanThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t<EndTime></EndTime>\\r\\n\\t\\t\\t\\t<RuleId>SystemDefault_acs_rds_dashboard_IOPSUsage</RuleId>\\r\\n\\t\\t\\t\\t<StartTime></StartTime>\\r\\n\\t\\t\\t\\t<Period>300</Period>\\r\\n\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t<Namespace>acs_rds_dashboard</Namespace>\\r\\n\\t\\t\\t\\t<MetricName>IOPSUsage</MetricName>\\r\\n\\t\\t\\t\\t<State>INSUFFICIENT_DATA</State>\\r\\n\\t\\t\\t\\t<Enable>true</Enable>\\r\\n\\t\\t\\t\\t<Webhook></Webhook>\\r\\n\\t\\t\\t\\t<RuleName>SystemDefault_acs_rds_dashboard_IOPSUsage</RuleName>\\r\\n\\t\\t\\t\\t<Threshold>80</Threshold>\\r\\n\\t\\t\\t</Alarm>\\r\\n\\t\\t\\t<Alarm>\\r\\n\\t\\t\\t\\t<SilenceTime>86400</SilenceTime>\\r\\n\\t\\t\\t\\t<ContactGroups>[\\\\\\"Jim\\\\\\"]</ContactGroups>\\r\\n\\t\\t\\t\\t<ComparisonOperator>GreaterThanThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t<EndTime></EndTime>\\r\\n\\t\\t\\t\\t<RuleId>SystemDefault_acs_rds_dashboard_CpuUsage</RuleId>\\r\\n\\t\\t\\t\\t<StartTime></StartTime>\\r\\n\\t\\t\\t\\t<Period>300</Period>\\r\\n\\t\\t\\t\\t<EvaluationCount>5</EvaluationCount>\\r\\n\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t<Namespace>acs_rds_dashboard</Namespace>\\r\\n\\t\\t\\t\\t<MetricName>CpuUsage</MetricName>\\r\\n\\t\\t\\t\\t<State>INSUFFICIENT_DATA</State>\\r\\n\\t\\t\\t\\t<Enable>true</Enable>\\r\\n\\t\\t\\t\\t<Webhook></Webhook>\\r\\n\\t\\t\\t\\t<RuleName>SystemDefault_acs_rds_dashboard_CpuUsage</RuleName>\\r\\n\\t\\t\\t\\t<Threshold>80</Threshold>\\r\\n\\t\\t\\t</Alarm>\\r\\n\\t\\t</Datapoints>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeActiveMetricRuleListResponse>","errorExample":""}]',
+ 'title' => 'DescribeActiveMetricRuleList',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'EnableActiveMetricRule' => [
+ 'summary' => 'Enables the initiative alert feature for a cloud service.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The cloud service for which you want to enable initiative alert. Valid values:'."\n"
+ ."\n"
+ .'* ECS: Elastic Compute Service (ECS)'."\n"
+ .'* rds: ApsaraDB RDS'."\n"
+ .'* slb: Server Load Balancer (SLB)'."\n"
+ .'* redis_standard: Redis Open-Source Edition (standard architecture)'."\n"
+ .'* redis_sharding: Redis Open-Source Edition (cluster architecture)'."\n"
+ .'* redis_splitrw: Redis Open-Source Edition (read/write splitting architecture)'."\n"
+ .'* mongodb: ApsaraDB for MongoDB of the replica set architecture'."\n"
+ .'* mongodb_sharding: ApsaraDB for MongoDB of the sharded cluster architecture'."\n"
+ .'* hbase: ApsaraDB for HBase'."\n"
+ .'* elasticsearch: Elasticsearch'."\n"
+ .'* opensearch: OpenSearch'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'F82E6667-7811-4BA0-842F-5B2DC42BBAAD',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"F82E6667-7811-4BA0-842F-5B2DC42BBAAD\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableActiveMetricRuleResponse>\\n <Code>200</Code>\\n <Success>true</Success>\\n <RequestId>55850888-9CCE-4FD5-B949-5F8947D63929</RequestId>\\n</EnableActiveMetricRuleResponse>","errorExample":""}]',
+ 'title' => 'EnableActiveMetricRule',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DisableActiveMetricRule' => [
+ 'summary' => 'Disables the initiative alert feature for a cloud service.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Product',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The cloud service for which you want to disable proactive alerting. Valid values:'."\n"
+ ."\n"
+ .'* ECS: Elastic Compute Service (ECS)'."\n"
+ .'* rds: ApsaraDB RDS'."\n"
+ .'* slb: Server Load Balancer (SLB)'."\n"
+ .'* redis_standard: Redis Open-Source Edition (standard architecture)'."\n"
+ .'* redis_sharding: Redis Open-Source Edition (cluster architecture)'."\n"
+ .'* redis_splitrw: Redis Open-Source Edition (read/write splitting architecture)'."\n"
+ .'* mongodb: ApsaraDB for MongoDB of the replica set architecture'."\n"
+ .'* mongodb_sharding: ApsaraDB for MongoDB of the sharded cluster architecture'."\n"
+ .'* hbase: ApsaraDB for HBase'."\n"
+ .'* elasticsearch: Elasticsearch'."\n"
+ .'* opensearch: OpenSearch'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'F82E6667-7811-4BA0-842F-5B2DC42BBAAD',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"F82E6667-7811-4BA0-842F-5B2DC42BBAAD\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'DisableActiveMetricRule',
+ ],
+ 'CreateMetricRuleTemplate' => [
+ 'summary' => 'Creates an alert template.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert template.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Template1',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the alert template.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Template1',
+ ],
+ ],
+ [
+ 'name' => 'AlertTemplates',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The details of the alert template.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert template.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Escalations.Info.Threshold' => [
+ 'description' => 'The threshold for Info-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a metric, see [DescribeMetricMetaList](~~98846~~) or [Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cpu_total',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'The callback URL must be accessible over the Internet. CloudMonitor pushes an alert notification to the specified callback URL by sending an HTTP POST request. Only the HTTP protocol is supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http://ww.aliyun.com',
+ ],
+ 'Escalations.Warn.Threshold' => [
+ 'description' => 'The threshold for Warn-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For information about how to obtain the namespace of a cloud service, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'Period' => [
+ 'description' => 'The aggregation period of monitoring data. Unit: seconds.'."\n"
+ ."\n"
+ .'The default value is the minimum aggregation period. Generally, you do not need to specify the minimum aggregation period.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS_Rule1',
+ ],
+ 'Escalations.Critical.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'Selector' => [
+ 'description' => 'The dimension of the alert. It is an extended field.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For example, an alert template is applied to an application group, this parameter is set to `{"disk":"/"}`, and the MetricName parameter is set to `DiskUtilization`. In this case, the generated alert rule is applied to the root disk partition (`"/"`) of all instances in the application group to which the alert template is applied.'."\n"
+ ."\n"
+ .'> For more information about the values of extended fields, see [DescribeMetricRuleTemplateAttribute](~~114979~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"disk":"/"}',
+ ],
+ 'Escalations.Info.Statistics' => [
+ 'description' => 'The statistical method for Info-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Escalations.Warn.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Warn-level alert is triggered.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Escalations.Info.ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Info-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the previous monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Category' => [
+ 'description' => 'The abbreviation of the cloud service name.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For more information about how to obtain the abbreviation of a cloud service name, see `metricCategory` in the response parameter `Labels` of the [DescribeProjectMeta](~~114916~~) operation.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs',
+ ],
+ 'Escalations.Critical.Threshold' => [
+ 'description' => 'The threshold for Critical-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ 'Escalations.Critical.Statistics' => [
+ 'description' => 'The statistical method for Critical-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Escalations.Critical.ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Critical-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the previous monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Escalations.Warn.ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Warn-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the previous monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Escalations.Info.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an Info-level alert is triggered.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Escalations.Warn.Statistics' => [
+ 'description' => 'The statistical method for the Warn-level alert.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 200,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The data returned.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '9763ED1A-4D09-41BF-851E-310421750204',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the alert template.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '12345',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'InvalidClientTokenId',
+ 'errorMessage' => 'not allow this operation.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => 'ResourcesOverLimit',
+ 'errorMessage' => 'Resources over limit.',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalFailure',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"9763ED1A-4D09-41BF-851E-310421750204\\",\\n \\"Success\\": true,\\n \\"Id\\": 12345\\n}","errorExample":""},{"type":"xml","example":"<CreateMetricRuleTemplateResponse>\\n\\t\\t<RequestId>9763ED1A-4D09-41BF-851E-310421750204</RequestId>\\n\\t\\t<Id>12345</Id>\\n\\t\\t<Success>true</Success>\\n\\t\\t<Code>200</Code>\\n</CreateMetricRuleTemplateResponse>","errorExample":""}]',
+ 'title' => 'CreateMetricRuleTemplate',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteMetricRuleTemplate' => [
+ 'summary' => 'Deletes an alert template.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TemplateId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert template.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '123****',
+ 'docRequired' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '7B63F8CF-D48D-4608-A402-04FB5B2B4B6A',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resource' => [
+ 'description' => 'The template information.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'TemplateId' => [
+ 'description' => 'The ID of the template.'."\n",
+ 'type' => 'string',
+ 'example' => '123****',
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"7B63F8CF-D48D-4608-A402-04FB5B2B4B6A\\",\\n \\"Success\\": true,\\n \\"Resource\\": {\\n \\"TemplateId\\": \\"123****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<DeleteMetricRuleTemplateResponse>\\r\\n <Resource>\\r\\n <TemplateId>123****</TemplateId>\\r\\n </Resource>\\r\\n <RequestId>7B63F8CF-D48D-4608-A402-04FB5B2B4B6A</RequestId>\\r\\n <Success>true</Success>\\r\\n <Code>200</Code>\\r\\n</DeleteMetricRuleTemplateResponse>","errorExample":""}]',
+ 'title' => 'DeleteMetricRuleTemplate',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyMetricRuleTemplate' => [
+ 'summary' => 'Modifies an alert template.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TemplateId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert template.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an alert template, see [DescribeMetricRuleTemplateList](~~114982~~).'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert template.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of an alert template, see [DescribeMetricRuleTemplateList](~~114982~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test123',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the alert template.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_template1',
+ ],
+ ],
+ [
+ 'name' => 'RestVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The version of the alert template. The version changes with the number of times that the alert template is modified.'."\n"
+ ."\n"
+ .'For information about how to obtain the version of an alert template, see [DescribeMetricRuleTemplateList](~~114982~~).'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'AlertTemplates',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The details of the alert template.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The version of the alert template. The version changes with the number of times that the alert template is modified.'."\n"
+ ."\n"
+ .'For information about how to obtain the version of an alert template, see [DescribeMetricRuleTemplateList](~~114982~~).'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Escalations.Info.Threshold' => [
+ 'description' => 'The threshold for Info-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For information about how to obtain metrics, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu_total',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'The callback URL must be accessible over the Internet. CloudMonitor pushes an alert notification to the specified callback URL by sending an HTTP POST request. Only the HTTP protocol is supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://apiwebhook.hipac.cn/api/v1/alarm/aly/eregfeeferrtbnmkdszp',
+ ],
+ 'Escalations.Warn.Threshold' => [
+ 'description' => 'The threshold for Warn-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For information about how to obtain the namespace of a cloud service, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'Period' => [
+ 'description' => 'The statistical period of the monitoring data.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> If the value is set to 300 seconds, the monitoring data is collected every 300 seconds. If the monitoring data is reported every 1 minute, the alert system calculates the average, maximum, and minimum values of the monitoring data of 5 minutes and checks whether the aggregated values exceed the threshold. To prevent unexpected alerts, we recommend that you set this parameter together with other parameters.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rule1',
+ ],
+ 'Escalations.Critical.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'Selector' => [
+ 'description' => 'The dimension of the alert. It is an extended field.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For example, an alert template is applied to an application group, this parameter is set to `{"disk":"/"}`, and the MetricName parameter is set to `DiskUtilization`. In this case, the generated alert rule is applied to the root disk partition (`"/"`) of all instances in the application group to which the alert template is applied.'."\n"
+ ."\n"
+ .'> For more information about the values of extended fields, see [DescribeMetricRuleTemplateAttribute](~~114979~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"disk":"/"}',
+ ],
+ 'Escalations.Info.Statistics' => [
+ 'description' => 'The statistical method for Info-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Escalations.Warn.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Warn-level alert is triggered.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Escalations.Info.ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Info-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Category' => [
+ 'description' => 'The abbreviation of the cloud service name.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For more information about how to obtain the abbreviation of a cloud service name, see `metricCategory` in the response parameter `Labels` of the [DescribeProjectMeta](~~114916~~) operation.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs',
+ ],
+ 'Escalations.Critical.Threshold' => [
+ 'description' => 'The threshold for Critical-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ 'Escalations.Critical.Statistics' => [
+ 'description' => 'The statistical method for Critical-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Escalations.Critical.ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Critical-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Escalations.Warn.ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Warn-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Escalations.Info.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an Info-level alert is triggered.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'Escalations.Warn.Statistics' => [
+ 'description' => 'The statistical method for Warn-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for the selected alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 200,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '9E07117F-F6AE-4F1C-81E8-36FBB4892235',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'InvalidQueryParameter',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'InvalidClientTokenId',
+ 'errorMessage' => 'The X.509 certificate or cms access key ID provided does not exist in our records.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalFailure',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"9E07117F-F6AE-4F1C-81E8-36FBB4892235\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ModifyMetricRuleTemplateResponse>\\n\\t\\t<RequestId>97EAC0E2-CD54-4183-95AC-F0C113024E18</RequestId>\\n\\t\\t<Code>200</Code>\\n\\t\\t<Success>true</Success>\\n</ModifyMetricRuleTemplateResponse>","errorExample":""}]',
+ 'title' => 'ModifyMetricRuleTemplate',
+ 'description' => 'This topic provides an example on how to modify an alert template whose version is `1` and ID is `123456`. The alert level is changed to `Critical`. The statistical method is changed to `Average`. The alert threshold comparator is changed to `GreaterThanOrEqualToThreshold`. The alert threshold is changed to `90`. The number of alert retries is changed to `3`. The response shows that the alert template is modified.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMetricRuleTemplateAttribute' => [
+ 'summary' => 'Queries the details of an alert template.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert template. You must specify at least one of the `Name` and `TemplateId` parameters.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of an alert template, see [DescribeMetricRuleTemplateList](~~114982~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Template1',
+ ],
+ ],
+ [
+ 'name' => 'TemplateId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert template. You must specify at least one of the `Name` and `TemplateId` parameters.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an alert template, see [DescribeMetricRuleTemplateList](~~114982~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '70****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The returned result.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '8F3A82AD-DA92-52B0-8EC6-C059D1C3839F',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resource' => [
+ 'description' => 'The details of the alert template.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Description' => [
+ 'description' => 'The description of the alert template.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the alert template.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Template1',
+ ],
+ 'RestVersion' => [
+ 'description' => 'The version of the alert template.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'TemplateId' => [
+ 'description' => 'The ID of the alert template.'."\n",
+ 'type' => 'string',
+ 'example' => '70****',
+ ],
+ 'AlertTemplates' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'AlertTemplate' => [
+ 'description' => 'The queried alert templates.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'Selector' => [
+ 'description' => 'The dimension of the alert. It is an extended field.'."\n",
+ 'type' => 'string',
+ 'example' => '{"disk":"/"}',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL to which a request is sent when an alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://www.aliyun.com',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the Alibaba Cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'Category' => [
+ 'description' => 'The abbreviation of the Alibaba Cloud service name.'."\n",
+ 'type' => 'string',
+ 'example' => 'ecs',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Rule',
+ ],
+ 'NoDataPolicy' => [
+ 'description' => 'The method that is used to handle alerts when no monitoring data is found. Valid values:'."\n"
+ ."\n"
+ .'* KEEP_LAST_STATE (default): No operation is performed.'."\n"
+ .'* INSUFFICIENT_DATA: An alert whose content is "Insufficient data" is triggered.'."\n"
+ .'* OK: The status is considered normal.'."\n",
+ 'type' => 'string',
+ 'example' => 'KEEP_LAST_STATE',
+ ],
+ 'Escalations' => [
+ 'description' => 'The threshold and the alert level.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Info' => [
+ 'description' => 'The conditions for triggering Info-level alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold for Info-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an Info-level alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'Threshold' => [
+ 'description' => 'The threshold for Info-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical method for Info-level alerts.'."\n"
+ ."\n"
+ .'The value of the `Statistics` parameter varies with the cloud service. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ ],
+ ],
+ 'Warn' => [
+ 'description' => 'The conditions for triggering Warn-level alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold for Warn-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Warn-level alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'Threshold' => [
+ 'description' => 'The threshold for Warn-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical method for Warn-level alerts.'."\n"
+ ."\n"
+ .'The value of the `Statistics` parameter varies with the cloud service. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ ],
+ ],
+ 'Critical' => [
+ 'description' => 'The conditions for triggering Critical-level alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold for Critical-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'Threshold' => [
+ 'description' => 'The threshold for Critical-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical method for Critical-level alerts.'."\n"
+ ."\n"
+ .'The value of the `Statistics` parameter varies with the cloud service. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Labels' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Labels' => [
+ 'description' => 'The tags of the alert template.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key of the alert template.'."\n",
+ 'type' => 'string',
+ 'example' => 'label1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value of the alert template.'."\n",
+ 'type' => 'string',
+ 'example' => 'value1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SilenceTime' => [
+ 'type' => 'integer',
+ 'format' => 'int32',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"8F3A82AD-DA92-52B0-8EC6-C059D1C3839F\\",\\n \\"Success\\": true,\\n \\"Resource\\": {\\n \\"Description\\": \\"ECS模板\\",\\n \\"Name\\": \\"ECS_Template1\\",\\n \\"RestVersion\\": \\"1\\",\\n \\"TemplateId\\": \\"70****\\",\\n \\"AlertTemplates\\": {\\n \\"AlertTemplate\\": [\\n {\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"Selector\\": \\"{\\\\\\"disk\\\\\\":\\\\\\"/\\\\\\"}\\",\\n \\"Webhook\\": \\"https://www.aliyun.com\\",\\n \\"Namespace\\": \\"acs_ecs_dashboard\\",\\n \\"Category\\": \\"ecs\\",\\n \\"RuleName\\": \\"ECS_Rule\\",\\n \\"NoDataPolicy\\": \\"KEEP_LAST_STATE\\",\\n \\"Escalations\\": {\\n \\"Info\\": {\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"Times\\": 3,\\n \\"Threshold\\": \\"90\\",\\n \\"Statistics\\": \\"Average\\"\\n },\\n \\"Warn\\": {\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"Times\\": 3,\\n \\"Threshold\\": \\"90\\",\\n \\"Statistics\\": \\"Average\\"\\n },\\n \\"Critical\\": {\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"Times\\": 5,\\n \\"Threshold\\": \\"90\\",\\n \\"Statistics\\": \\"Average\\"\\n }\\n },\\n \\"Labels\\": {\\n \\"Labels\\": [\\n {\\n \\"Key\\": \\"label1\\",\\n \\"Value\\": \\"value1\\"\\n }\\n ]\\n },\\n \\"SilenceTime\\": 3600\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricRuleTemplateAttributeResponse>\\r\\n\\t<RequestId>8F3A82AD-DA92-52B0-8EC6-C059D1C3839F</RequestId>\\r\\n\\t<Resource>\\r\\n\\t\\t<AlertTemplates>\\r\\n\\t\\t\\t<AlertTemplate>\\r\\n\\t\\t\\t\\t<MetricName>cpu_total</MetricName>\\r\\n\\t\\t\\t\\t<Category>ecs</Category>\\r\\n\\t\\t\\t\\t<Escalations>\\r\\n\\t\\t\\t\\t\\t<Critical>\\r\\n\\t\\t\\t\\t\\t\\t<ComparisonOperator>GreaterThanOrEqualToThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t\\t\\t<Times>5</Times>\\r\\n\\t\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t\\t<Threshold>90</Threshold>\\r\\n\\t\\t\\t\\t\\t</Critical>\\r\\n\\t\\t\\t\\t\\t<Info />\\r\\n\\t\\t\\t\\t\\t<Warn />\\r\\n\\t\\t\\t\\t</Escalations>\\r\\n\\t\\t\\t\\t<CompositeExpression />\\r\\n\\t\\t\\t\\t<Webhook></Webhook>\\r\\n\\t\\t\\t\\t<Namespace>acs_ecs_dashboard</Namespace>\\r\\n\\t\\t\\t\\t<RuleName>ECS_Rule</RuleName>\\r\\n\\t\\t\\t\\t<Selector />\\r\\n\\t\\t\\t</AlertTemplate>\\r\\n\\t\\t</AlertTemplates>\\r\\n\\t\\t<Description></Description>\\r\\n\\t\\t<RestVersion>1</RestVersion>\\r\\n\\t\\t<TemplateId>70****</TemplateId>\\r\\n\\t\\t<Name>ECS_Template1</Name>\\r\\n\\t</Resource>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeMetricRuleTemplateAttributeResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeMetricRuleTemplateAttribute',
+ 'description' => 'This topic provides an example on how to query the details of an alert template whose ID is `70****`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMetricRuleTemplateList' => [
+ 'summary' => 'Queries alert templates.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert template.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Template1',
+ ],
+ ],
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword of the alert template name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'TemplateId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert template.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '70****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'History',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to display the history of applying the alert templates to application groups. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false (default)'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'Order',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The sorting order. Valid values:'."\n"
+ ."\n"
+ .'* true (default): ascending order'."\n"
+ .'* false: descending order'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'OrderBy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The sorting basis. Valid values:'."\n"
+ ."\n"
+ .'* gmtMotified: sorts alert templates by modification time'."\n"
+ .'* gmtCreate (default): sorts alert templates by creation time'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gmtCreate',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '659401C0-6214-5C02-972A-CFA929D717B7',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '2',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Templates' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Template' => [
+ 'description' => 'The queried alert templates.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Description' => [
+ 'description' => 'The description of the alert template.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'GmtCreate' => [
+ 'description' => 'The timestamp when the alert template was created.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1646018798000',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the alert template.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Template1',
+ ],
+ 'RestVersion' => [
+ 'description' => 'The version of the alert template.'."\n"
+ ."\n"
+ .'Default value: 0.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'GmtModified' => [
+ 'description' => 'The timestamp when the alert template was modified.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1646054798000',
+ ],
+ 'TemplateId' => [
+ 'description' => 'The ID of the alert template.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '70****',
+ ],
+ 'ApplyHistories' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ApplyHistory' => [
+ 'description' => 'The history of applying the alert templates to application groups.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3607****',
+ ],
+ 'GroupName' => [
+ 'description' => 'The name of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Group',
+ ],
+ 'ApplyTime' => [
+ 'description' => 'The timestamp when the alert template was applied to the application group.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1646055898000',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"659401C0-6214-5C02-972A-CFA929D717B7\\",\\n \\"Total\\": 2,\\n \\"Success\\": true,\\n \\"Templates\\": {\\n \\"Template\\": [\\n {\\n \\"Description\\": \\"ECS的CPU使用率\\",\\n \\"GmtCreate\\": 1646018798000,\\n \\"Name\\": \\"ECS_Template1\\",\\n \\"RestVersion\\": 0,\\n \\"GmtModified\\": 1646054798000,\\n \\"TemplateId\\": 0,\\n \\"ApplyHistories\\": {\\n \\"ApplyHistory\\": [\\n {\\n \\"GroupId\\": 0,\\n \\"GroupName\\": \\"ECS_Group\\",\\n \\"ApplyTime\\": 1646055898000\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricRuleTemplateListResponse>\\r\\n\\t<RequestId>659401C0-6214-5C02-972A-CFA929D717B7</RequestId>\\r\\n\\t<Total>2</Total>\\r\\n\\t<Templates>\\r\\n\\t\\t<Template>\\r\\n\\t\\t\\t<GmtCreate>1606291110000</GmtCreate>\\r\\n\\t\\t\\t<Description></Description>\\r\\n\\t\\t\\t<GmtModified>1646018798000</GmtModified>\\r\\n\\t\\t\\t<RestVersion>0</RestVersion>\\r\\n\\t\\t\\t<TemplateId>70****</TemplateId>\\r\\n\\t\\t\\t<Name>ECS_Template1</Name>\\r\\n\\t\\t</Template>\\r\\n\\t\\t<Template>\\r\\n\\t\\t\\t<GmtCreate>1607420429000</GmtCreate>\\r\\n\\t\\t\\t<Description></Description>\\r\\n\\t\\t\\t<GmtModified>1646017352000</GmtModified>\\r\\n\\t\\t\\t<RestVersion>1</RestVersion>\\r\\n\\t\\t\\t<TemplateId>71****</TemplateId>\\r\\n\\t\\t\\t<Name>ECS_Template2</Name>\\r\\n\\t\\t</Template>\\r\\n\\t</Templates>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeMetricRuleTemplateListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeMetricRuleTemplateList',
+ 'description' => 'This topic provides an example on how to query alert templates. In this example, the following alert templates are returned in the response: `ECS_Template1` and `ECS_Template2`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ApplyMetricRuleTemplate' => [
+ 'summary' => 'Applies an alert template to an application group to generate an alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SilenceTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mute period during which notifications are not repeatedly sent for an alert. Unit: seconds. Default value: 86400.'."\n"
+ ."\n"
+ .'> Only one alert notification is sent during each mute period even if the metric value exceeds the alert threshold several times.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '86400',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group to which the alert template is applied.'."\n"
+ ."\n"
+ .'For more information about how to query the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'TemplateIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert template.'."\n"
+ ."\n"
+ .'For more information about how to query the IDs of alert templates, see [DescribeMetricRuleTemplateList](~~114982~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '700****',
+ ],
+ ],
+ [
+ 'name' => 'EnableStartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The beginning of the time period during which the alert rule is effective. Valid values: 00 to 23. A value of 00 indicates 00:00 and a value of 23 indicates 23:00.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '00',
+ ],
+ ],
+ [
+ 'name' => 'EnableEndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time period during which the alert rule is effective. Valid values: 00 to 23. A value of 00 indicates 00:59 and a value of 23 indicates 23:59.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '23',
+ ],
+ ],
+ [
+ 'name' => 'NotifyLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert notification method. Valid values:'."\n"
+ ."\n"
+ .'Set the value to 4. A value of 4 indicates that alert notifications are sent by using TradeManager and DingTalk chatbots.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'ApplyMode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mode in which the alert template is applied. Valid values:'."\n"
+ ."\n"
+ .'* GROUP_INSTANCE_FIRST: The metrics in the application group take precedence. If a metric specified in the alert template does not exist in the application group, the system does not generate an alert rule for the metric based on the alert template.'."\n"
+ .'* ALARM_TEMPLATE_FIRST: The metrics specified in the alert template take precedence. If a metric specified in the alert template does not exist in the application group, the system still generates an alert rule for the metric based on the alert template.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GROUP_INSTANCE_FIRST',
+ ],
+ ],
+ [
+ 'name' => 'Webhook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The callback URL to which a POST request is sent when an alert is triggered based on the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'AppendMode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The template application policy. Valid values:'."\n"
+ ."\n"
+ .'* all (default): deletes all the rules that are created by using the alert template from the selected application group, and then creates alert rules based on the template.'."\n"
+ .'* append: deletes the rules that are created by using the alert template from the selected application group, and then creates alert rules based on the existing template.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'all',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3F897F3C-020A-4993-95B4-63ABB84F83E6',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resource' => [
+ 'description' => 'The resources that are affected by the alert rule.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123456',
+ ],
+ 'AlertResults' => [
+ 'description' => 'The details of the generated alert rule.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'alert rule is creating, please wait a few minutes.',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'test123',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'applyTemplate8ab74c6b-9f27-47ab-8841-de01dc08****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"3F897F3C-020A-4993-95B4-63ABB84F83E6\\",\\n \\"Success\\": true,\\n \\"Resource\\": {\\n \\"GroupId\\": 123456,\\n \\"AlertResults\\": [\\n {\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"alert rule is creating, please wait a few minutes.\\",\\n \\"Success\\": true,\\n \\"RuleName\\": \\"test123\\",\\n \\"RuleId\\": \\"applyTemplate8ab74c6b-9f27-47ab-8841-de01dc08****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ApplyMetricRuleTemplateResponse>\\r\\n\\t<RequestId>37D4037E-827E-4E66-87DF-F56A22F2884D</RequestId>\\r\\n\\t<Resource>\\r\\n\\t\\t<GroupId>123456</GroupId>\\r\\n\\t\\t<AlertResults>\\r\\n\\t\\t\\t<Message>alert rule is creating, please wait a few minutes.</Message>\\r\\n\\t\\t\\t<RuleId>applyTemplate8ab74c6b-9f27-47ab-8841-de01dc08****</RuleId>\\r\\n\\t\\t\\t<Code>202</Code>\\r\\n\\t\\t\\t<RuleName>test123</RuleName>\\r\\n\\t\\t\\t<Success>true</Success>\\r\\n\\t\\t</AlertResults>\\r\\n\\t</Resource>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</ApplyMetricRuleTemplateResponse>","errorExample":""}]',
+ 'title' => 'ApplyMetricRuleTemplate',
+ 'description' => 'In this example, the `700****` alert template is applied to the `123456` application group. For the generated alert rule, the ID is `applyTemplate8ab74c6b-9f27-47ab-8841-de01dc08****`, and the name is `test123`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMetricRuleList' => [
+ 'summary' => 'Queries alert rules.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the metric.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a metric, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'EnableState',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to query enabled or disabled alert rules. Valid values:'."\n"
+ ."\n"
+ .'* true: queries enabled alert rules.'."\n"
+ .'* false: queries disabled alert rules.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For information about how to obtain the namespace of a cloud service, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'Page',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number of the page to return.'."\n"
+ ."\n"
+ .'Minimum value: 1. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries to return on each page.'."\n"
+ ."\n"
+ .'Minimum value: 1. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'AlertState',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of the alert rule. Valid values:'."\n"
+ ."\n"
+ .'* OK: The alert rule has no active alerts.'."\n"
+ .'* ALARM: The alert rule has active alerts.'."\n"
+ .'* INSUFFICIENT_DATA: No data is available.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'OK',
+ ],
+ ],
+ [
+ 'name' => 'Dimensions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The monitoring dimensions of the specified resource.'."\n"
+ ."\n"
+ .'Set the value to a collection of `key:value` pairs. Example: `{"userId":"120886317861****"}` or `{"instanceId":"i-2ze2d6j5uhg20x47****"}`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"instanceId":"i-2ze2d6j5uhg20x47****"}',
+ ],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n"
+ ."\n"
+ .'This parameter supports fuzzy match.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Rule_01',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7301****',
+ ],
+ ],
+ [
+ 'name' => 'RuleIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule. You can specify up to 20 IDs at a time. Separate multiple IDs with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call is successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '386C6712-335F-5054-930A-CC92B851ECBA',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of returned entries.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call is successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call is successful.'."\n"
+ .'* false: The call fails.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Alarms' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Alarm' => [
+ 'description' => 'The queried alert rules.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alert notifications are not sent even if the trigger conditions are met. Unit: seconds. Default value: 86400. Minimum value: 3600.'."\n"
+ ."\n"
+ .'Only one alert is reported during each mute period even if the metric value consecutively exceeds the alert rule threshold several times.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '86400',
+ ],
+ 'MetricName' => [
+ 'description' => 'The name of the metric.'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL. CloudMonitor pushes an alert notification to the specified callback URL by sending an HTTP POST request. Only the HTTP protocol is supported.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://www.aliyun.com',
+ ],
+ 'ContactGroups' => [
+ 'description' => 'The alert contact group.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Alarm',
+ ],
+ 'SourceType' => [
+ 'description' => 'The type of the alert rule. Valid value: METRIC. This value indicates an alert rule for time series metrics.'."\n",
+ 'type' => 'string',
+ 'example' => 'METRIC',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'MailSubject' => [
+ 'description' => 'The subject of the alert notification email.'."\n",
+ 'type' => 'string',
+ 'example' => '"${serviceType}-${metricName}-${levelDescription}Notification(${dimensions})"'."\n",
+ ],
+ 'NoEffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is ineffective.'."\n",
+ 'type' => 'string',
+ 'example' => '00:00-05:30',
+ ],
+ 'EffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is effective.'."\n",
+ 'type' => 'string',
+ 'example' => '05:31-23:59',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'Rule_01',
+ ],
+ 'AlertState' => [
+ 'description' => 'The status of the alert rule. Valid values:'."\n"
+ ."\n"
+ .'* OK: The alert rule has no active alerts.'."\n"
+ .'* ALARM: The alert rule has active alerts.'."\n"
+ .'* INSUFFICIENT_DATA: No data is available.'."\n",
+ 'type' => 'string',
+ 'example' => 'OK',
+ ],
+ 'Period' => [
+ 'description' => 'The statistical period.'."\n",
+ 'type' => 'string',
+ 'example' => '60',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****',
+ ],
+ 'GroupName' => [
+ 'description' => 'The name of the application group.'."\n"
+ ."\n"
+ .'> If the alert rule is associated with an application group, the name of the application group is returned in this parameter.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Group',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '7301****',
+ ],
+ 'Dimensions' => [
+ 'description' => 'The dimensions of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"instanceId":"i-2ze2d6j5uhg20x47****"}]',
+ ],
+ 'EnableState' => [
+ 'description' => 'Indicates whether the alert rule is enabled. Valid values:'."\n"
+ ."\n"
+ .'* true: The alert rule is enabled.'."\n"
+ .'* false: The alert rule is disabled.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resources' => [
+ 'description' => 'The resources that are associated with the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => '[{\\"instanceId\\":\\"i-2ze2d6j5uhg20x47****\\"}]',
+ ],
+ 'Escalations' => [
+ 'description' => 'The conditions for triggering different levels of alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Info' => [
+ 'description' => 'The conditions for triggering Info-level alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'PreCondition' => [
+ 'description' => 'The additional conditions for triggering Info-level alerts. The additional conditions take effect when the value of the ComparisonOperator parameter is GreaterThanYesterday, LessThanYesterday, GreaterThanLastWeek, LessThanLastWeek, GreaterThanLastPeriod, or LessThanLastPeriod.'."\n"
+ ."\n"
+ .'For example, the values of the PreCondition, ComparisonOperator, and Threshold parameters are set to $Average>80, GreaterThanYesterday, and 10, respectively. An alert is triggered only when the average metric value is greater than 80 and 10% greater than the average metric value at the same time yesterday.'."\n"
+ ."\n"
+ .'> $Average is a placeholder that consists of `a dollar sign ($) and the statistical method`. CloudMonitor replaces the placeholder with the aggregated value or original value before value comparison.'."\n",
+ 'type' => 'string',
+ 'example' => '$Average>80',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an Info-level alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'Threshold' => [
+ 'description' => 'The threshold for Info-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical methods for Info-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ ],
+ ],
+ 'Warn' => [
+ 'description' => 'The conditions for triggering Warn-level alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'PreCondition' => [
+ 'description' => 'The additional conditions for triggering Warn-level alerts. The additional conditions take effect when the value of the ComparisonOperator parameter is GreaterThanYesterday, LessThanYesterday, GreaterThanLastWeek, LessThanLastWeek, GreaterThanLastPeriod, or LessThanLastPeriod.'."\n"
+ ."\n"
+ .'For example, the values of the PreCondition, ComparisonOperator, and Threshold parameters are set to $Average>80, GreaterThanYesterday, and 10, respectively. An alert is triggered only when the average metric value is greater than 80 and 10% greater than the average metric value at the same time yesterday.'."\n"
+ ."\n"
+ .'> $Average is a placeholder that consists of `a dollar sign ($) and the statistical method`. CloudMonitor replaces the placeholder with the aggregated value or original value before value comparison.'."\n",
+ 'type' => 'string',
+ 'example' => '$Average>80',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Warn-level alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'Threshold' => [
+ 'description' => 'The threshold for Warn-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical methods for Warn-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ ],
+ ],
+ 'Critical' => [
+ 'description' => 'The conditions for triggering Critical-level alerts.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'PreCondition' => [
+ 'description' => 'The additional conditions for triggering Critical-level alerts. The additional conditions take effect when the value of the ComparisonOperator parameter is GreaterThanYesterday, LessThanYesterday, GreaterThanLastWeek, LessThanLastWeek, GreaterThanLastPeriod, or LessThanLastPeriod.'."\n"
+ ."\n"
+ .'For example, the values of the PreCondition, ComparisonOperator, and Threshold parameters are set to $Average>80, GreaterThanYesterday, and 10, respectively. An alert is triggered only when the average metric value is greater than 80 and 10% greater than the average metric value at the same time yesterday.'."\n"
+ ."\n"
+ .'> $Average is a placeholder that consists of `a dollar sign ($) and the statistical method`. CloudMonitor replaces the placeholder with the aggregated value or original value before value comparison.'."\n",
+ 'type' => 'string',
+ 'example' => '$Average>80',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'Threshold' => [
+ 'description' => 'The threshold for Critical-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical methods for Critical-level alerts.'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'NoDataPolicy' => [
+ 'description' => 'The method that is used to handle alerts when no monitoring data is found. Valid values:'."\n"
+ ."\n"
+ .'* KEEP_LAST_STATE (default value): No operation is performed.'."\n"
+ .'* INSUFFICIENT_DATA: An alert whose content is "Insufficient data" is triggered.'."\n"
+ .'* OK: The status is considered normal.'."\n",
+ 'type' => 'string',
+ 'example' => 'KEEP_LAST_STATE',
+ ],
+ 'CompositeExpression' => [
+ 'description' => 'The trigger conditions for multiple metrics.'."\n"
+ ."\n"
+ .'> The trigger conditions for a single metric and multiple metrics are mutually exclusive. You cannot specify trigger conditions for a single metric and multiple metrics at the same time.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ .'* WARN'."\n"
+ .'* INFO'."\n",
+ 'type' => 'string',
+ 'example' => 'Critical',
+ ],
+ 'ExpressionList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ExpressionList' => [
+ 'description' => 'The trigger conditions that are created in standard mode.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric that is used to monitor the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'Period' => [
+ 'description' => 'The aggregation period of the metric.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical method of the metric. Valid values:'."\n"
+ ."\n"
+ .'* $Maximum: the maximum value'."\n"
+ .'* $Minimum: the minimum value'."\n"
+ .'* $Average: the average value'."\n"
+ .'* $Availability: the availability rate (usually used for site monitoring)'."\n"
+ ."\n"
+ .'> `$` is the prefix of the metric. For information about the Alibaba Cloud services that are supported by CloudMonitor, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'example' => '$Maximum',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ExpressionListJoin' => [
+ 'description' => 'The relationship between the trigger conditions for multiple metrics. Valid values:'."\n"
+ ."\n"
+ .'* `&&`: An alert is triggered only if all metrics meet the trigger conditions. An alert is triggered only if the results of all expressions specified in the ExpressionList parameter are `true`.'."\n"
+ .'* `||`: An alert is triggered if one of the metrics meets the trigger conditions.'."\n",
+ 'type' => 'string',
+ 'example' => '||',
+ ],
+ 'ExpressionRaw' => [
+ 'description' => 'The trigger conditions that are created by using expressions. You can use expressions to create trigger conditions in the following scenarios:'."\n"
+ ."\n"
+ .'* Set an alert blacklist for specific resources. For example, if you specify `$instanceId != \'i-io8kfvcpp7x5****\' ``&&`` $Average > 50`, no alert is triggered when the `average metric value` of the `i-io8kfvcpp7x5****` instance exceeds 50.'."\n"
+ .'* Set a special alert threshold for a specified instance in the rule. For example, if you specify `$Average > ($instanceId == \'i-io8kfvcpp7x5****\'? 80: 50)`, an alert is triggered when the `average metric value` of the `i-io8kfvcpp7x5****` instance exceeds 80 or the `average metric value` of other instances exceeds 50.'."\n"
+ .'* Limit the number of instances whose metric values exceed the threshold. For example, if you specify `count($Average > 20) > 3`, an alert is triggered only when the number of instances whose `average metric value` exceeds 20 exceeds three.'."\n",
+ 'type' => 'string',
+ 'example' => '$Average > ($instanceId == \'i-io8kfvcpp7x5****\'? 80: 50)',
+ ],
+ 'Times' => [
+ 'description' => 'The number of consecutive triggers. If the number of times that the metric values meet the trigger conditions reaches the value of this parameter, CloudMonitor sends alert notifications.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ ],
+ ],
+ 'Labels' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Labels' => [
+ 'description' => 'The tags of the alert rule.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'cmsRuleKey',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'cmsRuleValue',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Prometheus' => [
+ 'description' => 'The Prometheus alerts.'."\n"
+ ."\n"
+ .'> This parameter is required only if you create a Prometheus alert rule for Hybrid Cloud Monitoring.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'PromQL' => [
+ 'description' => 'The PromQL query statement.'."\n"
+ ."\n"
+ .'> The data obtained by using the PromQL query statement is the monitoring data. You must include the alert threshold in this statement.'."\n",
+ 'type' => 'string',
+ 'example' => 'CpuUsage{instanceId="xxxx"}[1m]>90',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ .'* WARN'."\n"
+ .'* INFO'."\n",
+ 'type' => 'string',
+ 'example' => 'Critical',
+ ],
+ 'Times' => [
+ 'description' => 'The number of consecutive triggers. If the number of times that the metric values meet the trigger conditions reaches the value of this parameter, CloudMonitor sends alert notifications.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3',
+ ],
+ 'Annotations' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Annotations' => [
+ 'description' => 'The annotations of the Prometheus alert rule. When a Prometheus alert is triggered, the system renders the annotated keys and values to help you understand the metrics and alert rule.'."\n"
+ ."\n"
+ .'> This parameter is equivalent to the annotations parameter of open source Prometheus.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The key of the annotation.'."\n",
+ 'type' => 'string',
+ 'example' => 'summary',
+ ],
+ 'Value' => [
+ 'description' => 'The value of the annotation.'."\n",
+ 'type' => 'string',
+ 'example' => '{{ $labels.instance }} CPU usage above 10% {current value: {{ humanizePercentage $value }} }',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ProductCategory' => [
+ 'type' => 'string',
+ ],
+ 'GmtCreate' => [
+ 'type' => 'integer',
+ 'format' => 'int64',
+ ],
+ 'GmtUpdate' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'Invalid parameter.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'The Request is not authorization.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"386C6712-335F-5054-930A-CC92B851ECBA\\",\\n \\"Total\\": \\"1\\",\\n \\"Success\\": true,\\n \\"Alarms\\": {\\n \\"Alarm\\": [\\n {\\n \\"SilenceTime\\": 86400,\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"Webhook\\": \\"https://www.aliyun.com\\",\\n \\"ContactGroups\\": \\"ECS_Alarm\\",\\n \\"SourceType\\": \\"METRIC\\",\\n \\"Namespace\\": \\"acs_ecs_dashboard\\",\\n \\"MailSubject\\": \\"\\\\\\"${serviceType}-${metricName}-${levelDescription}通知(${dimensions})\\\\\\"\\",\\n \\"NoEffectiveInterval\\": \\"00:00-05:30\\",\\n \\"EffectiveInterval\\": \\"05:31-23:59\\",\\n \\"RuleName\\": \\"Rule_01\\",\\n \\"AlertState\\": \\"OK\\",\\n \\"Period\\": \\"60\\",\\n \\"RuleId\\": \\"applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****\\",\\n \\"GroupName\\": \\"ECS_Group\\",\\n \\"GroupId\\": \\"7301****\\",\\n \\"Dimensions\\": \\"[{\\\\\\"instanceId\\\\\\":\\\\\\"i-2ze2d6j5uhg20x47****\\\\\\"}]\\",\\n \\"EnableState\\": true,\\n \\"Resources\\": \\"[{\\\\\\\\\\\\\\"instanceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"i-2ze2d6j5uhg20x47****\\\\\\\\\\\\\\"}]\\",\\n \\"Escalations\\": {\\n \\"Info\\": {\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"PreCondition\\": \\"$Average>80\\",\\n \\"Times\\": 3,\\n \\"Threshold\\": \\"90\\",\\n \\"Statistics\\": \\"Average\\"\\n },\\n \\"Warn\\": {\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"PreCondition\\": \\"$Average>80\\",\\n \\"Times\\": 3,\\n \\"Threshold\\": \\"90\\",\\n \\"Statistics\\": \\"Average\\"\\n },\\n \\"Critical\\": {\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"PreCondition\\": \\"$Average>80\\",\\n \\"Times\\": 3,\\n \\"Threshold\\": \\"90\\",\\n \\"Statistics\\": \\"Average\\"\\n }\\n },\\n \\"NoDataPolicy\\": \\"KEEP_LAST_STATE\\",\\n \\"CompositeExpression\\": {\\n \\"Level\\": \\"CRITICAL\\",\\n \\"ExpressionList\\": {\\n \\"ExpressionList\\": [\\n {\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"Period\\": 60,\\n \\"Statistics\\": \\"$Maximum\\",\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"Threshold\\": \\"90\\"\\n }\\n ]\\n },\\n \\"ExpressionListJoin\\": \\"||\\",\\n \\"ExpressionRaw\\": \\"$Average > ($instanceId == \'i-io8kfvcpp7x5****\'? 80: 50)\\",\\n \\"Times\\": 3\\n },\\n \\"Labels\\": {\\n \\"Labels\\": [\\n {\\n \\"Key\\": \\"cmsRuleKey\\",\\n \\"Value\\": \\"cmsRuleValue\\"\\n }\\n ]\\n },\\n \\"Prometheus\\": {\\n \\"PromQL\\": \\"CpuUsage{instanceId=\\\\\\"xxxx\\\\\\"}[1m]>90\\",\\n \\"Level\\": \\"CRITICAL\\",\\n \\"Times\\": 3,\\n \\"Annotations\\": {\\n \\"Annotations\\": [\\n {\\n \\"Key\\": \\"summary\\",\\n \\"Value\\": \\"{{ $labels.instance }} CPU usage above 10% {current value: {{ humanizePercentage $value }} }\\"\\n }\\n ]\\n }\\n },\\n \\"ProductCategory\\": \\"slb\\",\\n \\"GmtCreate\\": 1760432061000,\\n \\"GmtUpdate\\": \\"1760432061000\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricRuleListResponse>\\r\\n\\t<RequestId>386C6712-335F-5054-930A-CC92B851ECBA</RequestId>\\r\\n\\t<Total>1</Total>\\r\\n\\t<Alarms>\\r\\n\\t\\t<Alarm>\\r\\n\\t\\t\\t<GroupName>ECS_Group</GroupName>\\r\\n\\t\\t\\t<SilenceTime>86400</SilenceTime>\\r\\n\\t\\t\\t<ContactGroups>ECS_Alarm</ContactGroups>\\r\\n\\t\\t\\t<NoEffectiveInterval>00:00-05:30</NoEffectiveInterval>\\r\\n\\t\\t\\t<GroupBy>group</GroupBy>\\r\\n\\t\\t\\t<MailSubject>${serviceType}-${metricName}-${levelDescription}通知(${dimensions})</MailSubject>\\r\\n\\t\\t\\t<SourceType>METRIC</SourceType>\\r\\n\\t\\t\\t<RuleId>applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****</RuleId>\\r\\n\\t\\t\\t<Period>60</Period>\\r\\n\\t\\t\\t<Dimensions>\\r\\n\\t\\t\\t\\t<instanceId>i-2ze2d6j5uhg20x47****</instanceId>\\r\\n\\t\\t\\t</Dimensions>\\r\\n\\t\\t\\t<EffectiveInterval>05:31-23:59</EffectiveInterval>\\r\\n\\t\\t\\t<Namespace>acs_ecs_dashboard</Namespace>\\r\\n\\t\\t\\t<AlertState>OK</AlertState>\\r\\n\\t\\t\\t<GroupId>7301****</GroupId>\\r\\n\\t\\t\\t<MetricName>cpu_total</MetricName>\\r\\n\\t\\t\\t<EnableState>true</EnableState>\\r\\n\\t\\t\\t<Escalations>\\r\\n\\t\\t\\t\\t<Critical>\\r\\n\\t\\t\\t\\t\\t<ComparisonOperator>GreaterThanOrEqualToThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t\\t<Times>3</Times>\\r\\n\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t<Threshold>90</Threshold>\\r\\n\\t\\t\\t\\t</Critical>\\r\\n\\t\\t\\t\\t<Info>\\r\\n\\t\\t\\t\\t\\t<ComparisonOperator>GreaterThanOrEqualToThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t\\t<Times>3</Times>\\r\\n\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t<Threshold>90</Threshold>\\r\\n\\t\\t\\t\\t</Info>\\r\\n\\t\\t\\t\\t<Warn>\\r\\n\\t\\t\\t\\t\\t<ComparisonOperator>GreaterThanOrEqualToThreshold</ComparisonOperator>\\r\\n\\t\\t\\t\\t\\t<Times>3</Times>\\r\\n\\t\\t\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t\\t\\t<Threshold>90</Threshold>\\r\\n\\t\\t\\t\\t</Warn>\\r\\n\\t\\t\\t</Escalations>\\r\\n\\t\\t\\t<Webhook>https://www.aliyun.com</Webhook>\\r\\n\\t\\t\\t<Resources>[{\\\\\\"instanceId\\\\\\":\\\\\\"i-2ze2d6j5uhg20x47****\\\\\\"}]</Resources>\\r\\n\\t\\t\\t<RuleName>Rule_01</RuleName>\\r\\n\\t\\t</Alarm>\\r\\n\\t</Alarms>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeMetricRuleListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeMetricRuleList',
+ 'description' => 'This topic provides an example on how to query all alert rules within your Alibaba Cloud account. The returned result shows that only one alert rule is found. The name of the alert rule is `Rule_01` and the ID is `applyTemplate344cfd42-0f32-4fd6-805a-88d7908a****`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateGroupMetricRules' => [
+ 'summary' => 'Creates one or more alert rules for a specified application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'GroupMetricRules',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The statistical methods for Warn-level alerts. Separate multiple statistical methods with commas (,). Valid values of N: 1 to 200. Valid value:'."\n"
+ ."\n"
+ .'* Average: the average value'."\n"
+ .'* Minimum: the minimum value'."\n"
+ .'* Maximum: the maximum value'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Escalations.Info.Threshold' => [
+ 'description' => 'The threshold for Info-level alerts. Valid values of N: 1 to 200.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ 'MetricName' => [
+ 'description' => 'The name of the metric. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a metric, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cpu_total',
+ ],
+ 'Escalations.Warn.Threshold' => [
+ 'description' => 'The threshold for Warn-level alerts. Valid values of N: 1 to 200.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ 'EffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is effective. Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '05:31-23:59',
+ ],
+ 'NoEffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is ineffective. Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-05:30',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule. Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '456789',
+ ],
+ 'Escalations.Critical.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered. Valid values of N: 1 to 200.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Dimensions' => [
+ 'description' => 'The dimension of the alert rule. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'Set the value to a set of key-value pairs, for example, `userId:120886317861****` or `instanceId:i-m5e1qg6uo38rztr4****`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"instanceId":"i-m5e1qg6uo38rztr4****"}]',
+ ],
+ 'Escalations.Critical.Threshold' => [
+ 'description' => 'The threshold for Critical-level alerts. Valid values of N: 1 to 200.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ 'Escalations.Critical.Statistics' => [
+ 'description' => 'The statistical methods for Critical-level alerts. Separate multiple statistical methods with commas (,). Valid values of N: 1 to 200. Valid value: '."\n"
+ ."\n"
+ .'- Average: the average value'."\n"
+ .'- Minimum: the minimum value'."\n"
+ .'- Maximum: the maximum value',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Escalations.Warn.ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold. Valid values of N: 1 to 200. Valid value: '."\n"
+ ."\n"
+ .'- GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'- GreaterThanThreshold: greater than the threshold'."\n"
+ .'- LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'- LessThanThreshold: less than the threshold'."\n"
+ .'- NotEqualToThreshold: not equal to the threshold'."\n"
+ .'- GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'- LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'- GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'- LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'- GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'- LessThanLastPeriod: less than the metric value in the last monitoring cycle',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Escalations.Info.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an Info-level alert is triggered. Valid values of N: 1 to 200.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alerts are not sent even if the trigger conditions are met. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'Unit: seconds. Default value: 86400. Minimum value: 3600.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '86400',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'The callback URL must be accessible over the Internet. CloudMonitor pushes an alert notification to the specified callback URL by sending an HTTP POST request. Only the HTTP protocol is supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For information about how to obtain the namespace of a cloud service, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'EmailSubject' => [
+ 'description' => 'The subject of the alert notification email. Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'Period' => [
+ 'description' => 'The aggregation period of the metric data. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'Set the `Period` parameter to an integral multiple of 60. Unit: seconds. Default value: 300.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule. Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS_Rule1',
+ ],
+ 'Escalations.Info.Statistics' => [
+ 'description' => 'The statistical methods for Info-level alerts. Separate multiple statistical methods with commas (,). Valid values of N: 1 to 200. Valid value: '."\n"
+ ."\n"
+ .'- Average: the average value'."\n"
+ .'- Minimum: the minimum value'."\n"
+ .'- Maximum: the maximum value',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Escalations.Warn.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Warn-level alert is triggered. Valid values of N: 1 to 200.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Escalations.Info.ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold. Valid values of N: 1 to 200. Valid value: '."\n"
+ ."\n"
+ .'- GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'- GreaterThanThreshold: greater than the threshold'."\n"
+ .'- LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'- LessThanThreshold: less than the threshold'."\n"
+ .'- NotEqualToThreshold: not equal to the threshold'."\n"
+ .'- GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'- LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'- GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'- LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'- GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'- LessThanLastPeriod: less than the metric value in the last monitoring cycle',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Interval' => [
+ 'description' => 'The interval at which CloudMonitor checks whether the alert rule is triggered. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'Unit: seconds. The default value is the lowest frequency at which the metric is polled.'."\n"
+ ."\n"
+ .'> We recommend that you set the interval to the data aggregation period. If the interval is shorter than the data aggregation period, alerts cannot be triggered due to insufficient data.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ 'Category' => [
+ 'description' => 'The name of the cloud service. Valid values of N: 1 to 200. Valid value:'."\n"
+ ."\n"
+ .'* PolarDB: PolarDB'."\n"
+ .'* NewBGPDDoS: Anti-DDoS Pro'."\n"
+ .'* IoTDevice: IoT Platform'."\n"
+ .'* DRDS: Distributed Relational Database Service (DRDS)'."\n"
+ .'* VS: Video Surveillance System'."\n"
+ .'* AMQP: Alibaba Cloud Message Queue for AMQP'."\n"
+ .'* ADS: AnalyticDB'."\n"
+ .'* APIGateway: API Gateway'."\n"
+ .'* InternetSharedBandwidth: EIP Bandwidth Plan'."\n"
+ .'* CDN: Alibaba Cloud Content Delivery Network (CDN)'."\n"
+ .'* CEN: Cloud Enterprise Network (CEN)'."\n"
+ .'* DCDN: Dynamic Route for CDN (DCDN)'."\n"
+ .'* DDoS: Anti-DDoS'."\n"
+ .'* ECS: Elastic Compute Service (ECS)'."\n"
+ .'* DirectMail: Direct Mail'."\n"
+ .'* Elasticsearch: Elasticsearch'."\n"
+ .'* EMR: E-MapReduce (EMR)'."\n"
+ .'* ESS: Auto Scaling'."\n"
+ .'* FunctionCompute: Function Compute'."\n"
+ .'* RealtimeCompute: Realtime Compute for Apache Flink'."\n"
+ .'* GlobalAcceleration: Global Accelerator (GA)'."\n"
+ .'* Hbase: ApsaraDB for HBase'."\n"
+ .'* TSDB: Time Series Database (TSDB)'."\n"
+ .'* IPv6trans: IPv6 Translation Service'."\n"
+ .'* Kafka: Message Queue for Apache Kafka'."\n"
+ .'* Kubernetes: Container Service for Kubernetes (ACK)'."\n"
+ .'* KVstore: ApsaraDB for Redis'."\n"
+ .'* MNS: Message Service (MNS)'."\n"
+ .'* MongoDB: ApsaraDB for MongoDB'."\n"
+ .'* MQ: Message Queue'."\n"
+ .'* NAT: NAT Gateway'."\n"
+ .'* OpenAd: Open Ad'."\n"
+ .'* OpenSearch: Open Search'."\n"
+ .'* OSS: Object Storage Service (OSS)'."\n"
+ .'* PCDN: P2P CDN'."\n"
+ .'* petadata: HybridDB for MySQL'."\n"
+ .'* RDS: ApsaraDB RDS'."\n"
+ .'* SCDN: Secure CDN'."\n"
+ .'* SLB: Server Load Balancer (SLB)'."\n"
+ .'* SLS: Log Service'."\n"
+ .'* VideoLive: ApsaraVideo Live'."\n"
+ .'* VOD: ApsaraVideo VOD'."\n"
+ .'* EIP: Elastic IP Address (EIP)'."\n"
+ .'* VPN: VPN Gateway'."\n"
+ .'* AIRec: Artificial Intelligence Recommendation'."\n"
+ .'* GPDB: AnalyticDB for PostgreSQL'."\n"
+ .'* DBS: Database Backup (DBS)'."\n"
+ .'* SAG: Smart Access Gateway (SAG)'."\n"
+ .'* Memcache: ApsaraDB for Memcache'."\n"
+ .'* IOT_EDGE: Link IoT Edge'."\n"
+ .'* OCS: ApsaraDB for Memcache (previous version)'."\n"
+ .'* VPC: Express Connect'."\n"
+ .'* EHPC: Elastic High Performance Computing (E-HPC)'."\n"
+ .'* MPS: ApsaraVideo Media Processing'."\n"
+ .'* ENS: Edge Node Service (ENS)'."\n"
+ .'* MaxCompute_Prepay: MaxCompute'."\n"
+ .'* IoT_Kubernetes: Edge Application Hosting'."\n"
+ .'* CMS: CloudMonitor'."\n"
+ .'* batchcomputenew: Batch Compute'."\n"
+ .'* HBaseUE: ApsaraDB for HBase Performance-enhanced Edition'."\n"
+ .'* UIS: Ultimate Internet Service (UIS)'."\n"
+ .'* nls: Intelligent Speech Interaction'."\n"
+ .'* ots: Tablestore'."\n"
+ .'* NAS: File Storage NAS'."\n"
+ .'* ECI: Elastic Container Instance (ECI)'."\n"
+ .'* OpenAPI: OpenAPI Explorer'."\n"
+ .'* pvtzpost: Alibaba Cloud DNS PrivateZone'."\n"
+ .'* blinkonk8s: Flink on Kubernetes'."\n"
+ .'* FunctionFlow: Serverless Workflow (SWF)'."\n"
+ .'* SMC: Server Migration Center (SMC)'."\n"
+ .'* ddosbgp: Anti-DDoS Origin'."\n"
+ .'* baas: Blockchain as a Service'."\n"
+ .'* privatelink: PrivateLink'."\n"
+ .'* cds: ApsaraDB for Cassandra'."\n"
+ .'* DDH: Dedicated Host'."\n"
+ .'* RocketMQ: Message Queue for Apache RocketMQ'."\n"
+ .'* ECC: Express Cloud Connect'."\n"
+ .'* hbaseserverless: ApsaraDB for HBase Serverless Edition'."\n"
+ .'* mns_tmp: Message Service'."\n"
+ .'* hdr: Hybrid Disaster Recovery (HDR)'."\n"
+ .'* hbr: Hybrid Backup Recovery (HBR)'."\n"
+ .'* ADB: AnalyticDB for MySQL V3.0'."\n"
+ .'* tag: Tag Service'."\n"
+ .'* GDB: Graph Database'."\n"
+ .'* WAF: Web Application Firewall (WAF)'."\n"
+ .'* hcs_sgw: Cloud Storage Gateway (CSG)'."\n"
+ .'* ipv6gateway: IPv6 Gateway'."\n"
+ .'* RDS_SAR: ApsaraDB Exclusive Host Group'."\n"
+ .'* learn: Machine Learning Platform for AI'."\n"
+ .'* ROS: Resource Orchestration Service (ROS)'."\n"
+ .'* OOS: Operation Orchestration Service (OOS)'."\n"
+ .'* bds: Data Synchronization for HBase'."\n"
+ .'* cfw: Cloud Firewall'."\n"
+ .'* ddosDip: Anti-DDoS Premium'."\n"
+ .'* datahub: DataHub'."\n"
+ .'* hologres: Hologres'."\n"
+ .'* ExpressConnect: Express Connect'."\n"
+ .'* dbfs: Database File System (DBFS)'."\n"
+ .'* clickhouse: ApsaraDB for ClickHouse'."\n"
+ .'* k8s: Container Service for Kubernetes (ACK)'."\n"
+ .'* DTS: Data Transmission Service (DTS)'."\n"
+ .'* AnycastEIP: Anycast Elastic IP Address'."\n"
+ .'* Lindorm: ApsaraDB for Lindorm'."\n"
+ .'* config: Cloud Config'."\n"
+ .'* spark: Databricks DataInsight (DDI)'."\n"
+ .'* serverless: Serverless App Engine (SAE)'."\n"
+ .'* alb: Application Load Balancer (ALB)'."\n"
+ .'* oceanbase: ApsaraDB for OceanBase'."\n"
+ .'* KMS: Key Management Service (KMS)'."\n"
+ .'* lvwang: Content Moderation'."\n"
+ .'* LinkVisual: LinkVisual'."\n"
+ .'* tair: ApsaraDB for Redis Enhanced Edition (Tair)'."\n"
+ .'* dlf: Data Lake Formation (DLF)'."\n"
+ .'* networkmonitor: Site Monitoring'."\n"
+ .'* pnc: Physical Network Change'."\n"
+ .'* AIS: Alibaba Cloud Infrastructure'."\n"
+ .'* cloudgame: Cloud Gaming Platform'."\n"
+ .'* RTC: Real-Time Communication'."\n"
+ .'* cloudbox: CloudBox'."\n"
+ .'* actiontrail: ActionTrail'."\n"
+ .'* cc: Cloud Connector'."\n"
+ .'* disk: Elastic Block Storage (EBS)'."\n"
+ .'* easygene: Genomics Computing Platform'."\n"
+ .'* cloudphone: Elastic Cloud Phone'."\n"
+ .'* BMS: Bare Metal Management Service'."\n"
+ .'* swas: Simple Application Server'."\n"
+ .'* AvailabilityMonitoring: Availability Monitoring of CloudMonitor',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS',
+ ],
+ 'Escalations.Critical.ComparisonOperator' => [
+ 'description' => 'The comparison operator that is used to compare the metric value with the threshold. Valid values of N: 1 to 200. Valid value: '."\n"
+ ."\n"
+ .'- GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'- GreaterThanThreshold: greater than the threshold'."\n"
+ .'- LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'- LessThanThreshold: less than the threshold'."\n"
+ .'- NotEqualToThreshold: not equal to the threshold'."\n"
+ .'- GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'- LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'- GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'- LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'- GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'- LessThanLastPeriod: less than the metric value in the last monitoring cycle',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Escalations.Warn.Statistics' => [
+ 'description' => 'The statistical methods for Warn-level alerts. Separate multiple statistical methods with commas (,). Valid values of N: 1 to 200. Valid value: '."\n"
+ ."\n"
+ .'- Average: the average value'."\n"
+ .'- Minimum: the minimum value'."\n"
+ .'- Maximum: the maximum value',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'NoDataPolicy' => [
+ 'description' => 'The method that is used to handle alerts when no monitoring data is found. Valid values of N: 1 to 200. Valid value:'."\n"
+ ."\n"
+ .'* KEEP_LAST_STATE (default value): No operation is performed.'."\n"
+ .'* INSUFFICIENT_DATA: An alert whose content is "Insufficient data" is triggered.'."\n"
+ .'* OK: The alert rule has no active alerts.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'KEEP_LAST_STATE',
+ ],
+ 'ContactGroups' => [
+ 'description' => 'The alert contact groups. Valid values of N: 1 to 200.'."\n"
+ ."\n"
+ .'For information about how to obtain alert contact groups, see [DescribeContactGroupList](~~114922~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Group',
+ ],
+ 'Labels' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key of the alert rule. The specified tag is contained in alert notifications.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'key1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value of the alert rule. The specified tag is contained in alert notifications.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 200.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'value1',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ 'Options' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{'."\n"
+ .' "NotSendOK": true'."\n"
+ .'}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 200,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call is successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call is successful. Valid value:'."\n"
+ ."\n"
+ .'- true: The call is successful.'."\n"
+ .'- false: The call fails.',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'AlertResult' => [
+ 'description' => 'The details of the alert rules.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code that is returned for the alert rule.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call is successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message that is returned for the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'Metric not found.',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the alert rule was created. Valid value:'."\n"
+ ."\n"
+ .'- true: The alert rule was created.'."\n"
+ .'- false: The alert rule failed to be created.',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_Rule1',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => '456789',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => '500',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D\\",\\n \\"Success\\": true,\\n \\"Resources\\": {\\n \\"AlertResult\\": [\\n {\\n \\"Code\\": 200,\\n \\"Message\\": \\"Metric not found.\\",\\n \\"Success\\": true,\\n \\"RuleName\\": \\"ECS_Rule1\\",\\n \\"RuleId\\": \\"456789\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateGroupMetricRulesResponse>\\r\\n\\t<RequestId>CED22B00-CFD8-5BDF-A645-CAF7B81FAE45</RequestId>\\r\\n\\t<Resources>\\r\\n\\t\\t<AlertResult>\\r\\n\\t\\t\\t<RuleId>456789</RuleId>\\r\\n\\t\\t\\t<Code>200</Code>\\r\\n\\t\\t\\t<Success>true</Success>\\r\\n\\t\\t\\t<RuleName>ECS_Rule1</RuleName>\\r\\n\\t\\t</AlertResult>\\r\\n\\t</Resources>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</CreateGroupMetricRulesResponse>\\t","errorExample":""}]',
+ 'title' => 'CreateGroupMetricRules',
+ 'description' => 'This topic provides an example to show how to create an alert rule for the `cpu_total` metric of Elastic Compute Service (ECS) in the `123456` application group. The ID of the alert rule is `456789`. The name of the alert rule is `ECS_Rule1`. The alert level is `Critical`. The statistical method is `Average`. The comparison operator is `GreaterThanOrEqualToThreshold`. The alert threshold is `90`. The number of alert retries is `3`. The response shows that the alert rule named `ECS_Rule1` is created.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateMetricRuleResources' => [
+ 'summary' => 'Associates resources with an alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'i-2ze3w55tr2rcpejpcfap_59c96b85-0339-4f35-ba66-ae4e34d3****',
+ ],
+ ],
+ [
+ 'name' => 'Overwrite',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to overwrite existing resources. Valid values:'."\n"
+ ."\n"
+ .'* true: The resources submitted this time overwrite the previously associated resources.'."\n"
+ .'* false: The resources submitted this time do not overwrite the previously associated resources. The associated resources after submission include the previously associated resources and the resources submitted this time.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'Resources',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resources that are associated with the alert rule. Set the value to a JSON array.'."\n"
+ ."\n"
+ .'> You can add up to 100 resources each time. An alert rule can be associated with up to 3,000 resources.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{"instanceId":"i-a2d5q7pm3f9yr29e****"}]',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '0671A721-0D7A-4F11-BB77-2416325D65AB',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true: The request was successful. false: The request failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"0671A721-0D7A-4F11-BB77-2416325D65AB\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'CreateMetricRuleResources',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteMetricRuleTargets' => [
+ 'summary' => 'Delete the push channels of an alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'delete',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'ruleId-xxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'TargetIds',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The resource IDs.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The resource ID. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ ],
+ 'required' => true,
+ 'example' => '12345',
+ 'maxItems' => 5,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'**'."\n"
+ ."\n"
+ .'**Description** The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '786E92D2-AC66-4250-B76F-F1E2FCDDBA1C',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'FailIds' => [
+ 'description' => 'The IDs of the resources that failed to be deleted.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'TargetIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TargetId' => [
+ 'description' => 'The IDs of the resources that failed to be deleted.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The ID of the resource that failed to be deleted.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed because of an unknown error, exception or failure.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"786E92D2-AC66-4250-B76F-F1E2FCDDBA1C\\",\\n \\"Success\\": true,\\n \\"FailIds\\": {\\n \\"TargetIds\\": {\\n \\"TargetId\\": [\\n \\"1\\"\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DeleteMetricRuleTargetsResponse>\\r\\n\\t\\t<RequestId>786E92D2-AC66-4250-B76F-F1E2FCDDBA1C</RequestId>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n\\t\\t<FailIds>\\r\\n\\t\\t\\t<TargetIds>1</TargetIds>\\r\\n\\t\\t</FailIds>\\r\\n</DeleteMetricRuleTargetsResponse>","errorExample":""}]',
+ 'title' => 'DeleteMetricRuleTargets',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteMetricRules' => [
+ 'summary' => 'Deletes one or more alert rules.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ 'description' => 'The ID of the alert rule. Valid values of N: 1 to 100.'."\n",
+ 'example' => 'ab05733c97b7ce239fb1b53393dc1697c7e12****',
+ ],
+ 'required' => true,
+ 'example' => 'ab05733c97b7ce239fb1b53393dc1697c7e12****',
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates a success.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => 'E5599964-8D0D-40DC-8E90-27A619384B81',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the operation was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: successful.'."\n"
+ .'* false: failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ThrottlingException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternetServerError',
+ 'errorMessage' => 'InternetServerError',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"09B3A484-1A2B-5743-BB6B-D796416F2677\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'DeleteMetricRules',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteMetricRuleResources' => [
+ 'summary' => 'Disassociates resources from an alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'rr-bp18017n6iolv****',
+ ],
+ ],
+ [
+ 'name' => 'Resources',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resources that are associated with the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{"instanceId":"i-uf6hm9lnlzsarrc7****"}]',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The alert does not exist.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'D8A35882-90C6-4F03-BBEB-153C180398EA',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The alert does not exist.\\",\\n \\"RequestId\\": \\"D8A35882-90C6-4F03-BBEB-153C180398EA\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteMetricRuleResourcesResponse>\\n\\t\\t<RequestId>0671A721-0D7A-4F11-BB77-2416325D65AB</RequestId>\\n\\t\\t<Success>true</Success>\\n\\t\\t<Code>200</Code>\\n</DeleteMetricRuleResourcesResponse>","errorExample":""}]',
+ 'title' => 'DeleteMetricRuleResources',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'EnableMetricRules' => [
+ 'summary' => 'Enables alert rules.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The IDs of the alert rules.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GroupProcess_67800278_2FE7D515-4BBD-447B-BC1A-3F17ED49****',
+ ],
+ 'required' => true,
+ 'example' => 'ab05733c97b7ce239fb1b53393dc1697c123****',
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'FF38D33A-67C1-40EB-AB65-FAEE51EDB644',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 402 => [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"FF38D33A-67C1-40EB-AB65-FAEE51EDB644\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableMetricRulesResponse>\\n <Code>200</Code>\\n <Message>success</Message>\\n <RequestId>FF38D33A-67C1-40EB-AB65-FAEE51EDB644</RequestId>\\n <Success>true</Success>\\n</EnableMetricRulesResponse>","errorExample":""}]',
+ 'title' => 'EnableMetricRules',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DisableMetricRules' => [
+ 'summary' => 'Disables alert rules.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule. Valid values of N: 1 to 20.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ 'description' => '',
+ ],
+ 'required' => true,
+ 'example' => 'detect_87****_HTTP_HttpLatency',
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'RuleId is mandatory for this action.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'FF38D33A-67C1-40EB-AB65-FAEE51EDB644',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"FF38D33A-67C1-40EB-AB65-FAEE51EDB644\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'DisableMetricRules',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMetricRuleTargets' => [
+ 'summary' => 'Queries the resources that are associated with a specified alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'ae06917_75a8c43178ab66****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'User not authorized to operate on the specified resource.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '786E92D2-AC66-4250-B76F-F1E2FCDDBA1C',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Targets' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Target' => [
+ 'description' => 'The information about the resource for which alerts are triggered.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the resource for which alerts are triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the resource. Format: `acs:{Service name abbreviation}:{regionId}:{userId}:/{Resource type}/{Resource name}/message`. Example: `acs:mns:cn-hangzhou:120886317861****:/queues/test123/message`. Fields:'."\n"
+ ."\n"
+ .'* {Service name abbreviation}: the abbreviation of the service name. Valid value: mns.'."\n"
+ .'* {userId}: the ID of the Alibaba Cloud account.'."\n"
+ .'* {regionId}: the region ID of the message queue or topic.'."\n"
+ .'* {Resource type}`: the type of the resource for which alerts are triggered. Valid values: - **queues** - **topics** {Resource name}: the name of the resource. - If the resource type is set to **queues**, the resource name is the name of the message queue. - If the resource type is set to **topics**, the resource name is the name of the topic.`'."\n",
+ 'type' => 'string',
+ 'example' => 'acs:mns:cn-hangzhou:120886317861****:/queues/test/message',
+ ],
+ 'Level' => [
+ 'description' => 'The level of the alert. Valid values:'."\n"
+ ."\n"
+ .'* INFO: information'."\n"
+ .'* WARN: warning'."\n"
+ .'* CRITICAL: critical'."\n",
+ 'type' => 'string',
+ 'example' => '["INFO", "WARN", "CRITICAL"]',
+ ],
+ 'JsonParams' => [
+ 'description' => 'The parameters of the alert callback. The parameters are in the JSON format.'."\n",
+ 'type' => 'string',
+ 'example' => '{"customField1":"value1","customField2":"$.name"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"User not authorized to operate on the specified resource.\\",\\n \\"RequestId\\": \\"786E92D2-AC66-4250-B76F-F1E2FCDDBA1C\\",\\n \\"Success\\": true,\\n \\"Targets\\": {\\n \\"Target\\": [\\n {\\n \\"Id\\": \\"1\\",\\n \\"Arn\\": \\"acs:mns:cn-hangzhou:120886317861****:/queues/test/message\\",\\n \\"Level\\": \\"INFO\\",\\n \\"JsonParams\\": \\"{\\\\\\"customField1\\\\\\":\\\\\\"value1\\\\\\",\\\\\\"customField2\\\\\\":\\\\\\"$.name\\\\\\"}\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricRuleTargetsResponse>\\n\\t<RequestId>786E92D2-AC66-4250-B76F-F1E2FCDDBA1C</RequestId>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</DescribeMetricRuleTargetsResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeMetricRuleTargets',
+ 'description' => '## Limit'."\n"
+ ."\n"
+ .'This operation supports only Message Service (MNS) resources. '."\n"
+ ."\n"
+ .'>This topic provides an example on how to query the resources that are associated with an alert rule whose ID is `ae06917_75a8c43178ab66****`.',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMetricRuleCount' => [
+ 'summary' => 'Queries the number of alert rules in each state.',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'FF38D33A-67C1-40EB-AB65-FAEE51EDB644',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'MetricRuleCount' => [
+ 'description' => 'The number of alert rules in each state.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Ok' => [
+ 'description' => 'The number of alert rules without active alerts.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '40',
+ ],
+ 'Nodata' => [
+ 'description' => 'The number of alert rules without data.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Disable' => [
+ 'description' => 'The number of disabled alert rules.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of alert rules.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '45',
+ ],
+ 'Alarm' => [
+ 'description' => 'The number of alert rules with active alerts.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 402 => [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'Throttli∂ngException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"FF38D33A-67C1-40EB-AB65-FAEE51EDB644\\",\\n \\"Success\\": true,\\n \\"MetricRuleCount\\": {\\n \\"Ok\\": 40,\\n \\"Nodata\\": 0,\\n \\"Disable\\": 0,\\n \\"Total\\": 45,\\n \\"Alarm\\": 5\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricRuleCountResponse>\\n <Success>true</Success>\\n <Code>200</Code>\\n <RequestId>FF38D33A-67C1-40EB-AB65-FAEE51EDB644</RequestId>\\n <MetricRuleCount>\\n <Ok>40</Ok>\\n <Disable>0</Disable>\\n <Total>45</Total>\\n <Nodata>0</Nodata>\\n <Alarm>5</Alarm>\\n </MetricRuleCount>\\n</DescribeMetricRuleCountResponse>","errorExample":""}]',
+ 'title' => 'DescribeMetricRuleCount',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeAlertingMetricRuleResources' => [
+ 'summary' => 'Queries the resources for which active alerts are triggered based on an alert rule.',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule. For information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'putNewAlarm_user_7e78d765-0e3e-4671-ba6d-7ce39108****',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group. For information about how to obtain the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '7671****',
+ ],
+ ],
+ [
+ 'name' => 'Page',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs_mns_new',
+ ],
+ ],
+ [
+ 'name' => 'Dimensions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The dimensions that specify the resources whose monitoring data you want to query.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{\\"userId\\":\\"120886317861****\\",\\"region\\":\\"cn-huhehaote\\",\\"queue\\":\\"test-0128\\"}',
+ ],
+ ],
+ [
+ 'name' => 'AlertBeforeTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Queries the alerts that were triggered before the specified time. Timestamps in milliseconds are supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1698827400000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The request processing has failed due to some unknown error.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '0724011B-D9E0-4B2F-8C51-F17A894CC42C',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Resources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The resources that are associated with the alert rule.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'ActiveMessages',
+ ],
+ 'RetryTimes' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'MetricValues' => [
+ 'description' => 'The metric value that triggered the alert based on the alert rule. The value is a JSON string.'."\n",
+ 'type' => 'string',
+ 'example' => '{\\"timestamp\\":1623727500000,\\"Sum\\":926,\\"value\\":463,\\"Maximum\\":463,\\"Minimum\\":463,\\"Average\\":463,\\"SampleCount\\":2,\\"userId\\":\\"120886317861****\\",\\"region\\":\\"cn-huhehaote\\",\\"queue\\":\\"test-0128\\"}',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_mns_new',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'test123456789',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'putNewAlarm_user_7e78d765-0e3e-4671-ba6d-7ce39108****',
+ ],
+ 'ProductCategory' => [
+ 'description' => 'The type of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'mns',
+ ],
+ 'StartTime' => [
+ 'description' => 'The time when the resource was associated with the alert rule. The value is a timestamp.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1622427900000',
+ ],
+ 'Resource' => [
+ 'description' => 'The resources that are monitored.'."\n",
+ 'type' => 'string',
+ 'example' => 'userId=120886317861****,region=cn-huhehaote,queue=test-0128',
+ ],
+ 'LastModifyTime' => [
+ 'description' => 'The time when the alert rule was last modified. The value is a timestamp.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1622827900000',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n"
+ ."\n"
+ .'> If the alert rule is associated with an application group, the ID of the application group is returned in this parameter.'."\n",
+ 'type' => 'string',
+ 'example' => '7671****',
+ ],
+ 'Dimensions' => [
+ 'description' => 'The dimensions based on which the resources are queried.'."\n",
+ 'type' => 'string',
+ 'example' => '{\\"region\\":\\"cn-huhehaote\\",\\"queue\\":\\"test-0128\\",\\"userId\\":\\"120886317861****\\"}',
+ ],
+ 'LastAlertTime' => [
+ 'description' => 'The time when the last alert was triggered for the resource based on the alert rule. The value is a timestamp.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1622427900000',
+ ],
+ 'Level' => [
+ 'description' => 'The severity level and notification methods of the alert. Valid values:'."\n"
+ ."\n"
+ .'* 4: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* OK: No alert is generated.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'Statistics' => [
+ 'description' => 'The method used to calculate the metric values that trigger alerts.'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'Enable' => [
+ 'description' => 'Indicates whether the alert rule is enabled. Valid values:'."\n"
+ ."\n"
+ .'* true: The alert rule is enabled.'."\n"
+ .'* false: The alert rule is disabled.'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Escalation' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The alert rule based on which the alert is triggered.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'PreCondition' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* `>=`'."\n"
+ .'* `=`'."\n"
+ .'* `<=`'."\n"
+ .'* `>`'."\n"
+ .'* `<`'."\n"
+ .'* `!=`'."\n",
+ 'type' => 'string',
+ 'example' => '>=',
+ ],
+ 'Expression' => [
+ 'description' => 'The description of the alert rule.'."\n"
+ ."\n"
+ .'> This parameter indicates the content of the alert rule. If the metric value meets the alert condition, an alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '$Average>=10',
+ ],
+ 'Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Tag' => [
+ 'description' => 'This parameter is deprecated.'."\n",
+ 'type' => 'string',
+ 'example' => 'mns',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'Level' => [
+ 'description' => 'The severity level and notification methods of the alert. Valid values:'."\n"
+ ."\n"
+ .'* 4: Alert notifications are sent by using emails and DingTalk chatbots.'."\n"
+ .'* OK: No alert is generated.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'ExpressionListJoin' => [
+ 'description' => 'The relationship between multiple metrics. Valid values:'."\n"
+ ."\n"
+ .'* &&: If all metrics meet the alert conditions, CloudMonitor sends alert notifications.'."\n"
+ .'* ||: If one of the metrics meets the alert conditions, CloudMonitor sends alert notifications.'."\n",
+ 'type' => 'string',
+ 'example' => '&&',
+ ],
+ 'ExpressionList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ExpressionList' => [
+ 'description' => 'The description of the multi-metric alert rule.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'cpu_total',
+ ],
+ 'Period' => [
+ 'description' => 'The statistical period of the metric. Unit: seconds. The default value is the interval at which the monitoring data of the metric is collected.'."\n",
+ 'type' => 'string',
+ 'example' => '60',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical method of the alert level. Valid values:'."\n"
+ ."\n"
+ .'* Maximum'."\n"
+ .'* Minimum'."\n"
+ .'* Average'."\n",
+ 'type' => 'string',
+ 'example' => 'Average',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'example' => '90',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ExpressionRaw' => [
+ 'description' => 'The trigger conditions that are created by using expressions. You can use expressions to create trigger conditions in the following scenarios:'."\n"
+ ."\n"
+ .'* Set an alert blacklist for specific resources. For example, if you specify `$instanceId != \'i-io8kfvcpp7x5****\' ``&&`` $Average > 50`, no alert is triggered when the `average metric value` of the `i-io8kfvcpp7x5****` instance exceeds 50.'."\n"
+ .'* Set a special alert threshold for a specified instance in the rule. For example, if you specify `$Average > ($instanceId == \'i-io8kfvcpp7x5****\'? 80: 50)`, an alert is triggered when the `average metric value` of the `i-io8kfvcpp7x5****` instance exceeds 80 or the `average metric value` of other instances exceeds 50.'."\n"
+ .'* Limit the number of instances whose metric values exceed the threshold. For example, if you specify `count($Average > 20) > 3`, an alert is triggered only when the `average metric value` of more than three instances exceeds 20.'."\n",
+ 'type' => 'string',
+ 'example' => '$Average > ($instanceId == \'i-io8kfvcpp7x5****\'? 80: 50)',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"RequestId\\": \\"0724011B-D9E0-4B2F-8C51-F17A894CC42C\\",\\n \\"Total\\": 2,\\n \\"Success\\": true,\\n \\"Resources\\": {\\n \\"Resource\\": [\\n {\\n \\"MetricName\\": \\"ActiveMessages\\",\\n \\"RetryTimes\\": \\"3\\",\\n \\"MetricValues\\": \\"{\\\\\\\\\\\\\\"timestamp\\\\\\\\\\\\\\":1623727500000,\\\\\\\\\\\\\\"Sum\\\\\\\\\\\\\\":926,\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":463,\\\\\\\\\\\\\\"Maximum\\\\\\\\\\\\\\":463,\\\\\\\\\\\\\\"Minimum\\\\\\\\\\\\\\":463,\\\\\\\\\\\\\\"Average\\\\\\\\\\\\\\":463,\\\\\\\\\\\\\\"SampleCount\\\\\\\\\\\\\\":2,\\\\\\\\\\\\\\"userId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"120886317861****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"region\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-huhehaote\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"queue\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"test-0128\\\\\\\\\\\\\\"}\\",\\n \\"Namespace\\": \\"acs_mns_new\\",\\n \\"RuleName\\": \\"test123456789\\",\\n \\"RuleId\\": \\"putNewAlarm_user_7e78d765-0e3e-4671-ba6d-7ce39108****\\",\\n \\"ProductCategory\\": \\"mns\\",\\n \\"StartTime\\": \\"1622427900000\\",\\n \\"Resource\\": \\"userId=120886317861****,region=cn-huhehaote,queue=test-0128\\",\\n \\"LastModifyTime\\": \\"1622827900000\\",\\n \\"GroupId\\": \\"7671****\\",\\n \\"Dimensions\\": \\"{\\\\\\\\\\\\\\"region\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-huhehaote\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"queue\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"test-0128\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"userId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"120886317861****\\\\\\\\\\\\\\"}\\",\\n \\"LastAlertTime\\": \\"1622427900000\\",\\n \\"Level\\": 3,\\n \\"Threshold\\": \\"10\\",\\n \\"Statistics\\": \\"Average\\",\\n \\"Enable\\": \\"true\\",\\n \\"Escalation\\": {\\n \\"Resource\\": [\\n {\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"PreCondition\\": \\">=\\",\\n \\"Expression\\": \\"$Average>=10\\",\\n \\"Times\\": 1,\\n \\"Tag\\": \\"无\\",\\n \\"Threshold\\": \\"10\\",\\n \\"Level\\": 3,\\n \\"ExpressionListJoin\\": \\"&&\\",\\n \\"ExpressionList\\": {\\n \\"ExpressionList\\": [\\n {\\n \\"ComparisonOperator\\": \\"GreaterThanOrEqualToThreshold\\",\\n \\"MetricName\\": \\"cpu_total\\",\\n \\"Period\\": \\"60\\",\\n \\"Statistics\\": \\"Average\\",\\n \\"Threshold\\": \\"90\\"\\n }\\n ]\\n },\\n \\"ExpressionRaw\\": \\"$Average > ($instanceId == \'i-io8kfvcpp7x5****\'? 80: 50)\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeAlertingMetricRuleResourcesResponse>\\r\\n\\t<RequestId>0724011B-D9E0-4B2F-8C51-F17A894CC42C</RequestId>\\r\\n\\t<Message></Message>\\r\\n\\t<Total>2</Total>\\r\\n\\t<Resources>\\r\\n\\t\\t<Resource>\\r\\n\\t\\t\\t<RuleId>putNewAlarm_user_7e78d765-0e3e-4671-ba6d-7ce39108****</RuleId>\\r\\n\\t\\t\\t<Escalation>\\r\\n\\t\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t\\t<Expression>$Average>=10</Expression>\\r\\n\\t\\t\\t\\t\\t<Times>1</Times>\\r\\n\\t\\t\\t\\t\\t<Level>3</Level>\\r\\n\\t\\t\\t\\t\\t<Tag>mns</Tag>\\r\\n\\t\\t\\t\\t</Resource>\\r\\n\\t\\t\\t</Escalation>\\r\\n\\t\\t\\t<Resource>userId=120886317861****,region=cn-huhehaote,queue=test-0128</Resource>\\r\\n\\t\\t\\t<StartTime>1622427900000</StartTime>\\r\\n\\t\\t\\t<Dimensions>{\\\\\\"userId\\\\\\":\\\\\\"120886317861****\\\\\\",\\\\\\"region\\\\\\":\\\\\\"cn-huhehaote\\\\\\",\\\\\\"queue\\\\\\":\\\\\\"test-0128\\\\\\"}</Dimensions>\\r\\n\\t\\t\\t<MetricValues>{\\\\\\"timestamp\\\\\\":1623727500000,\\\\\\"Sum\\\\\\":926,\\\\\\"value\\\\\\":463,\\\\\\"Maximum\\\\\\":463,\\\\\\"Minimum\\\\\\":463,\\\\\\"Average\\\\\\":463,\\\\\\"SampleCount\\\\\\":2,\\\\\\"userId\\\\\\":\\\\\\"120886317861****\\\\\\",\\\\\\"region\\\\\\":\\\\\\"cn-huhehaote\\\\\\",\\\\\\"queue\\\\\\":\\\\\\"test-0128\\\\\\"}</MetricValues>\\r\\n\\t\\t\\t<LastModifyTime>1623727904000</LastModifyTime>\\r\\n\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t<Namespace>acs_mns_new</Namespace>\\r\\n\\t\\t\\t<GroupId>7671****</GroupId>\\r\\n\\t\\t\\t<MetricName>ActiveMessages</MetricName>\\r\\n\\t\\t\\t<LastAlertTime>1622427900000</LastAlertTime>\\r\\n\\t\\t\\t<ProductCategory>mns</ProductCategory>\\r\\n\\t\\t\\t<Enable>true</Enable>\\r\\n\\t\\t\\t<Level>3</Level>\\r\\n\\t\\t\\t<RuleName>test123456789</RuleName>\\r\\n\\t\\t\\t<RetryTimes>1</RetryTimes>\\r\\n\\t\\t\\t<Threshold>10</Threshold>\\r\\n\\t\\t</Resource>\\r\\n\\t\\t<Resource>\\r\\n\\t\\t\\t<RuleId>putNewAlarm_user_7e78d765-0e3e-4671-ba6d-7ce39108****</RuleId>\\r\\n\\t\\t\\t<Escalation>\\r\\n\\t\\t\\t\\t<Resource>\\r\\n\\t\\t\\t\\t\\t<Expression>$Average>=10</Expression>\\r\\n\\t\\t\\t\\t\\t<Times>1</Times>\\r\\n\\t\\t\\t\\t\\t<Level>3</Level>\\r\\n\\t\\t\\t\\t\\t<Tag>mns</Tag>\\r\\n\\t\\t\\t\\t</Resource>\\r\\n\\t\\t\\t</Escalation>\\r\\n\\t\\t\\t<Resource>userId=120886317861****,region=cn-huhehaote,queue=test-022401-1</Resource>\\r\\n\\t\\t\\t<StartTime>1622427900000</StartTime>\\r\\n\\t\\t\\t<Dimensions>{\\\\\\"userId\\\\\\":\\\\\\"120886317861****\\\\\\",\\\\\\"region\\\\\\":\\\\\\"cn-huhehaote\\\\\\",\\\\\\"queue\\\\\\":\\\\\\"test-022401-1\\\\\\"}</Dimensions>\\r\\n\\t\\t\\t<MetricValues>{\\\\\\"timestamp\\\\\\":1623727500000,\\\\\\"queue\\\\\\":\\\\\\"test-022401-1\\\\\\",\\\\\\"Maximum\\\\\\":349,\\\\\\"Minimum\\\\\\":349,\\\\\\"Sum\\\\\\":698,\\\\\\"value\\\\\\":349,\\\\\\"userId\\\\\\":\\\\\\"120886317861****\\\\\\",\\\\\\"region\\\\\\":\\\\\\"cn-huhehaote\\\\\\",\\\\\\"Average\\\\\\":349,\\\\\\"SampleCount\\\\\\":2}</MetricValues>\\r\\n\\t\\t\\t<LastModifyTime>1623727904000</LastModifyTime>\\r\\n\\t\\t\\t<Statistics>Average</Statistics>\\r\\n\\t\\t\\t<Namespace>acs_mns_new</Namespace>\\r\\n\\t\\t\\t<GroupId>7671****</GroupId>\\r\\n\\t\\t\\t<MetricName>ActiveMessages</MetricName>\\r\\n\\t\\t\\t<LastAlertTime>1622427900000</LastAlertTime>\\r\\n\\t\\t\\t<ProductCategory>mns</ProductCategory>\\r\\n\\t\\t\\t<Enable>true</Enable>\\r\\n\\t\\t\\t<Level>3</Level>\\r\\n\\t\\t\\t<RuleName>test123456789</RuleName>\\r\\n\\t\\t\\t<RetryTimes>1</RetryTimes>\\r\\n\\t\\t\\t<Threshold>10</Threshold>\\r\\n\\t\\t</Resource>\\r\\n\\t</Resources>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeAlertingMetricRuleResourcesResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeAlertingMetricRuleResources',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutMetricRuleTargets' => [
+ 'summary' => 'Adds or modifies the push channels of an alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'ae06917_75a8c43178ab66****',
+ ],
+ ],
+ [
+ 'name' => 'Targets',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the resource for which alerts are triggered.'."\n"
+ ."\n"
+ .'For more information about how to obtain the ID of the resource for which alerts are triggered, see [DescribeMetricRuleTargets](~~121592~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '1',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the resource. Simple Message Queue (formerly MNS) (SMQ), Auto Scaling, Simple Log Service, and Function Compute are supported.'."\n"
+ ."\n"
+ .'The following part describes the ARN of SMQ and the parameters in the ARN:'."\n"
+ ."\n"
+ .'`acs:mns:{regionId}:{userId}:/{Resource type}/{Resource name}/message`.'."\n"
+ ."\n"
+ .'* {regionId}: the region ID of the SMQ queue or topic.'."\n"
+ ."\n"
+ .'* {userId}: the ID of the Alibaba Cloud account that owns the resource.'."\n"
+ ."\n"
+ .'* {Resource type}: the type of the resource for which alerts are triggered. Valid values:'."\n"
+ ."\n"
+ .' * **queues**'."\n"
+ .' * **topics**'."\n"
+ ."\n"
+ .'* {Resource name}: the resource name.'."\n"
+ ."\n"
+ .' * If the resource type is **queues**, the resource name is the queue name.'."\n"
+ .' * If the resource type is **topics**, the resource name is the topic name.'."\n"
+ ."\n"
+ .'ARN of Auto Scaling:'."\n"
+ ."\n"
+ .'acs:ess:{regionId}:{userId}:scalingGroupId/{Scaling group ID}:scalingRuleId/{Scaling rule ID}'."\n"
+ ."\n"
+ .'ARN of Simple Log Service:'."\n"
+ ."\n"
+ .'acs:log:{regionId}:{userId}:project/{Project name}/logstore/{Logstore name}'."\n"
+ ."\n"
+ .'ARN of Function Compute:'."\n"
+ ."\n"
+ .'acs:fc:{regionId}:{userId}:services/{Service name}/functions/{Function name}'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs:mns:cn-hangzhou:120886317861****:/queues/test/message',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* INFO'."\n"
+ .'* WARN'."\n"
+ .'* CRITICAL'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["INFO", "WARN", "CRITICAL"]',
+ ],
+ 'JsonParams' => [
+ 'description' => 'The parameters of the alert callback. The parameters are in the JSON format.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"customField1":"value1","customField2":"$.name"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 5,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'The request processing has failed due to some unknown error.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '6A569B0D-9055-58AF-9E82-BAEAF95C0FD5',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The request was successful.'."\n"
+ .'* false: The request failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'FailData' => [
+ 'description' => 'The failed data.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Targets' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Target' => [
+ 'description' => 'The information about the resources for which alerts are triggered.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => [
+ 'description' => 'The ID of the resource for which alerts are triggered.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Arn' => [
+ 'description' => 'The ARN of the resource. Format: `acs:{Service name abbreviation}:{regionId}:{userId}:/{Resource type}/{Resource name}/message`. SMQ, Auto Scaling, Simple Log Service, and Function Compute are supported. Example: `acs:mns:cn-hangzhou:120886317861****:/queues/test123/message`. The following part describes the ARN of SMQ and the parameters in the ARN:'."\n"
+ ."\n"
+ .'* {Service name abbreviation}: mns.'."\n"
+ ."\n"
+ .'* {userId}: the ID of the Alibaba Cloud account.'."\n"
+ ."\n"
+ .'* {regionId}: the region ID of the SMQ queue or topic.'."\n"
+ ."\n"
+ .'* {Resource type}: the type of the resource for which alerts are triggered. Valid values:'."\n"
+ ."\n"
+ .' * **queues**'."\n"
+ .' * **topics**'."\n"
+ ."\n"
+ .'* {Resource name}: the resource name.'."\n"
+ ."\n"
+ .' * If the resource type is **queues**, the resource name is the queue name.'."\n"
+ .' * If the resource type is **topics**, the resource name is the topic name.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs:mns:cn-hangzhou:111:/queues/test/message',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* INFO'."\n"
+ .'* WARN'."\n"
+ .'* CRITICAL'."\n",
+ 'type' => 'string',
+ 'example' => '["INFO", "WARN", "CRITICAL"]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 200 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"RequestId\\": \\"6A569B0D-9055-58AF-9E82-BAEAF95C0FD5\\",\\n \\"Success\\": true,\\n \\"FailData\\": {\\n \\"Targets\\": {\\n \\"Target\\": [\\n {\\n \\"Id\\": \\"1\\",\\n \\"Arn\\": \\"acs:mns:cn-hangzhou:111:/queues/test/message\\",\\n \\"Level\\": \\"[\\\\\\"INFO\\\\\\", \\\\\\"WARN\\\\\\", \\\\\\"CRITICAL\\\\\\"]\\"\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<PutMetricRuleTargetsResponse>\\r\\n\\t<RequestId>6A569B0D-9055-58AF-9E82-BAEAF95C0FD5</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</PutMetricRuleTargetsResponse>\\t","errorExample":""}]',
+ 'title' => 'PutMetricRuleTargets',
+ 'description' => '# [](#)'."\n"
+ ."\n"
+ .'This topic provides an example on how to associate an alert rule with a resource. In this example, the alert rule is `ae06917_75a8c43178ab66****`, the resource is `acs:mns:cn-hangzhou:120886317861****:/queues/test/message`, and the ID of the resource for which alerts are triggered is `1`. The response indicates that the resource is associated with the specified alert rule.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutResourceMetricRule' => [
+ 'summary' => 'Configures an alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'You can specify a new ID or the ID of an existing alert rule. For more information about how to query the IDs of alert rules, see [DescribeMetricRuleList](~~114941~~).'."\n"
+ ."\n"
+ .'> If you specify a new ID, a threshold-triggered alert rule is created.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'a151cd6023eacee2f0978e03863cc1697c89508****',
+ ],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n"
+ ."\n"
+ .'You can specify a new name or the name of an existing alert rule. For more information about how to query the names of alert rules, see [DescribeMetricRuleList](~~114941~~).'."\n"
+ ."\n"
+ .'> If you specify a new name, a threshold-triggered alert rule is created.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test123',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service. For more information about how to query the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> If you create a Prometheus alert rule for Hybrid Cloud Monitoring, you must set this parameter to `acs_prometheus`.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name. For more information about how to query metric names, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> If you create a Prometheus alert rule for Hybrid Cloud Monitoring, you must set this parameter to the name of the namespace. For more information about how to query the names of namespaces, see [DescribeHybridMonitorNamespaceList](~~428880~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'Resources',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resource information. Examples: `[{"instanceId":"i-uf6j91r34rnwawoo****"}]` and `[{"userId":"100931896542****"}]`.'."\n"
+ ."\n"
+ .'For more information about the supported dimensions that are used to query resources, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => true,
+ 'example' => '[{"instanceId":"i-uf6j91r34rnwawoo****"}]',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroups',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert contact groups. Alert notifications are sent to the alert contacts in the alert contact group.'."\n"
+ ."\n"
+ .'> An alert contact group can contain one or more alert contacts. For information about how to create alert contacts and alert contact groups, see [PutContact](~~114923~~) and [PutContactGroup](~~114929~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ [
+ 'name' => 'Webhook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The callback URL to which a POST request is sent when an alert is triggered based on the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://alert.aliyun.com.com:8080/callback',
+ ],
+ ],
+ [
+ 'name' => 'EffectiveInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The period of time during which the alert rule is effective.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-23:59',
+ ],
+ ],
+ [
+ 'name' => 'NoEffectiveInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The period of time during which the alert rule is ineffective.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-06:00',
+ ],
+ ],
+ [
+ 'name' => 'SilenceTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mute period during which new alert notifications are not sent even if the trigger conditions are met. Unit: seconds. Default value: 86400.'."\n"
+ ."\n"
+ .'> If an alert is not cleared after the mute period ends, CloudMonitor resends an alert notification.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '86400',
+ 'default' => '86400',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period of the metric. Unit: seconds. The default value is the interval at which the monitoring data of the metric is collected.'."\n"
+ ."\n"
+ .'> For more information about how to query the statistical periods of metrics, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'Interval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The interval at which alerts are triggered based on the alert rule. Unit: seconds.'."\n"
+ ."\n"
+ .'> For more information about how to query the statistical periods of metrics, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'EmailSubject',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The subject of the alert notification email.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Critical.Statistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical methods for Critical-level alerts.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Critical.ComparisonOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Critical-level alerts. Valid value:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* EqualToThreshold: equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Critical.Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The threshold for Critical-level alerts.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Critical.Times',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Warn.Statistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical methods for Warn-level alerts.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Warn.ComparisonOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Warn-level alerts. Valid value:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* EqualToThreshold: equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Warn.Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The threshold for Warn-level alerts.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Warn.Times',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Warn-level alert is triggered.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Info.Statistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical methods for Info-level alerts.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Info.ComparisonOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Info-level alerts. Valid value:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* EqualToThreshold: equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Info.Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The threshold for Info-level alerts.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Info.Times',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an Info-level alert is triggered.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'NoDataPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The method that is used to handle alerts when no monitoring data is found. Valid value:'."\n"
+ ."\n"
+ .'* KEEP_LAST_STATE (default): No operation is performed.'."\n"
+ .'* INSUFFICIENT_DATA: An alert whose content is "Insufficient data" is triggered.'."\n"
+ .'* OK: The status is considered normal.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'KEEP_LAST_STATE',
+ ],
+ ],
+ [
+ 'name' => 'CompositeExpression',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The trigger conditions for multiple metrics.'."\n"
+ ."\n"
+ .'> The trigger conditions for a single metric and multiple metrics are mutually exclusive. You cannot specify trigger conditions for a single metric and multiple metrics at the same time.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ExpressionList' => [
+ 'description' => 'The trigger conditions that are created in standard mode.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The trigger conditions that are created in standard mode.',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric that is used to monitor the cloud service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu_total',
+ ],
+ 'Period' => [
+ 'description' => 'The aggregation period of the metric.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ 'Statistics' => [
+ 'description' => 'The statistical method of the metric. Valid value:'."\n"
+ ."\n"
+ .'* $Maximum: the maximum value'."\n"
+ .'* $Minimum: the minimum value'."\n"
+ .'* $Average: the average value'."\n"
+ .'* $Availability: the availability rate (usually used for site monitoring)'."\n"
+ ."\n"
+ .'> `$` is the prefix of the metric. For information about the Alibaba Cloud services that are supported by CloudMonitor, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '$Maximum',
+ ],
+ 'ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold. Valid value:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* EqualToThreshold: equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Threshold' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'ExpressionListJoin' => [
+ 'description' => 'The relationship between the trigger conditions for multiple metrics. Valid value:'."\n"
+ ."\n"
+ .'* `&&`: An alert is triggered only if all metrics meet the trigger conditions. An alert is triggered only if the results of all expressions specified in the ExpressionList parameter are `true`.'."\n"
+ .'* `||`: An alert is triggered if one of the metrics meets the trigger conditions.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '||',
+ ],
+ 'ExpressionRaw' => [
+ 'description' => 'The trigger conditions that are created by using expressions. You can use expressions to create trigger conditions in the following scenarios:'."\n"
+ ."\n"
+ .'* Set an alert blacklist for specific resources. For example, if you specify `$instanceId != \'i-io8kfvcpp7x5****\' ``&&`` $Average > 50`, no alert is triggered when the `average metric value` of the `i-io8kfvcpp7x5****` instance exceeds 50.'."\n"
+ .'* Set a special alert threshold for a specified instance in the rule. For example, if you specify `$Average > ($instanceId == \'i-io8kfvcpp7x5****\'? 80: 50)`, an alert is triggered when the `average metric value` of the `i-io8kfvcpp7x5****` instance exceeds 80 or the `average metric value` of other instances exceeds 50.'."\n"
+ .'* Limit the number of instances whose metric values exceed the threshold. For example, if you specify `count($Average > 20) > 3`, an alert is triggered only when the `average metric value` of more than three instances exceeds 20.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '$Average > ($instanceId == \'i-io8kfvcpp7x5****\'? 80: 50)',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* Critical'."\n"
+ .'* Warn'."\n"
+ .'* Info'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Critical',
+ ],
+ 'Times' => [
+ 'description' => 'The number of consecutive triggers. If the number of times that the metric values meet the trigger conditions reaches the value of this parameter, CloudMonitor sends alert notifications.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'Labels',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'If the metric meets the specified condition in the alert rule and CloudMonitor sends an alert notification, the tag is also written to the metric and displayed in the alert notification.'."\n"
+ ."\n"
+ .'> This parameter is equivalent to the Label parameter of Prometheus alerts.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The key of the tag.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagKey1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value.'."\n"
+ ."\n"
+ .'> You can use a template parameter to specify a tag value. CloudMonitor replaces the value of the template parameter with an actual tag value.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'Prometheus',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'Prometheus alerts.'."\n"
+ ."\n"
+ .'> This parameter is required only if you create a Prometheus alert rule for Hybrid Cloud Monitoring.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'PromQL' => [
+ 'description' => 'PromQL statements are supported.'."\n"
+ ."\n"
+ .'> The data obtained by using the PromQL query statement is the monitoring data. You must include the alert threshold in this statement.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpuUsage{instanceId="xxxx"}[1m]>90',
+ ],
+ 'Level' => [
+ 'description' => 'The alert level. Valid values:'."\n"
+ ."\n"
+ .'* Critical'."\n"
+ .'* Warn'."\n"
+ .'* Info'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Critical',
+ ],
+ 'Times' => [
+ 'description' => 'The number of consecutive triggers. If the number of times that the metric values meet the trigger conditions reaches the value of this parameter, CloudMonitor sends alert notifications.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Annotations' => [
+ 'description' => 'The annotations of the Prometheus alert rule. When a Prometheus alert is triggered, the system renders the annotated keys and values to help you understand the metrics and alert rule.'."\n"
+ ."\n"
+ .'> This parameter is equivalent to the annotations parameter of open source Prometheus.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The annotations of the Prometheus alert rule. When a Prometheus alert is triggered, the system renders the annotated keys and values to help you understand the metrics and alert rule.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The key of the annotation.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'summary',
+ ],
+ 'Value' => [
+ 'description' => 'The value of the annotation.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{{ $labels.instance }} CPU usage above 10% {current value: {{ humanizePercentage $value }} }',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The responses code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The request processing has failed due to some unknown error.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '65D50468-ECEF-48F1-A6E1-D952E89D9436',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 204 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ResourceOverLimit',
+ 'errorMessage' => 'The resource has exceeded the limit. %s',
+ ],
+ ],
+ 499 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"RequestId\\": \\"65D50468-ECEF-48F1-A6E1-D952E89D9436\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<PutResourceMetricRuleResponse>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Message></Message>\\r\\n\\t<RequestId>65D50468-ECEF-48F1-A6E1-D952E89D9436</RequestId>\\r\\n\\t<Success>true</Success>\\r\\n</PutResourceMetricRuleResponse>","errorExample":""}]',
+ 'title' => 'PutResourceMetricRule',
+ 'description' => 'This topic provides an example on how to create a threshold-triggered alert rule for the `cpu_total` metric of an Elastic Compute Service (ECS) instance whose ID is `i-uf6j91r34rnwawoo****`. The namespace of ECS metrics is `acs_ecs_dashboard`. The alert contact group of the alert rule is `ECS_Group`. The name of the alert rule is `test123`. The ID of the alert rule is `a151cd6023eacee2f0978e03863cc1697c89508****`. The statistical method for Critical-level alerts is `Average`. The comparison operator for Critical-level alerts is `GreaterThanOrEqualToThreshold`. The threshold for Critical-level alerts is `90`. The consecutive number of times for which the metric value meets the trigger condition before a Critical-level alert is triggered is `3`.'."\n"
+ ."\n"
+ .'> Statistics verification was added on August 15, 2024. Only the statistical value of the corresponding metric can be set for the Statistics parameter. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](https://www.alibabacloud.com/help/en/cms/support/appendix-1-metrics).',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutResourceMetricRules' => [
+ 'summary' => 'Creates multiple alert rules for the specified metric of a specified resource.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Rules',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The threshold-triggered alert rules.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The statistical methods for Warn-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* Maximum: the maximum value'."\n"
+ .'* Minimum: the minimum value'."\n"
+ .'* Average: the average value'."\n"
+ .'* Availability: the availability rate'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> You must set a collection of the Rules.N.Escalations.Critical.Statistics, Rules.N.Escalations.Critical.ComparisonOperator, Rules.N.Escalations.Critical.Threshold, and Rules.N.Escalations.Critical.Times parameters, a collection of the Rules.N.Escalations.Warn.Statistics, Rules.N.Escalations.Warn.ComparisonOperator, Rules.N.Escalations.Warn.Threshold, and Rules.N.Escalations.Warn.Times parameters, or a collection of the Rules.N.Escalations.Info.Statistics, Rules.N.Escalations.Info.ComparisonOperator, Rules.N.Escalations.Info.Threshold, and Rules.N.Escalations.Info.Times parameters.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Escalations.Info.Threshold' => [
+ 'description' => 'The threshold for Info-level alerts.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'For information about how to query the name of a metric, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cpu_total',
+ ],
+ 'Escalations.Warn.Threshold' => [
+ 'description' => 'The threshold for Warn-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ 'EffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is effective.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-23:59',
+ ],
+ 'NoEffectiveInterval' => [
+ 'description' => 'The time period during which the alert rule is ineffective.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-06:00',
+ ],
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'You can specify a new ID or the ID of an existing alert rule. For information about how to query the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n"
+ ."\n"
+ .'> If you specify a new ID, a threshold-triggered alert rule is created.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'a151cd6023eacee2f0978e03863cc1697c89508****',
+ ],
+ 'Escalations.Critical.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Escalations.Critical.Threshold' => [
+ 'description' => 'The threshold for Critical-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ 'Escalations.Critical.Statistics' => [
+ 'description' => 'The statistical methods for Critical-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Escalations.Warn.ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Warn-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* EqualToThreshold: equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Escalations.Info.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an Info-level alert is triggered.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Resources' => [
+ 'description' => 'The information about the resource. Example: `[{"instanceId":"i-uf6j91r34rnwawoo****"}]` or `[{"userId":"100931896542****"}]`.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'For more information about the supported dimensions that are used to query resources, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{"instanceId":"i-uf6j91r34rnwawoo****"}]',
+ ],
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alert notifications are not sent even if the trigger conditions are met.'."\n"
+ ."\n"
+ .'Unit: seconds. Default value: 86400.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> If an alert is not cleared after the mute period ends, CloudMonitor resends an alert notification.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '86400',
+ ],
+ 'Webhook' => [
+ 'description' => 'The callback URL to which a POST request is sent when an alert is triggered based on the alert rule.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://alert.aliyun.com.com:8080/callback',
+ ],
+ 'ContactGroups' => [
+ 'description' => 'The alert contact groups. The alert notifications are sent to the alert contacts in the alert contact group.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> An alert contact group can contain one or more alert contacts. For information about how to create alert contacts and alert contact groups, see [PutContact](~~114923~~) and [PutContactGroup](~~114929~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS_Group',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'For information about how to query the namespace of a cloud service, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'EmailSubject' => [
+ 'description' => 'The subject of the alert notification email.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'Period' => [
+ 'description' => 'The statistical period of the metric.'."\n"
+ ."\n"
+ .'Unit: seconds. The default value is the interval at which the monitoring data of the metric is collected.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> For information about how to query the statistical period of a metric, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ 'RuleName' => [
+ 'description' => 'The name of the alert rule.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'You can specify a new name or the name of an existing alert rule. For information about how to query the name of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n"
+ ."\n"
+ .'> If you specify a new name, a threshold-triggered alert rule is created.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test123',
+ ],
+ 'Escalations.Info.Statistics' => [
+ 'description' => 'The statistical methods for Info-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'Escalations.Warn.Times' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Warn-level alert is triggered.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Escalations.Info.ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Info-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* EqualToThreshold: equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Interval' => [
+ 'description' => 'The interval at which alerts are triggered based on the alert rule.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> For information about how to query the statistical period of a metric, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ 'Escalations.Critical.ComparisonOperator' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Critical-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* EqualToThreshold: equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ 'Escalations.Warn.Statistics' => [
+ 'description' => 'The statistical methods for Warn-level alerts.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> You must select at least one of the Critical, Warn, and Info alert levels and specify the Statistics, ComparisonOperator, Threshold, and Times parameters for each alert level.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ 'NoDataPolicy' => [
+ 'description' => 'The method that is used to handle alerts when no monitoring data is found. Valid values:'."\n"
+ ."\n"
+ .'* KEEP_LAST_STATE (default): No operation is performed.'."\n"
+ .'* INSUFFICIENT_DATA: An alert whose content is "Insufficient data" is triggered.'."\n"
+ .'* OK: The status is considered normal.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 500.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'KEEP_LAST_STATE',
+ ],
+ 'Labels' => [
+ 'description' => 'If the metric meets the specified condition in the alert rule and CloudMonitor sends an alert notification, the tag is also written to the metric and displayed in the alert notification.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagKey1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value.'."\n"
+ ."\n"
+ .'> You can use a template parameter to specify a tag value. CloudMonitor replaces the value of the template parameter with an actual tag value.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 500,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'The request processing has failed due to some unknown error.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '15D1440E-BF24-5A41-93E4-36864635179E',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'FailedListResult' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Target' => [
+ 'description' => 'The alert rules that failed to be created for the resource.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'a151cd6023eacee2f0978e03863cc1697c89508****',
+ ],
+ 'Result' => [
+ 'description' => 'The alert rule that failed to be created.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n",
+ 'type' => 'string',
+ 'example' => '404',
+ ],
+ 'Message' => [
+ 'description' => 'The error message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'The request processing has failed due to some unknown error.',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 204 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 422 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 499 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"RequestId\\": \\"15D1440E-BF24-5A41-93E4-36864635179E\\",\\n \\"Success\\": true,\\n \\"FailedListResult\\": {\\n \\"Target\\": [\\n {\\n \\"RuleId\\": \\"a151cd6023eacee2f0978e03863cc1697c89508****\\",\\n \\"Result\\": {\\n \\"Code\\": \\"404\\",\\n \\"Message\\": \\"The request processing has failed due to some unknown error.\\",\\n \\"Success\\": false\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<PutResourceMetricRulesResponse>\\r\\n\\t<Message></Message>\\r\\n\\t<RequestId>15D1440E-BF24-5A41-93E4-36864635179E</RequestId>\\r\\n\\t<FailedListResult></FailedListResult>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</PutResourceMetricRulesResponse>\\t","errorExample":""}]',
+ 'title' => 'PutResourceMetricRules',
+ 'description' => 'This topic provides an example on how to create a threshold-triggered alert rule for the `cpu_total` metric of an Elastic Compute Service (ECS) instance whose ID is `i-uf6j91r34rnwawoo****`. The namespace of ECS metrics is `acs_ecs_dashboard`. The alert contact group of the alert rule is `ECS_Group`. The name of the alert rule is `test123`. The ID of the alert rule is `a151cd6023eacee2f0978e03863cc1697c89508****`. The statistical method for Critical-level alerts is `Average`. The comparison operator for Critical-level alerts is `GreaterThanOrEqualToThreshold`. The threshold for Critical-level alerts is `90`. The consecutive number of times for which the metric value meets the trigger condition before a Critical-level alert is triggered is `3`.'."\n"
+ ."\n"
+ .'> Statistics verification was added on August 15, 2024. Only the statistical value of the corresponding metric can be set for the Statistics parameter. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](https://www.alibabacloud.com/help/en/cms/support/appendix-1-metrics).',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutGroupMetricRule' => [
+ 'summary' => 'Creates or modifies an alert rule for an application group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The application group ID.'."\n"
+ ."\n"
+ .'For more information about how to obtain the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '17285****',
+ ],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'* When you create an alert rule for the application group, enter the ID of the alert rule.'."\n"
+ .'* When you modify a specified alert rule in the application group, you must obtain the ID of the alert rule. For information about how to obtain the ID of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '123456',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The abbreviation of the cloud service name.'."\n"
+ ."\n"
+ .'For more information about how to obtain the abbreviation of a cloud service name, see `metricCategory` in the response parameter `Labels` of the [DescribeProjectMeta](~~114916~~) operation.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS',
+ ],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n"
+ ."\n"
+ .'* When you create an alert rule for the application group, enter the name of the alert rule.'."\n"
+ .'* When you modify a specified alert rule in the application group, you must obtain the name of the alert rule. For more information about how to obtain the name of an alert rule, see [DescribeMetricRuleList](~~114941~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Rule_01',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about how to obtain the namespace of a cloud service, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'MetricName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'For more information about how to obtain the name of a metric, see [DescribeMetricMetaList](~~98846~~) or [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'Dimensions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The first-level dimension of the alert rule in the application group.'."\n"
+ ."\n"
+ .'Set the value to a set of key-value pairs, for example, `userId:120886317861****` or `instanceId:i-m5e1qg6uo38rztr4****`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{"instanceId":"i-m5e1qg6uo38rztr4****"}]',
+ ],
+ ],
+ [
+ 'name' => 'ExtraDimensionJson',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The second-level or third-level dimension of the alert rule in the application group.'."\n"
+ ."\n"
+ .'Set the value to a set of key-value pairs, for example, `port:80` or `/dev/xvda:d-m5e6yphgzn3aprwu****`.'."\n"
+ ."\n"
+ .'If the first-level dimension of the alert rule is `instanceId:i-m5e1qg6uo38rztr4****`, its second-level dimension is the `/dev/xvda:d-m5e6yphgzn3aprwu****` disk in the instance.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"/dev/xvda":"d-m5e6yphgzn3aprwu****"}',
+ ],
+ ],
+ [
+ 'name' => 'EffectiveInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The time period during which the alert rule is effective.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '05:31-23:59',
+ ],
+ ],
+ [
+ 'name' => 'NoEffectiveInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The time period during which the alert rule is ineffective.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-05:30',
+ ],
+ ],
+ [
+ 'name' => 'SilenceTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mute period during which new alerts are not sent even if the trigger conditions are met.'."\n"
+ ."\n"
+ .'Unit: seconds. Default value: 86400.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '86400',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The aggregation period of the metric data.'."\n"
+ ."\n"
+ .'Set the `Period` parameter to an integral multiple of 60. Unit: seconds. Default value: 300.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'Interval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The interval at which CloudMonitor checks whether the alert rule is triggered. Unit: seconds.'."\n"
+ ."\n"
+ .'> We recommend that you set the interval to the data aggregation period. If the interval is shorter than the data aggregation period, alerts cannot be triggered due to insufficient data.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'Webhook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The callback URL.'."\n"
+ ."\n"
+ .'The callback URL must be accessible over the Internet. CloudMonitor sends a POST request to push an alert notification to the callback URL that you specify. Only HTTP requests are supported.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'EmailSubject',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The subject of the alert notification email.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroups',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert contact group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Critical.Statistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical methods for Critical-level alerts. Separate multiple statistical methods with commas (,).'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Critical.ComparisonOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Critical-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Critical.Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The threshold for Critical-level alerts.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Critical.Times',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Critical-level alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Warn.Statistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical methods for Warn-level alerts. Separate multiple statistical methods with commas (,).'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Warn.ComparisonOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Warn-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Warn.Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The threshold for Warn-level alerts.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Warn.Times',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before a Warn-level alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Info.Statistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical methods for Info-level alerts. Separate multiple statistical methods with commas (,).'."\n"
+ ."\n"
+ .'The value of this parameter is determined by the `Statistics` column corresponding to the `MetricName` parameter of the specified cloud service. The value of this parameter can be Maximum, Minimum, or Average. For more information about how to obtain the value of this parameter, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Average',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Info.ComparisonOperator',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The operator that is used to compare the metric value with the threshold for Info-level alerts. Valid values:'."\n"
+ ."\n"
+ .'* GreaterThanOrEqualToThreshold: greater than or equal to the threshold'."\n"
+ .'* GreaterThanThreshold: greater than the threshold'."\n"
+ .'* LessThanOrEqualToThreshold: less than or equal to the threshold'."\n"
+ .'* LessThanThreshold: less than the threshold'."\n"
+ .'* NotEqualToThreshold: not equal to the threshold'."\n"
+ .'* GreaterThanYesterday: greater than the metric value at the same time yesterday'."\n"
+ .'* LessThanYesterday: less than the metric value at the same time yesterday'."\n"
+ .'* GreaterThanLastWeek: greater than the metric value at the same time last week'."\n"
+ .'* LessThanLastWeek: less than the metric value at the same time last week'."\n"
+ .'* GreaterThanLastPeriod: greater than the metric value in the last monitoring cycle'."\n"
+ .'* LessThanLastPeriod: less than the metric value in the last monitoring cycle'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GreaterThanOrEqualToThreshold',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Info.Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The threshold for Info-level alerts.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90',
+ ],
+ ],
+ [
+ 'name' => 'Escalations.Info.Times',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consecutive number of times for which the metric value meets the alert condition before an Info-level alert is triggered.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'NoDataPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The method that is used to handle alerts when no monitoring data is found. Valid values:'."\n"
+ ."\n"
+ .'* KEEP_LAST_STATE (default): No operation is performed.'."\n"
+ .'* INSUFFICIENT_DATA: An alert whose content is "Insufficient data" is triggered.'."\n"
+ .'* OK: The status is considered normal.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'KEEP_LAST_STATE',
+ ],
+ ],
+ [
+ 'name' => 'Labels',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The tags of the alert rule.'."\n"
+ ."\n"
+ .'The specified tag is contained in alert notifications.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => 'The tag key of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'key1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'value1',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 0,
+ ],
+ ],
+ [
+ 'name' => 'Options',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Result' => [
+ 'description' => 'The result of the request.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'RuleId' => [
+ 'description' => 'The ID of the alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => '123456',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 204 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 499 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D\\",\\n \\"Success\\": true,\\n \\"Result\\": {\\n \\"RuleId\\": \\"123456\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<PutGroupMetricRuleResponse>\\r\\n\\t<Message></Message>\\r\\n\\t<RequestId>461CF2CD-2FC3-4B26-8645-7BD27E7D0F1D</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n\\t<Result>\\r\\n\\t\\t<RuleId>123456</RuleId>\\r\\n\\t</Result>\\r\\n</PutGroupMetricRuleResponse>","errorExample":""}]',
+ 'title' => 'PutGroupMetricRule',
+ 'description' => 'This topic provides an example on how to create an alert rule for the `cpu_total` metric of Elastic Compute Service (ECS) in the `17285****` application group. The ID of the alert rule is `123456`. The name of the alert rule is `Rule_test`. The alert level is `Critical`. The statistical method is `Average`. The alert threshold comparator is `GreaterThanOrEqualToThreshold`. The alert threshold is `90`. The number of alert retries is `3`. The returned result shows that the alert rule is created and the alert rule ID is `123456`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteEventRuleTargets' => [
+ 'summary' => 'Deletes the push channels of an event-triggered alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the event-triggered alert rule.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of an event-triggered alert rule, see [DescribeEventRuleList](~~114996~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testRule',
+ ],
+ ],
+ [
+ 'name' => 'Ids',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The IDs of event-triggered alert rules.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The ID of the event-triggered alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ 'required' => true,
+ 'maxItems' => 20,
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID. You can use the request ID to query logs and troubleshoot issues.'."\n",
+ 'type' => 'string',
+ 'example' => '7ADD7EFB-7555-4EC1-A3D9-F9955C189CCF',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* `true`'."\n"
+ .'* `false`'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'Permission denied',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successfull\\",\\n \\"RequestId\\": \\"142989D9-CC52-54D0-928D-2C9B1D9F051C\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'DeleteEventRuleTargets',
+ ],
+ 'DeleteEventRules' => [
+ 'summary' => 'Deletes event-triggered alert rules.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleNames',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The name of the alert rule. Valid values of N: 1 to 20.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ 'description' => '',
+ 'example' => 'rule1',
+ ],
+ 'required' => true,
+ 'example' => 'rule1',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'E5A72B5B-4F44-438C-B68A-147FD5DC53A8',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'Permission denied',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"45231A42-5A09-5AFF-953C-A5B3D4ED8925\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'DeleteEventRules',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'EnableEventRules' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleNames',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ 'description' => 'The name of the event-triggered alert rule. Valid values of N: 1 to 20.'."\n",
+ ],
+ 'required' => true,
+ 'example' => 'ruleName1',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '20F2896A-6684-4A04-8255-4155B1593C70',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. The value true indicates a success. The value false indicates a failure.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'Permission denied',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"20F2896A-6684-4A04-8255-4155B1593C70\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'EnableEventRules',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DisableEventRules' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleNames',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ 'description' => 'The name of the event-triggered alert rule. Valid values of N: 1 to 20.'."\n",
+ ],
+ 'required' => true,
+ 'example' => 'ruleName1',
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '3FD0E8B5-F132-4F4E-A081-2878AF378B12',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. The value true indicates a success. The value false indicates a failure.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'Permission denied',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"3FD0E8B5-F132-4F4E-A081-2878AF378B12\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'DisableEventRules',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEventRuleAttribute' => [
+ 'summary' => 'Queries the details of an event-triggered alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the event-triggered alert rule.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of an event-triggered alert rule, see [DescribeEventRuleList](~~114996~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testRule',
+ ],
+ ],
+ [
+ 'name' => 'SilenceTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mute period during which new alert notifications are not sent even if the trigger conditions are met.'."\n"
+ ."\n"
+ .'Unit: seconds. Default value: 86400, which indicates one day.'."\n"
+ ."\n"
+ .'> Only one alert notification is sent during each mute period even if the metric value exceeds the alert threshold several times.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '86400',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The alert does not exist.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '9AA3F210-C03D-4C86-8DB6-21C84FF692A1',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Result' => [
+ 'description' => 'The details of the event-triggered alert rule.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'EventType' => [
+ 'description' => 'The event type. Valid values:'."\n"
+ ."\n"
+ .'* SYSTEM: system event'."\n"
+ .'* CUSTOM: custom event'."\n",
+ 'type' => 'string',
+ 'example' => 'SYSTEM',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '3607****',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the event-triggered alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'test_DefaultEventRule_7378****',
+ ],
+ 'Description' => [
+ 'description' => 'The description of the event-triggered alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'Default group event rule.',
+ ],
+ 'State' => [
+ 'description' => 'The status of the event-triggered alert rule. Valid values:'."\n"
+ ."\n"
+ .'* ENABLED'."\n"
+ .'* DISABLED'."\n",
+ 'type' => 'string',
+ 'example' => 'ENABLED',
+ ],
+ 'EventPattern' => [
+ 'description' => 'The event pattern. This parameter describes the trigger conditions of an event.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Product' => [
+ 'description' => 'The name of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'CloudMonitor',
+ ],
+ 'LevelList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LevelList' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The level of the event-triggered alert rule. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ .'* WARN'."\n"
+ .'* INFO'."\n",
+ 'type' => 'string',
+ 'example' => '["CRITICAL","WARN"] ',
+ ],
+ ],
+ ],
+ ],
+ 'StatusList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'StatusList' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The status of the event.'."\n",
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ ],
+ ],
+ ],
+ 'NameList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NameList' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The name of the event.'."\n",
+ 'type' => 'string',
+ 'example' => 'Agent_Status_Running',
+ ],
+ ],
+ ],
+ ],
+ 'EventTypeList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EventTypeList' => [
+ 'description' => 'The types of the event-triggered alert rules.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The type of the event-triggered alert rule.'."\n"
+ ."\n"
+ .'`*` indicates all types of alert rules.'."\n",
+ 'type' => 'string',
+ 'example' => '*',
+ ],
+ ],
+ ],
+ ],
+ 'SQLFilter' => [
+ 'description' => 'Indicates that logs are filtered based on the specified SQL statement. If the specified conditions are met, an alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => 'ycccluster1 and (i-23ij0o82612 or Executed1) or Asimulated not 222',
+ ],
+ 'KeywordFilterObj' => [
+ 'description' => 'The keyword for filtering.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Keywords' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'keyword' => [
+ 'description' => 'The keywords that are used to match events.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The keyword.'."\n",
+ 'type' => 'string',
+ 'example' => 'VMException',
+ ],
+ ],
+ ],
+ ],
+ 'Relation' => [
+ 'description' => 'The relationship between multiple keywords in a condition. Valid values:'."\n"
+ ."\n"
+ .'* OR: The relationship between keywords is OR.'."\n"
+ .'* NOT: The keyword is excluded. The value NOT indicates that all events that do not contain the keywords are matched.'."\n",
+ 'type' => 'string',
+ 'example' => 'OR',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The alert does not exist.\\",\\n \\"RequestId\\": \\"9AA3F210-C03D-4C86-8DB6-21C84FF692A1\\",\\n \\"Success\\": true,\\n \\"Result\\": {\\n \\"EventType\\": \\"SYSTEM\\",\\n \\"GroupId\\": \\"3607****\\",\\n \\"Name\\": \\"test_DefaultEventRule_7378****\\",\\n \\"Description\\": \\"Default group event rule.\\",\\n \\"State\\": \\"ENABLED\\",\\n \\"EventPattern\\": {\\n \\"Product\\": \\"CloudMonitor\\",\\n \\"LevelList\\": {\\n \\"LevelList\\": [\\n \\"[\\\\\\"CRITICAL\\\\\\",\\\\\\"WARN\\\\\\"] \\"\\n ]\\n },\\n \\"StatusList\\": {\\n \\"StatusList\\": [\\n \\"Running\\"\\n ]\\n },\\n \\"NameList\\": {\\n \\"NameList\\": [\\n \\"Agent_Status_Running\\"\\n ]\\n },\\n \\"EventTypeList\\": {\\n \\"EventTypeList\\": [\\n \\"*\\"\\n ]\\n },\\n \\"SQLFilter\\": \\"ycccluster1 and (i-23ij0o82612 or Executed1) or Asimulated not 222\\",\\n \\"KeywordFilterObj\\": {\\n \\"Keywords\\": {\\n \\"keyword\\": [\\n \\"VMException\\"\\n ]\\n },\\n \\"Relation\\": \\"OR\\"\\n }\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeEventRuleAttributeResponse>\\r\\n\\t<RequestId>9AA3F210-C03D-4C86-8DB6-21C84FF692A1</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n\\t<Result>\\r\\n\\t\\t<EventPattern>\\r\\n\\t\\t\\t<NameList>\\r\\n\\t\\t\\t\\t<NameList>Agent_Status_Running</NameList>\\r\\n\\t\\t\\t</NameList>\\r\\n\\t\\t\\t<LevelList>\\r\\n\\t\\t\\t\\t<LevelList>CRITICAL</LevelList>\\r\\n\\t\\t\\t</LevelList>\\r\\n\\t\\t\\t<Product>CloudMonitor</Product>\\r\\n\\t\\t</EventPattern>\\r\\n\\t\\t<Description>Default group event rule</Description>\\r\\n\\t\\t<EventType>SYSTEM</EventType>\\r\\n\\t\\t<State>ENABLED</State>\\r\\n\\t\\t<Name>test_DefaultEventRule_7378****</Name>\\r\\n\\t\\t<GroupId>3607****</GroupId>\\r\\n\\t</Result>\\r\\n</DescribeEventRuleAttributeResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeEventRuleAttribute',
+ 'description' => 'This topic provides an example to show how to query the details of an event-triggered alert rule named `testRule`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEventRuleList' => [
+ 'summary' => 'Queries event-triggered alert rules.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NamePrefix',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The prefix in the name of the event-triggered alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 1.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 10.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7378****',
+ ],
+ ],
+ [
+ 'name' => 'IsEnable',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to enable the event-triggered alert rule. Valid values:'."\n"
+ ."\n"
+ .'- true (default)'."\n"
+ .'- false',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The event-triggered alert rules.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'User not authorized to operate on the specified resource.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'D0E6D82B-16B5-422A-8136-EE5BDC01E415',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '21',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'EventRules' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EventRule' => [
+ 'description' => 'The event-triggered alert rule.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'EventType' => [
+ 'description' => 'The type of the event-triggered alert rule. Valid values:'."\n"
+ ."\n"
+ .'* SYSTEM: system event-triggered alert rule'."\n"
+ .'* CUSTOM: custom event-triggered alert rule'."\n",
+ 'type' => 'string',
+ 'example' => 'SYSTEM',
+ ],
+ 'Description' => [
+ 'description' => 'The description of the event-triggered alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'Default group event rule.',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '7378****',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the event-triggered alert rule.'."\n",
+ 'type' => 'string',
+ 'example' => 'test_DefaultEventRule_7378****',
+ ],
+ 'State' => [
+ 'description' => 'The status of the event-triggered alert rule. Valid values:'."\n"
+ ."\n"
+ .'* ENABLED'."\n"
+ .'* DISABLED'."\n",
+ 'type' => 'string',
+ 'example' => 'ENABLED',
+ ],
+ 'EventPattern' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EventPattern' => [
+ 'description' => 'The mode of the event-triggered alert rule.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Product' => [
+ 'description' => 'The abbreviation of the Alibaba Cloud service name.'."\n",
+ 'type' => 'string',
+ 'example' => 'CloudMonitor',
+ ],
+ 'LevelList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LevelList' => [
+ 'description' => 'The levels of the event-triggered alerts.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The level of the event-triggered alert. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL'."\n"
+ .'* WARN'."\n"
+ .'* INFO'."\n",
+ 'type' => 'string',
+ 'example' => 'CRITICAL',
+ ],
+ ],
+ ],
+ ],
+ 'EventTypeList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EventTypeList' => [
+ 'description' => 'The types of the event-triggered alert rules.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The type of the event-triggered alert rule.'."\n"
+ ."\n"
+ .'`*` indicates all types of alert rules.'."\n",
+ 'type' => 'string',
+ 'example' => '*',
+ ],
+ ],
+ ],
+ ],
+ 'NameList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NameList' => [
+ 'description' => 'The event names.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The event name.'."\n",
+ 'type' => 'string',
+ 'example' => '["Agent_Status_Stopped"]',
+ ],
+ ],
+ ],
+ ],
+ 'CustomFilters' => [
+ 'description' => 'The custom filter conditions.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS123',
+ ],
+ 'KeywordFilter' => [
+ 'description' => 'The keyword for filtering.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Keywords' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Keywords' => [
+ 'description' => 'The keywords that are used to match events.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The keyword.'."\n",
+ 'type' => 'string',
+ 'example' => 'VMException',
+ ],
+ ],
+ ],
+ ],
+ 'Relation' => [
+ 'description' => 'The relationship between multiple keywords in a condition. Valid values:'."\n"
+ ."\n"
+ .'* OR: The relationship between keywords is OR.'."\n"
+ .'* NOT: The keyword is excluded. The value NOT indicates that all events that do not contain the keywords are matched.'."\n",
+ 'type' => 'string',
+ 'example' => 'OR',
+ ],
+ ],
+ ],
+ 'SQLFilter' => [
+ 'description' => 'Indicates that logs are filtered based on the specified SQL statement. If the specified conditions are met, an alert is triggered.'."\n",
+ 'type' => 'string',
+ 'example' => 'ycccluster1 and (i-23ij0o82612 or Executed1) or Asimulated not 222',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SilenceTime' => [
+ 'description' => 'The mute period during which new alert notifications are not sent even if the trigger conditions are met.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '86400',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"User not authorized to operate on the specified resource.\\",\\n \\"RequestId\\": \\"D0E6D82B-16B5-422A-8136-EE5BDC01E415\\",\\n \\"Total\\": 21,\\n \\"Success\\": true,\\n \\"EventRules\\": {\\n \\"EventRule\\": [\\n {\\n \\"EventType\\": \\"SYSTEM\\",\\n \\"Description\\": \\"Default group event rule.\\",\\n \\"GroupId\\": \\"7378****\\",\\n \\"Name\\": \\"test_DefaultEventRule_7378****\\",\\n \\"State\\": \\"ENABLED\\",\\n \\"EventPattern\\": {\\n \\"EventPattern\\": [\\n {\\n \\"Product\\": \\"CloudMonitor\\",\\n \\"LevelList\\": {\\n \\"LevelList\\": [\\n \\"CRITICAL\\"\\n ]\\n },\\n \\"EventTypeList\\": {\\n \\"EventTypeList\\": [\\n \\"*\\"\\n ]\\n },\\n \\"NameList\\": {\\n \\"NameList\\": [\\n \\"[\\\\\\"Agent_Status_Stopped\\\\\\"]\\"\\n ]\\n },\\n \\"CustomFilters\\": \\"ECS123\\",\\n \\"KeywordFilter\\": {\\n \\"Keywords\\": {\\n \\"Keywords\\": [\\n \\"VMException\\"\\n ]\\n },\\n \\"Relation\\": \\"OR\\"\\n },\\n \\"SQLFilter\\": \\"ycccluster1 and (i-23ij0o82612 or Executed1) or Asimulated not 222\\"\\n }\\n ]\\n },\\n \\"SilenceTime\\": 86400\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeEventRuleListResponse>\\r\\n\\t<RequestId>C8308712-6E7A-4FA0-82AC-80D018DAD168</RequestId>\\r\\n\\t<Total>3</Total>\\r\\n\\t<EventRules>\\r\\n\\t\\t<EventRule>\\r\\n\\t\\t\\t<EventPattern>\\r\\n\\t\\t\\t\\t<NameList>\\r\\n\\t\\t\\t\\t\\t<NameList>*</NameList>\\r\\n\\t\\t\\t\\t</NameList>\\r\\n\\t\\t\\t\\t<LevelList>\\r\\n\\t\\t\\t\\t\\t<LevelList>CRITICAL</LevelList>\\r\\n\\t\\t\\t\\t</LevelList>\\r\\n\\t\\t\\t\\t<EventTypeList>\\r\\n\\t\\t\\t\\t\\t<EventTypeList>*</EventTypeList>\\r\\n\\t\\t\\t\\t</EventTypeList>\\r\\n\\t\\t\\t\\t<Product>CloudMonitor</Product>\\r\\n\\t\\t\\t</EventPattern>\\r\\n\\t\\t\\t<EventType>SYSTEM</EventType>\\r\\n\\t\\t\\t<State>ENABLED</State>\\r\\n\\t\\t\\t<Name>test123</Name>\\r\\n\\t\\t</EventRule>\\r\\n\\t\\t<EventRule>\\r\\n\\t\\t\\t<EventPattern>\\r\\n\\t\\t\\t\\t<NameList>\\r\\n\\t\\t\\t\\t\\t<NameList>*</NameList>\\r\\n\\t\\t\\t\\t</NameList>\\r\\n\\t\\t\\t\\t<LevelList>\\r\\n\\t\\t\\t\\t\\t<LevelList>CRITICAL</LevelList>\\r\\n\\t\\t\\t\\t\\t<LevelList>WARN</LevelList>\\r\\n\\t\\t\\t\\t</LevelList>\\r\\n\\t\\t\\t\\t<Product>*</Product>\\r\\n\\t\\t\\t</EventPattern>\\r\\n\\t\\t\\t<Description>Default group event rule.</Description>\\r\\n\\t\\t\\t<EventType>SYSTEM</EventType>\\r\\n\\t\\t\\t<State>ENABLED</State>\\r\\n\\t\\t\\t<Name>test_DefaultEventRule_7378****</Name>\\r\\n\\t\\t\\t<GroupId>7378****</GroupId>\\r\\n\\t\\t</EventRule>\\r\\n\\t\\t<EventRule>\\r\\n\\t\\t\\t<EventPattern>\\r\\n\\t\\t\\t\\t<NameList>\\r\\n\\t\\t\\t\\t\\t<NameList>*</NameList>\\r\\n\\t\\t\\t\\t</NameList>\\r\\n\\t\\t\\t\\t<LevelList>\\r\\n\\t\\t\\t\\t\\t<LevelList>CRITICAL</LevelList>\\r\\n\\t\\t\\t\\t\\t<LevelList>WARN</LevelList>\\r\\n\\t\\t\\t\\t</LevelList>\\r\\n\\t\\t\\t\\t<Product>*</Product>\\r\\n\\t\\t\\t</EventPattern>\\r\\n\\t\\t\\t<Description>Default group event rule.</Description>\\r\\n\\t\\t\\t<EventType>SYSTEM</EventType>\\r\\n\\t\\t\\t<State>ENABLED</State>\\r\\n\\t\\t\\t<Name>test123_DefaultEventRule_7301****</Name>\\r\\n\\t\\t\\t<GroupId>7301****</GroupId>\\r\\n\\t\\t</EventRule>\\r\\n\\t</EventRules>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeEventRuleListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeEventRuleList',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEventRuleTargetList' => [
+ 'summary' => 'Queries event-triggered alert rules.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the event-triggered alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testRule',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '87170bc7-e28a-4c93-b9bf-90a1dbe84736',
+ ],
+ 'ContactParameters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactParameter' => [
+ 'description' => 'The information about the recipients if alert notifications are sent to the alert contacts of an alert contact group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ContactGroupName' => [
+ 'description' => 'The name of the alert group.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Level' => [
+ 'description' => 'The alert notification methods. Valid values:'."\n"
+ ."\n"
+ .'4: Alert notifications are sent by using DingTalk chatbots and emails.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'FcParameters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'FCParameter' => [
+ 'description' => 'The information about the recipients in Function Compute.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ServiceName' => [
+ 'description' => 'The name of the Function Compute service.',
+ 'type' => 'string',
+ 'example' => 'service1',
+ ],
+ 'FunctionName' => [
+ 'description' => 'The name of the function.',
+ 'type' => 'string',
+ 'example' => 'fcTest1',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the function. '."\n"
+ ."\n"
+ .'Format: `arn:acs:${Service}:${Region}:${Account}:${ResourceType}/${ResourceId}`. Fields: '."\n"
+ ."\n"
+ .'- Service: the code of an Alibaba Cloud service'."\n"
+ .'- Region: the region ID'."\n"
+ .'- Account: the ID of an Alibaba Cloud account'."\n"
+ .'- ResourceType: the resource type'."\n"
+ .'- ResourceId: the resource ID',
+ 'type' => 'string',
+ 'example' => 'acs:log:cn-hangzhou::project/cms-log-mon***/logstore/cxxxx***',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient.',
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Region' => [
+ 'description' => 'The region where Function Compute is deployed.',
+ 'type' => 'string',
+ 'example' => 'cn-qingdao',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'MnsParameters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'MnsParameter' => [
+ 'description' => 'The notifications of Simple Message Queue (formerly MNS) (SMQ).'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Queue' => [
+ 'description' => 'The name of the SMQ queue.'."\n",
+ 'type' => 'string',
+ 'example' => 'testQueue',
+ ],
+ 'Arn' => [
+ 'description' => 'The ARN of the MNS queue. '."\n"
+ ."\n"
+ .'Format: `arn:acs:${Service}:${Region}:${Account}:${ResourceType}/${ResourceId}`. Fields: '."\n"
+ ."\n"
+ .'- Service: the code of an Alibaba Cloud service'."\n"
+ .'- Region: the region ID'."\n"
+ .'- Account: the ID of an Alibaba Cloud account'."\n"
+ .'- ResourceType: the resource type'."\n"
+ .'- ResourceId: the resource ID',
+ 'type' => 'string',
+ 'example' => 'acs:log:cn-hangzhou::project/cms-log-mon***/logstore/cxxxx***',
+ ],
+ 'Region' => [
+ 'description' => 'The region for SMQ.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient.'."\n",
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'Topic' => [
+ 'description' => 'The SMQ topic.'."\n",
+ 'type' => 'string',
+ 'example' => 'topic_sample',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ 'WebhookParameters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'WebhookParameter' => [
+ 'description' => 'The information about the recipients if alert notifications are sent by sending a request to a callback URL.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Url' => [
+ 'description' => 'The callback URL.',
+ 'type' => 'string',
+ 'example' => 'http://www.aliyun.com',
+ ],
+ 'Method' => [
+ 'description' => 'The HTTP request method. Valid values: GET and POST.',
+ 'type' => 'string',
+ 'example' => 'GET',
+ ],
+ 'Protocol' => [
+ 'description' => 'The protocol type.',
+ 'type' => 'string',
+ 'example' => 'HTTP',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient.',
+ 'type' => 'string',
+ 'example' => '5',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SlsParameters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SlsParameter' => [
+ 'description' => 'The information about the recipients in Log Service.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Project' => [
+ 'description' => 'The name of the project.',
+ 'type' => 'string',
+ 'example' => 'project_test',
+ ],
+ 'LogStore' => [
+ 'description' => 'The name of the Logstore.',
+ 'type' => 'string',
+ 'example' => 'logstore_test',
+ ],
+ 'Arn' => [
+ 'description' => 'The ARN of the Log Service Logstore. '."\n"
+ ."\n"
+ .'Format: `arn:acs:${Service}:${Region}:${Account}:${ResourceType}/${ResourceId}`. Fields: '."\n"
+ ."\n"
+ .'- Service: the code of an Alibaba Cloud service'."\n"
+ .'- Region: the region ID'."\n"
+ .'- Account: the ID of an Alibaba Cloud account'."\n"
+ .'- ResourceType: the resource type'."\n"
+ .'- ResourceId: the resource ID',
+ 'type' => 'string',
+ 'example' => 'acs:log:cn-hangzhou::project/cms-log-mo****/logstore/c***',
+ ],
+ 'Region' => [
+ 'description' => 'The ID of the region where the Log Service project resides.',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient.',
+ 'type' => 'string',
+ 'example' => '4',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'OpenApiParameters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'OpenApiParameters' => [
+ 'description' => 'The information about the recipients in OpenAPI Explorer.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Action' => [
+ 'description' => 'The name of the API operation.',
+ 'type' => 'string',
+ 'example' => 'PutLogs',
+ ],
+ 'Arn' => [
+ 'description' => 'The ARN of the API operation. '."\n"
+ ."\n"
+ .'Format: `arn:acs:${Service}:${Region}:${Account}:${ResourceType}/${ResourceId}`. Fields: '."\n"
+ ."\n"
+ .'- Service: the code of an Alibaba Cloud service'."\n"
+ .'- Region: the region ID'."\n"
+ .'- Account: the ID of an Alibaba Cloud account'."\n"
+ .'- ResourceType: the resource type'."\n"
+ .'- ResourceId: the resource ID The ARN of the Log Service Logstore. '."\n"
+ ."\n"
+ .'Format: `arn:acs:${Service}:${Region}:${Account}:${ResourceType}/${ResourceId}`. Fields:'."\n"
+ .'- Service: the code of an Alibaba Cloud service'."\n"
+ .'- Region: the region ID'."\n"
+ .'- Account: the ID of an Alibaba Cloud account'."\n"
+ .'- ResourceType: the resource type'."\n"
+ .'- ResourceId: the resource ID',
+ 'type' => 'string',
+ 'example' => 'acs:log:cn-hangzhou::project/cms-log-mon***/logstore/cxxxx***',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient.',
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'Product' => [
+ 'description' => 'The ID of the cloud service to which the API operation belongs.',
+ 'type' => 'string',
+ 'example' => 'log',
+ ],
+ 'Region' => [
+ 'description' => 'The region where the resource resides.',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Role' => [
+ 'description' => 'The name of the role.',
+ 'type' => 'string',
+ 'example' => 'MyRole',
+ ],
+ 'Version' => [
+ 'description' => 'The version of the API.',
+ 'type' => 'string',
+ 'example' => '2019-01-01',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"87170bc7-e28a-4c93-b9bf-90a1dbe84736\\",\\n \\"ContactParameters\\": {\\n \\"ContactParameter\\": [\\n {\\n \\"ContactGroupName\\": \\"默认告警通知组\\",\\n \\"Level\\": \\"3\\",\\n \\"Id\\": \\"1\\"\\n }\\n ]\\n },\\n \\"FcParameters\\": {\\n \\"FCParameter\\": [\\n {\\n \\"ServiceName\\": \\"service1\\",\\n \\"FunctionName\\": \\"fcTest1\\",\\n \\"Arn\\": \\"acs:log:cn-hangzhou::project/cms-log-mon***/logstore/cxxxx***\\",\\n \\"Id\\": \\"3\\",\\n \\"Region\\": \\"cn-qingdao\\"\\n }\\n ]\\n },\\n \\"MnsParameters\\": {\\n \\"MnsParameter\\": [\\n {\\n \\"Queue\\": \\"testQueue\\",\\n \\"Arn\\": \\"acs:log:cn-hangzhou::project/cms-log-mon***/logstore/cxxxx***\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"Id\\": \\"2\\",\\n \\"Topic\\": \\"topic_sample\\"\\n }\\n ]\\n },\\n \\"WebhookParameters\\": {\\n \\"WebhookParameter\\": [\\n {\\n \\"Url\\": \\"http://www.aliyun.com\\",\\n \\"Method\\": \\"GET\\",\\n \\"Protocol\\": \\"HTTP\\",\\n \\"Id\\": \\"5\\"\\n }\\n ]\\n },\\n \\"SlsParameters\\": {\\n \\"SlsParameter\\": [\\n {\\n \\"Project\\": \\"project_test\\",\\n \\"LogStore\\": \\"logstore_test\\",\\n \\"Arn\\": \\"acs:log:cn-hangzhou::project/cms-log-mo****/logstore/c***\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"Id\\": \\"4\\"\\n }\\n ]\\n },\\n \\"OpenApiParameters\\": {\\n \\"OpenApiParameters\\": [\\n {\\n \\"Action\\": \\"PutLogs\\",\\n \\"Arn\\": \\"acs:log:cn-hangzhou::project/cms-log-mon***/logstore/cxxxx***\\",\\n \\"Id\\": \\"3\\",\\n \\"Product\\": \\"log\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"Role\\": \\"MyRole\\",\\n \\"Version\\": \\"2019-01-01\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeEventRuleTargetList>\\r\\n\\t\\t<RequestId>87170bc7-e28a-4c93-b9bf-90a1dbe84736</RequestId>\\r\\n\\t\\t<ContactParameters>\\r\\n\\t\\t\\t<ContactParameter>\\r\\n\\t\\t\\t\\t<ContactGroupName>默认告警通知组</ContactGroupName>\\r\\n\\t\\t\\t\\t<Level>3</Level>\\r\\n\\t\\t\\t\\t<Id>1</Id>\\r\\n\\t\\t\\t</ContactParameter>\\r\\n\\t\\t</ContactParameters>\\r\\n\\t\\t<SlsParameters>\\r\\n\\t\\t\\t<SlsParameter>\\r\\n\\t\\t\\t\\t<Project>project_test</Project>\\r\\n\\t\\t\\t\\t<LogStore>logstore_test</LogStore>\\r\\n\\t\\t\\t\\t<Region>cn-hangzhou</Region>\\r\\n\\t\\t\\t\\t<Arn>acs:log:cn-hangzhou::project/cms-log-mon***/logstore/cxxxx***</Arn>\\r\\n\\t\\t\\t\\t<Id>2</Id>\\r\\n\\t\\t\\t</SlsParameter>\\r\\n\\t\\t</SlsParameters>\\r\\n\\t\\t<Code>200</Code>\\r\\n</DescribeEventRuleTargetList>","errorExample":""}]',
+ 'title' => 'DescribeEventRuleTargetList',
+ 'description' => 'This topic provides an example to show how to query the details of an event-triggered alert rule named `testRule`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutEventRuleTargets' => [
+ 'summary' => 'Adds or modifies the push channels of an event-triggered alert rule.',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'testEventRule',
+ ],
+ ],
+ [
+ 'name' => 'FcParameters',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The information about the recipients in Function Compute.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'FunctionName' => [
+ 'description' => 'The name of the function. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'fc-test',
+ ],
+ 'Region' => [
+ 'description' => 'The region where Function Compute is deployed. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ 'ServiceName' => [
+ 'description' => 'The name of the Function Compute service. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'fc-test',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient that receives alert notifications. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'ContactParameters',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The information about the alert contact groups that receive alert notifications.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ContactGroupName' => [
+ 'description' => 'The name of the alert contact group. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient that receives alert notifications. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ 'Level' => [
+ 'description' => 'The alert notification methods. Valid values of N: 1 to 5. Valid values:'."\n"
+ ."\n"
+ .'4: Alert notifications are sent by using DingTalk and emails.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'MnsParameters',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The notifications of Simple Message Queue (formerly MNS) (SMQ).'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Region' => [
+ 'description' => 'The region for SMQ. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Queue' => [
+ 'description' => 'The name of the SMQ queue. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'queue1',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient that receives alert notifications. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Topic' => [
+ 'description' => 'The SMQ topic.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'topic_sample',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'WebhookParameters',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The information about the callback URLs that are used to receive alert notifications.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Protocol' => [
+ 'description' => 'The name of the protocol. Valid values of N: 1 to 5. Valid values:'."\n"
+ ."\n"
+ .'* http'."\n"
+ .'* telnet'."\n"
+ .'* ping'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http',
+ ],
+ 'Url' => [
+ 'description' => 'The callback URL. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http://www.aliyun.com',
+ ],
+ 'Method' => [
+ 'description' => 'The HTTP request method. Valid values of N: 1 to 5.'."\n"
+ ."\n"
+ .'Valid values: GET and POST.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GET',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient that receives alert notifications. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '4',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'SlsParameters',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The information about the recipients in Simple Log Service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'LogStore' => [
+ 'description' => 'The name of the Simple Log Service Logstore. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testlogstore',
+ ],
+ 'Region' => [
+ 'description' => 'The region where Simple Log Service is deployed. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Project' => [
+ 'description' => 'The name of the Simple Log Service project. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testproject',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient that receives alert notifications. Valid values of N: 1 to 5.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ [
+ 'name' => 'OpenApiParameters',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The parameters of API callback notification.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Action' => [
+ 'description' => 'The API name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PutLogs',
+ ],
+ 'Arn' => [
+ 'description' => 'The Alibaba Cloud Resource Name (ARN) of the resource. Valid values of N: 1 to 5. Format: `arn:acs:${Service}:${Region}:${Account}:${ResourceType}/${ResourceId}`. Fields:'."\n"
+ ."\n"
+ .'* Service: the code of a cloud service'."\n"
+ .'* Region: the region ID'."\n"
+ .'* Account: the ID of an Alibaba Cloud account'."\n"
+ .'* ResourceType: the resource type'."\n"
+ .'* ResourceId: the resource ID'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs:log:cn-hangzhou::project/cms-log-mon***/logstore/cxxxx***',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient that receives alert notifications sent by an API callback.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'Product' => [
+ 'description' => 'The ID of the cloud service to which the API operation belongs.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'log',
+ ],
+ 'Region' => [
+ 'description' => 'The region where the resource resides.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Role' => [
+ 'description' => 'The name of the role.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'MyRole',
+ ],
+ 'Version' => [
+ 'description' => 'The version of the API.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2019-01-01',
+ ],
+ 'JsonParams' => [
+ 'description' => 'The parameters of the alert callback. Specify the parameters in the JSON format.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"customField1":"value1","customField2":"$.name"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 5,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '409C64DA-CF14-45DF-B463-471C790DD15A',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'FailedParameterCount' => [
+ 'description' => 'The number of resources that failed to be created or modified.'."\n",
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'FailedContactParameters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactParameter' => [
+ 'description' => 'This parameter is returned if the specified alert contact groups in the request failed to be created or modified.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ContactGroupName' => [
+ 'description' => 'The name of the alert contact group.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'Level' => [
+ 'description' => 'The alert notification methods. Valid values:'."\n"
+ ."\n"
+ .'4: Alert notifications are sent by using DingTalk and emails.'."\n",
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'FailedMnsParameters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'MnsParameter' => [
+ 'description' => 'This parameter is returned if the specified queues in the request failed to be created or modified in SMQ.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Queue' => [
+ 'description' => 'The name of the MNS queue.'."\n",
+ 'type' => 'string',
+ 'example' => 'testQueue',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'Region' => [
+ 'description' => 'The region ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'FailedFcParameters' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'FcParameter' => [
+ 'description' => 'This parameter is returned if the specified functions in the request failed to be created or modified in Function Compute.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServiceName' => [
+ 'description' => 'The name of the Function Compute service.'."\n",
+ 'type' => 'string',
+ 'example' => 'serviceTest1',
+ ],
+ 'FunctionName' => [
+ 'description' => 'The name of the function.'."\n",
+ 'type' => 'string',
+ 'example' => 'functionTest1',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the recipient.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Region' => [
+ 'description' => 'The region ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"409C64DA-CF14-45DF-B463-471C790DD15A\\",\\n \\"Success\\": true,\\n \\"FailedParameterCount\\": \\"2\\",\\n \\"FailedContactParameters\\": {\\n \\"ContactParameter\\": [\\n {\\n \\"ContactGroupName\\": \\"默认报警联系人组\\",\\n \\"Id\\": 2,\\n \\"Level\\": \\"4\\"\\n }\\n ]\\n },\\n \\"FailedMnsParameters\\": {\\n \\"MnsParameter\\": [\\n {\\n \\"Queue\\": \\"testQueue\\",\\n \\"Id\\": 2,\\n \\"Region\\": \\"cn-hangzhou\\"\\n }\\n ]\\n },\\n \\"FailedFcParameters\\": {\\n \\"FcParameter\\": [\\n {\\n \\"ServiceName\\": \\"serviceTest1\\",\\n \\"FunctionName\\": \\"functionTest1\\",\\n \\"Id\\": 1,\\n \\"Region\\": \\"cn-hangzhou\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DeleteCustomMetric>\\n\\t\\t<RequestId>681CC49A-DD28-4D11-B86F-19D3F71E0EAE</RequestId>\\n\\t\\t<Code>200</Code>\\n\\t\\t<Success>true</Success>\\n</DeleteCustomMetric>","errorExample":""}]',
+ 'title' => 'PutEventRuleTargets',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutEventRule' => [
+ 'summary' => '创建或者修改事件监控',
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the event-triggered alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'myRuleName',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group to which the event-triggered alert rule belongs.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7378****',
+ ],
+ ],
+ [
+ 'name' => 'EventType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the event-triggered alert rule. Valid values:'."\n"
+ ."\n"
+ .'* SYSTEM: system event-triggered alert rule'."\n"
+ .'* CUSTOM: custom event-triggered alert rule'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SYSTEM',
+ 'default' => 'SYSTEM',
+ 'enum' => [
+ 'SYSTEM',
+ 'CUSTOM',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the event-triggered alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'State',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of the event-triggered alert rule. Valid values:'."\n"
+ ."\n"
+ .'* ENABLED: enabled'."\n"
+ .'* DISABLED: disabled'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ENABLED',
+ 'default' => 'ENABLED',
+ 'enum' => [
+ 'ENABLED',
+ 'DISABLED',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'EventPattern',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'EventTypeList' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The type of the event-triggered alert rule. Valid values of N: 1 to 50. Valid values:'."\n"
+ ."\n"
+ .'* StatusNotification: fault notifications'."\n"
+ .'* Exception: exceptions'."\n"
+ .'* Maintenance: O\\&M'."\n"
+ .'* \\*: all types'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Exception',
+ ],
+ 'required' => false,
+ 'example' => 'Exception',
+ 'maxItems' => 5,
+ ],
+ 'StatusList' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The status of the event-triggered alert rule. Valid values of N: 1 to 50.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Failed',
+ ],
+ 'required' => false,
+ 'example' => 'Failed',
+ 'maxItems' => 5,
+ ],
+ 'Product' => [
+ 'description' => 'The type of the cloud service. Valid values of N: 1 to 50.'."\n"
+ ."\n"
+ .'> You can call the DescribeSystemEventMetaList operation to query the cloud services that support event-triggered alerts. For more information, see [DescribeSystemEventMetaList](~~114972~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs',
+ ],
+ 'LevelList' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The level of the event-triggered alert rule. Valid values of N: 1 to 50. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL: critical'."\n"
+ .'* WARN: warning'."\n"
+ .'* INFO: information'."\n"
+ .'* \\*: all levels'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CRITICAL',
+ ],
+ 'required' => false,
+ 'example' => 'CRITICAL',
+ 'maxItems' => 5,
+ ],
+ 'NameList' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The name of the event-triggered alert rule. Valid values of N: 1 to 50.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Agent_Status_Stopped',
+ ],
+ 'required' => false,
+ 'example' => 'Agent_Status_Stopped',
+ 'maxItems' => 20,
+ ],
+ 'CustomFilters' => [
+ 'description' => 'The keyword that is used to filter events. If the content of an event contains the specified keyword, an alert is automatically triggered.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Stopping',
+ ],
+ 'SQLFilter' => [
+ 'description' => 'The SQL condition that is used to filter events. If the content of an event meets the specified SQL condition, an alert is automatically triggered.'."\n"
+ ."\n"
+ .'> The syntax of SQL event filtering is consistent with the query syntax of Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '192.168.XX.XX and Executed',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 50,
+ ],
+ ],
+ [
+ 'name' => 'SilenceTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The mute period during which new alerts are not sent even if the trigger conditions are met. Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '86400',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'Data' => [
+ 'description' => 'The number of event-triggered alert rules that were created or modified.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => '0B47C47B-E68A-4429-BB23-370E91889C7D',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"Data\\": \\"1\\",\\n \\"RequestId\\": \\"0B47C47B-E68A-4429-BB23-370E91889C7D\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<PutEventRuleResponse>\\n\\t\\t<RequestId>0B47C47B-E68A-4429-BB23-370E91889C7D</RequestId>\\n\\t\\t<Data>1</Data>\\n\\t\\t<Code>200</Code>\\n\\t\\t<Success>true</Success>\\n</PutEventRuleResponse>","errorExample":""}]',
+ 'title' => 'PutEventRule',
+ 'description' => 'If the specified rule name does not exist, an event-triggered alert rule is created. If the specified rule name exists, the specified event-triggered alert rule is modified.'."\n"
+ ."\n"
+ .'In this example, the `myRuleName` alert rule is created for the `ecs` cloud service.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutCustomEventRule' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ 'put',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group. For more information about how to obtain the group ID, see [DescribeCustomEventAttribute](~~115262~~).'."\n"
+ ."\n"
+ .'> The value 0 indicates that the reported custom event does not belong to any application Group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '7378****',
+ ],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the alert rule.'."\n"
+ ."\n"
+ .'> You can specify an existing ID to modify the corresponding alert rule or specify a new ID to create an alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'CustomRuleId1',
+ ],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'CustomeRule',
+ ],
+ ],
+ [
+ 'name' => 'EventName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the custom event. For more information about how to obtain the event name, see [DescribeCustomEventAttribute](~~115262~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'HostDown',
+ ],
+ ],
+ [
+ 'name' => 'ContactGroups',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert contact group that receives alert notifications. Separate multiple contact groups with commas (,).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ [
+ 'name' => 'Webhook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The callback URL to which a POST request is sent when an alert is triggered based on the alert rule.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://www.aliyun.com',
+ ],
+ ],
+ [
+ 'name' => 'EffectiveInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The time period during which the alert rule is effective. Valid values: 00:00 to 23:59.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '00:00-23:59',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The cycle that is used to aggregate monitoring data of the custom event. Unit: seconds. Set the value to an integral multiple of 60. Default value: 300.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ 'default' => '300',
+ ],
+ ],
+ [
+ 'name' => 'EmailSubject',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The subject of the alert notification email.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'Threshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert threshold.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '99',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The level of the alert. Valid values:'."\n"
+ ."\n"
+ .'* CRITICAL: critical issue'."\n"
+ .'* WARN: warning'."\n"
+ .'* INFO: information'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'CRITICAL',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The value 200 indicates that the call was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The request has failed due to a temporary failure of the server.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of the request.'."\n",
+ 'type' => 'string',
+ 'example' => 'AD5DCD82-BD1C-405F-BAED-32302DE9F498',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 204 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 206 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 499 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The request has failed due to a temporary failure of the server.\\",\\n \\"RequestId\\": \\"AD5DCD82-BD1C-405F-BAED-32302DE9F498\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<PutCustomEventRuleResponse>\\n\\t<RequestId>AD5DCD82-BD1C-405F-BAED-32302DE9F498</RequestId>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</PutCustomEventRuleResponse>","errorExample":""}]',
+ 'title' => 'PutCustomEventRule',
+ 'description' => 'Before you call this operation, call the PutCustomEvent operation to report the monitoring data of the custom event. For more information, see [PutCustomEvent](~~115012~~).'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateMetricRuleBlackList' => [
+ 'summary' => 'Creates a blacklist policy.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Blacklist-01',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of different cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The category of the cloud service. For example, ApsaraDB for Redis includes the following categories: ApsaraDB for Redis (standard architecture), ApsaraDB for Redis (cluster architecture), and ApsaraDB for Redis (read/write splitting architecture). In this case, the valid values of this parameter for ApsaraDB for Redis include `kvstore_standard`, `kvstore_sharding`, and `kvstore_splitrw`.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs',
+ ],
+ ],
+ [
+ 'name' => 'ScopeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The effective scope of the blacklist policy. Valid values:'."\n"
+ ."\n"
+ .'* USER (default): The blacklist policy takes effect only for the current Alibaba Cloud account.'."\n"
+ .'* GROUP: The blacklist policy takes effect only for the specified application group. For information about how to query the IDs of application groups, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'USER',
+ ],
+ ],
+ [
+ 'name' => 'ScopeValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group. The value of this parameter is a JSON array.'."\n"
+ ."\n"
+ .'> This parameter must be specified when `ScopeType` is set to `GROUP`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["67****","78****"]',
+ ],
+ ],
+ [
+ 'name' => 'EnableStartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The timestamp when the blacklist policy starts to take effect.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1640237400000',
+ ],
+ ],
+ [
+ 'name' => 'EnableEndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The timestamp when the blacklist policy expires.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1640608200000',
+ ],
+ ],
+ [
+ 'name' => 'EffectiveTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The time range within which the blacklist policy is effective.'."\n"
+ ."\n"
+ .'* If you do not configure this parameter, the blacklist policy is permanently effective.'."\n"
+ ."\n"
+ .'* If you configure this parameter, the blacklist policy is effective only within the specified time range. Examples:'."\n"
+ ."\n"
+ .' * `03:00-04:59`: The blacklist policy is effective from 03:00 to 05:00 local time. 05:00 local time is excluded.'."\n"
+ .' * `03:00-04:59 UTC+0700`: The blacklist policy is effective from 03:00 to 05:00 (UTC+7). 05:00 (UTC+7) is excluded.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '03:00-04:59',
+ ],
+ ],
+ [
+ 'name' => 'Instances',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The IDs of the instances that belong to the specified cloud service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The IDs of the instances that belong to the specified cloud service.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"instancceId":"i-bp1ew0zfkjblsuwx****"}',
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'Metrics',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The metrics of the instance.'."\n"
+ ."\n"
+ .'* If you do not configure this parameter, the blacklist policy applies to all metrics of the specified cloud service.'."\n"
+ .'* If you configure this parameter, the blacklist policy applies only to the current metric.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'disk_utilization',
+ ],
+ 'Resource' => [
+ 'description' => 'The extended dimension of the instance. For example, `{"device":"C:"}` specifies that the blacklist policy is applied to all C disks of the specified Elastic Compute Service (ECS) instance.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"device":"C:"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The request has failed due to a temporary failure of the server.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '5C637FA3-3959-3352-8BE6-78CE2ED2D33D',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'example' => '93514c96-ceb8-47d8-8ee3-93b6d98b****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The request has failed due to a temporary failure of the server.\\",\\n \\"RequestId\\": \\"5C637FA3-3959-3352-8BE6-78CE2ED2D33D\\",\\n \\"Success\\": true,\\n \\"Id\\": \\"93514c96-ceb8-47d8-8ee3-93b6d98b****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateMetricRuleBlackListResponse>\\n <RequestId>5C637FA3-3959-3352-8BE6-78CE2ED2D33D</RequestId>\\n <Id>93514c96-ceb8-47d8-8ee3-93b6d98b****</Id>\\n <Success>true</Success>\\n</CreateMetricRuleBlackListResponse>","errorExample":""}]',
+ 'title' => 'CreateMetricRuleBlackList',
+ 'description' => '### Background information'."\n"
+ ."\n"
+ .'* CloudMonitor blocks alert notifications based on the blacklist policies that take effect. To block alert notifications when the value of a metric that belongs to a cloud service reaches the threshold that you specified, add the metric to a blacklist policy.'."\n"
+ .'* CloudMonitor allows you to create blacklist policies only based on threshold metrics. You cannot create blacklist policies based on system events. For more information about the cloud services and the thresholds of the metrics that are supported by CloudMonitor, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'ModifyMetricRuleBlackList' => [
+ 'summary' => 'Modifies a blacklist policy.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the blacklist policy.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of a blacklist policy, see [DescribeMetricRuleBlackList](~~457257~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '93514c96-ceb8-47d8-8ee3-93b6d98b****',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Blacklist-02',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The category of the cloud service. For example, ApsaraDB for Redis supports the standard architecture, the cluster architecture, and the read/write splitting architecture. In this case, the valid values of this parameter for ApsaraDB for Redis include `kvstore_standard`, `kvstore_sharding`, and `kvstore_splitrw`.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ecs',
+ ],
+ ],
+ [
+ 'name' => 'ScopeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The effective scope of the blacklist policy. Valid values:'."\n"
+ ."\n"
+ .'* USER: The blacklist policy takes effect only within the current Alibaba Cloud account.'."\n"
+ .'* GROUP (default): The blacklist policy takes effect only within the specified application group. For information about how to obtain the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'USER',
+ ],
+ ],
+ [
+ 'name' => 'ScopeValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The IDs of the application groups.'."\n"
+ ."\n"
+ .'> This parameter is required only when `ScopeType` is set to `GROUP`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["67****","78****"]',
+ ],
+ ],
+ [
+ 'name' => 'EnableStartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The timestamp when the blacklist policy starts to take effect.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1640237400000',
+ ],
+ ],
+ [
+ 'name' => 'EnableEndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The timestamp when the blacklist policy expires.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1640608200000',
+ ],
+ ],
+ [
+ 'name' => 'EffectiveTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The time range within which the blacklist policy is effective. Take note of the following information:'."\n"
+ ."\n"
+ .'* If you do not configure this parameter, the blacklist policy is permanently effective.'."\n"
+ ."\n"
+ .'* If you configure this parameter, the blacklist policy is effective only within the specified time range. Examples:'."\n"
+ ."\n"
+ .' * `03:00-04:59`: The blacklist policy is effective from 03:00 to 05:00 local time. 05:00 local time is excluded.'."\n"
+ .' * `03:00-04:59 UTC+0700`: The blacklist policy is effective from 03:00 to 05:00 (UTC+7). 05:00 (UTC+7) is excluded.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '03:00-04:59',
+ ],
+ ],
+ [
+ 'name' => 'Instances',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The IDs of the instances that belong to the specified cloud service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The IDs of the instances that belong to the specified cloud service.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"instancceId":"i-bp1ew0zfkjblsuwx****"}',
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'Metrics',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The metrics of the instance.'."\n"
+ ."\n"
+ .'* If you do not configure this parameter, the blacklist policy applies to all metrics of the specified cloud service.'."\n"
+ .'* If you configure this parameter, the blacklist policy applies only to the current metric.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The name of the metric.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'disk_utilization',
+ ],
+ 'Resource' => [
+ 'description' => 'The extended dimension of the instance. For example, `{"device":"C:"}` specifies that the blacklist policy is applied to all C disks of the specified Elastic Compute Service (ECS) instance.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 10.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"device":"C:"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The error code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '008773AE-1D86-3231-90F9-1AF7F808F9CE',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Count' => [
+ 'description' => 'The number of blacklist policies that are modified.'."\n",
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"008773AE-1D86-3231-90F9-1AF7F808F9CE\\",\\n \\"Success\\": true,\\n \\"Count\\": \\"1\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyMetricRuleBlackListResponse>\\n <RequestId>008773AE-1D86-3231-90F9-1AF7F808F9CE</RequestId>\\n <Success>true</Success>\\n <Count>1</Count>\\n</ModifyMetricRuleBlackListResponse>","errorExample":""}]',
+ 'title' => 'ModifyMetricRuleBlackList',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DeleteMetricRuleBlackList' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The IDs of the blacklist policies. Separate multiple IDs with commas (,). You can specify up to 50 IDs.'."\n"
+ ."\n"
+ .'For more information about how to obtain the ID of a blacklist policy, see [DescribeMetricRuleBlackList](~~457257~~).'."\n"
+ ."\n"
+ .'> You can also set this parameter to a JSON array. Example: `["a9ad2ac2-3ed9-11ed-b878-0242ac12****","5cb8a9a4-198f-4651-a353-f8b28788****"]`.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'a9ad2ac2-3ed9-11ed-b878-0242ac12****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'B88D233C-A004-3AB8-AD9C-30CBDD4440C5',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Count' => [
+ 'description' => 'The number of blacklist policies that are deleted.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"B88D233C-A004-3AB8-AD9C-30CBDD4440C5\\",\\n \\"Success\\": true,\\n \\"Count\\": 1\\n}","errorExample":""},{"type":"xml","example":"<DeleteMetricRuleBlackListResponse>\\n <RequestId>B88D233C-A004-3AB8-AD9C-30CBDD4440C5</RequestId>\\n <Success>true</Success>\\n <Count>1</Count>\\n</DeleteMetricRuleBlackListResponse>","errorExample":""}]',
+ 'title' => 'DeleteMetricRuleBlackList',
+ 'summary' => 'Deletes multiple blacklist policies at a time.',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DescribeMetricRuleBlackList' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The timestamp when the blacklist policy expired.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the metric.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The categories of the Alibaba Cloud service. For example, ApsaraDB for Redis includes the following categories: ApsaraDB for Redis (standard architecture), ApsaraDB for Redis (cluster architecture), and ApsaraDB for Redis (read/write splitting architecture). In this case, the valid values of this parameter for ApsaraDB for Redis include `kvstore_standard`, `kvstore_sharding`, and `kvstore_splitrw`.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'Order',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the call was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => 'DESC',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ecs',
+ ],
+ ],
+ [
+ 'name' => 'Ids',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The operation that you want to perform. Set the value to **DescribeMetricRuleBlackList**.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'a9ad2ac2-3ed9-11ed-b878-0242ac12****',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the blacklist policy.'."\n"
+ ."\n"
+ .'This parameter supports fuzzy match.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Blacklist-01',
+ ],
+ ],
+ [
+ 'name' => 'ScopeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The effective scope of the blacklist policy. Valid values:'."\n"
+ ."\n"
+ .'* USER: The blacklist policy takes effect only within the current Alibaba Cloud account.'."\n"
+ .'* GROUP: The blacklist policy takes effect only within the specified application group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'USER',
+ ],
+ ],
+ [
+ 'name' => 'IsEnable',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The status of the blacklist policy. Valid values:'."\n"
+ ."\n"
+ .'* true: The blacklist policy is enabled.'."\n"
+ .'* false: The blacklist policy is disabled.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'The IDs of the instances in the blacklist policy.'."\n"
+ ."\n"
+ .'Valid values of N: 0 to 10.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The ID of the instance in the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-2ze2d6j5uhg20x47****',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The categories of the Alibaba Cloud service. For example, ApsaraDB for Redis includes the following categories: ApsaraDB for Redis (standard architecture), ApsaraDB for Redis (cluster architecture), and ApsaraDB for Redis (read/write splitting architecture). In this case, the valid values of this parameter for ApsaraDB for Redis include `kvstore_standard`, `kvstore_sharding`, and `kvstore_splitrw`.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The namespace of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'D63E76CB-29AA-5B9F-88CE-400A6F28D428',
+ ],
+ 'Total' => [
+ 'description' => 'The timestamp when the blacklist policy was created.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Success' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of different cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'DescribeMetricRuleBlackList' => [
+ 'description' => 'The queried blacklist policies.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'EffectiveTime' => [
+ 'description' => 'The time range within which the blacklist policy is effective.'."\n",
+ 'type' => 'string',
+ 'example' => '00:00-23:59',
+ ],
+ 'UpdateTime' => [
+ 'description' => 'The timestamp when the blacklist policy was modified.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1665718373000',
+ ],
+ 'CreateTime' => [
+ 'description' => 'The timestamp when the blacklist policy was created.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1665714561000',
+ ],
+ 'ScopeType' => [
+ 'description' => 'The effective scope of the blacklist policy. Valid values:'."\n"
+ ."\n"
+ .'* USER: The blacklist policy takes effect only within the current Alibaba Cloud account.'."\n"
+ .'* GROUP: The blacklist policy takes effect only within the specified application group.'."\n",
+ 'type' => 'string',
+ 'example' => 'USER',
+ ],
+ 'IsEnable' => [
+ 'description' => 'The status of the blacklist policy. Valid values:'."\n"
+ ."\n"
+ .'* true: The blacklist policy is enabled.'."\n"
+ .'* false: The blacklist policy is disabled.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace of the cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'Category' => [
+ 'description' => 'The category of the cloud service. For example, ApsaraDB for Redis includes the following categories: ApsaraDB for Redis (standard architecture), ApsaraDB for Redis (cluster architecture), and ApsaraDB for Redis (read/write splitting architecture). In this case, the valid values of this parameter for ApsaraDB for Redis include `kvstore_standard`, `kvstore_sharding`, and `kvstore_splitrw`.'."\n",
+ 'type' => 'string',
+ 'example' => 'ecs',
+ ],
+ 'EnableEndTime' => [
+ 'description' => 'The timestamp when the blacklist policy started to take effect.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1640608200000',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'example' => 'Blacklist-01',
+ ],
+ 'EnableStartTime' => [
+ 'description' => 'The timestamp when the blacklist policy expired.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1640237400000',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the blacklist policy.'."\n",
+ 'type' => 'string',
+ 'example' => '93514c96-ceb8-47d8-8ee3-93b6d98b****',
+ ],
+ 'Metrics' => [
+ 'description' => 'The metrics of the instance.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Resource' => [
+ 'description' => 'The extended dimension of the instance. For example, `{"device":"C:"}` specifies that the blacklist policy is applied to all C disks of the specified Elastic Compute Service (ECS) instance.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"device":"C:"}]',
+ ],
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'disk_utilization',
+ ],
+ ],
+ ],
+ ],
+ 'Instances' => [
+ 'description' => 'The IDs of the instances that belong to the specified cloud service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The IDs of the instances that belong to the specified cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-rj99xc6cptkk64ml****',
+ ],
+ ],
+ 'ScopeValue' => [
+ 'description' => 'The IDs of the application groups.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The IDs of the application groups. The value of this parameter is a JSON array.'."\n"
+ ."\n"
+ .'> This parameter is returned only if the `ScopeType` parameter is set to `GROUP`.'."\n",
+ 'type' => 'string',
+ 'example' => '["67****","78****"]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"D63E76CB-29AA-5B9F-88CE-400A6F28D428\\",\\n \\"Total\\": 1,\\n \\"Success\\": true,\\n \\"DescribeMetricRuleBlackList\\": [\\n {\\n \\"EffectiveTime\\": \\"00:00-23:59\\",\\n \\"UpdateTime\\": \\"1665718373000\\",\\n \\"CreateTime\\": \\"1665714561000\\",\\n \\"ScopeType\\": \\"USER\\",\\n \\"IsEnable\\": true,\\n \\"Namespace\\": \\"acs_ecs_dashboard\\",\\n \\"Category\\": \\"ecs\\",\\n \\"EnableEndTime\\": 1640608200000,\\n \\"Name\\": \\"Blacklist-01\\",\\n \\"EnableStartTime\\": 1640237400000,\\n \\"Id\\": \\"93514c96-ceb8-47d8-8ee3-93b6d98b****\\",\\n \\"Metrics\\": [\\n {\\n \\"Resource\\": \\"[{\\\\\\"device\\\\\\":\\\\\\"C:\\\\\\"}]\\",\\n \\"MetricName\\": \\"disk_utilization\\"\\n }\\n ],\\n \\"Instances\\": [\\n \\"i-rj99xc6cptkk64ml****\\"\\n ],\\n \\"ScopeValue\\": [\\n \\"[\\\\\\"67****\\\\\\",\\\\\\"78****\\\\\\"]\\"\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeMetricRuleBlackListResponse>\\n <RequestId>D63E76CB-29AA-5B9F-88CE-400A6F28D428</RequestId>\\n <Total>1</Total>\\n <DescribeMetricRuleBlackList>\\n <ScopeType>USER</ScopeType>\\n <Instances>\\n <instancceId>i-rj99xc6cptkk64ml****</instancceId>\\n </Instances>\\n <IsEnable>true</IsEnable>\\n <Metrics>\\n <MetricName>disk_utilization</MetricName>\\n <Resource/>\\n </Metrics>\\n <Category>ecs</Category>\\n <CreateTime>1635714561000</CreateTime>\\n <UpdateTime>1635718373000</UpdateTime>\\n <Id>93514c96-ceb8-47d8-8ee3-93b6d98b****</Id>\\n <Namespace>acs_ecs_dashboard</Namespace>\\n <Name>Blacklist-01</Name>\\n </DescribeMetricRuleBlackList>\\n <Success>true</Success>\\n</DescribeMetricRuleBlackListResponse>","errorExample":""}]',
+ 'title' => 'DescribeMetricRuleBlackList',
+ 'summary' => 'Queries blacklist policies.',
+ 'requestParamsDescription' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The call was successful.'."\n"
+ .'* false: The call failed.'."\n",
+ ],
+ 'EnableMetricRuleBlackList' => [
+ 'summary' => 'Enables or disables multiple blacklist policies at a time.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Id',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The IDs of the blacklist policies. Separate multiple IDs with commas (,). You can specify up to 50 IDs.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of a blacklist policy, see [DescribeMetricRuleBlackList](~~457257~~).'."\n"
+ ."\n"
+ .'> You can also set this parameter to a JSON array. Example: `["a9ad2ac2-3ed9-11ed-b878-0242ac12****","5cb8a9a4-198f-4651-a353-f8b28788****"]`.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'a9ad2ac2-3ed9-11ed-b878-0242ac12****',
+ ],
+ ],
+ [
+ 'name' => 'IsEnable',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to enable the blacklist policy. Valid values:'."\n"
+ ."\n"
+ .'* true: The blacklist policy is enabled.'."\n"
+ .'* false (default): The blacklist policy is disabled.'."\n",
+ 'type' => 'boolean',
+ 'required' => true,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '94869866-1621-3652-BBC9-72A47B2AC2F5',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Count' => [
+ 'description' => 'The number of blacklist policies that are enabled or disabled.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessForbidden',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'ResourceConflict',
+ 'errorMessage' => 'Concurrent modification of resources.',
+ ],
+ [
+ 'errorCode' => 'ResourceExist',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"94869866-1621-3652-BBC9-72A47B2AC2F5\\",\\n \\"Success\\": true,\\n \\"Count\\": 1\\n}","errorExample":""},{"type":"xml","example":"<EnableMetricRuleBlackListResponse>\\n <RequestId>94869866-1621-3652-BBC9-72A47B2AC2F5</RequestId>\\n <Success>true</Success>\\n <Count>1</Count>\\n</EnableMetricRuleBlackListResponse>","errorExample":""}]',
+ 'title' => 'EnableMetricRuleBlackList',
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DeleteContactGroup' => [
+ 'summary' => 'Deletes an alert contact group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ContactGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert contact group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'contact_group_2019_templatedfkXQ',
+ 'docRequired' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'F722BE59-2400-4A64-9C1A-AD886AED9A69',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'Permission denied',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ContactNotExists',
+ 'errorMessage' => 'ContactGroupName Not Exists',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"F722BE59-2400-4A64-9C1A-AD886AED9A69\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteContactGroupResponse>\\n <RequestId>F722BE59-2400-4A64-9C1A-AD886AED9A69</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n</DeleteContactGroupResponse>","errorExample":""}]',
+ 'title' => 'DeleteContactGroup',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteContact' => [
+ 'summary' => 'Deletes an alert contact.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ContactName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert contact.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-01',
+ 'docRequired' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '50D4CFE1-01E5-4543-939C-18BC01E3EC1C',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'Permission denied',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ContactNotExists',
+ 'errorMessage' => 'ContactName does not exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"50D4CFE1-01E5-4543-939C-18BC01E3EC1C\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteContactResponse>\\n <RequestId>50D4CFE1-01E5-4543-939C-18BC01E3EC1C</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n</DeleteContactResponse>","errorExample":""}]',
+ 'title' => 'DeleteContact',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeContactListByContactGroup' => [
+ 'summary' => 'Queries the alert contacts in an alert contact group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ContactGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert contact group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => 'CloudMonitor',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The group is not exists.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '06D5ECC2-B9BE-42A4-8FA3-1A610FB08B83',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Contacts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Contact' => [
+ 'description' => 'The alert contacts that receive alert notifications.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'UpdateTime' => [
+ 'description' => 'The time when the alert contact was modified.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552314252000',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => 'Alice',
+ ],
+ 'CreateTime' => [
+ 'description' => 'The time when the alert contact was created.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552314252000',
+ ],
+ 'Desc' => [
+ 'description' => 'The description of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS',
+ ],
+ 'Channels' => [
+ 'description' => 'The alert notification methods.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Mail' => [
+ 'description' => 'The email address of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => '[email protected]',
+ ],
+ 'AliIM' => [
+ 'description' => 'The TradeManager ID of the alert contact.'."\n"
+ ."\n"
+ .'> This parameter can be returned only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => 'Alice',
+ ],
+ 'DingWebHook' => [
+ 'description' => 'The webhook URL of the DingTalk chatbot.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=9bf44f8189597d07dfdd7a123455ffc112****',
+ ],
+ 'SMS' => [
+ 'description' => 'The mobile number of the alert contact.'."\n"
+ ."\n"
+ .'> This parameter can be returned only on the China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => '1333333****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The group is not exists.\\",\\n \\"RequestId\\": \\"06D5ECC2-B9BE-42A4-8FA3-1A610FB08B83\\",\\n \\"Success\\": true,\\n \\"Contacts\\": {\\n \\"Contact\\": [\\n {\\n \\"UpdateTime\\": 1552323252000,\\n \\"Name\\": \\"Alice\\",\\n \\"CreateTime\\": 1552314252000,\\n \\"Desc\\": \\"ECS\\",\\n \\"Channels\\": {\\n \\"Mail\\": \\"[email protected]\\",\\n \\"AliIM\\": \\"Alice\\",\\n \\"DingWebHook\\": \\"https://oapi.dingtalk.com/robot/send?access_token=9bf44f8189597d07dfdd7a123455ffc112****\\",\\n \\"SMS\\": \\"1333333****\\"\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeContactListByContactGroupResponse>\\r\\n\\t<RequestId>96B41DE5-6DC9-4FAF-A790-3D4AA17C1F09</RequestId>\\r\\n\\t<Contacts>\\r\\n\\t\\t<Contact>\\r\\n\\t\\t\\t<Desc></Desc>\\r\\n\\t\\t\\t<CreateTime>1604024233000</CreateTime>\\r\\n\\t\\t\\t<UpdateTime>1604024233000</UpdateTime>\\r\\n\\t\\t\\t<Channels>\\r\\n\\t\\t\\t\\t<SMS></SMS>\\r\\n\\t\\t\\t</Channels>\\r\\n\\t\\t\\t<Name>Alice</Name>\\r\\n\\t\\t</Contact>\\r\\n\\t</Contacts>\\r\\n\\t<Code>200</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeContactListByContactGroupResponse>","errorExample":""}]',
+ 'title' => 'DescribeContactListByContactGroup',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeContactGroupList' => [
+ 'summary' => 'Call the DescribeContactGroupList interface to query the list of alarm contact groups.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Number of records per page.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '100',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Page number.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'Status code. Note that 200 indicates success.',
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'Return message.',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'RequestId' => [
+ 'description' => 'The ID of this call request, which is a unique identifier generated by Alibaba Cloud for the request and can be used for troubleshooting and problem localization.',
+ 'type' => 'string',
+ 'example' => '916EE694-03C2-47B6-85EE-5054E3C168D3',
+ ],
+ 'Total' => [
+ 'description' => 'Total number of records.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '22',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the operation was successful. Values:'."\n"
+ ."\n"
+ .'- true: Success.'."\n"
+ ."\n"
+ .'- false: Failure.',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'ContactGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactGroup' => [
+ 'description' => 'List of alarm contact groups.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Alarm contact group.',
+ 'type' => 'string',
+ 'example' => '云账号报警联系人',
+ ],
+ ],
+ ],
+ ],
+ 'ContactGroupList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactGroup' => [
+ 'description' => 'List of alarm contact groups.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Alarm contact group.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Describe' => [
+ 'description' => 'Description information of the alarm contact group.',
+ 'type' => 'string',
+ 'example' => 'Devops-运维组',
+ ],
+ 'UpdateTime' => [
+ 'description' => 'Update time.',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '2025-03-04T02:12:06Z',
+ ],
+ 'CreateTime' => [
+ 'description' => 'Creation time.',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '2023-06-07T03:52:30Z',
+ ],
+ 'EnabledWeeklyReport' => [
+ 'description' => 'Indicates whether the weekly report function is enabled.',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'Name' => [
+ 'description' => 'Name.',
+ 'type' => 'string',
+ 'example' => 'name',
+ ],
+ 'EnableSubscribed' => [
+ 'description' => 'Indicates whether the weekly report subscription function is enabled. Values:'."\n"
+ ."\n"
+ .'- true: Yes.'."\n"
+ ."\n"
+ .'- false: No.',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'Contacts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Contact' => [
+ 'description' => 'List of contacts.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Contact.',
+ 'type' => 'string',
+ 'example' => '135xxxx8066',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 200 => [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'User not authorized to operate on the specified resource.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"916EE694-03C2-47B6-85EE-5054E3C168D3\\",\\n \\"Total\\": 22,\\n \\"Success\\": true,\\n \\"ContactGroups\\": {\\n \\"ContactGroup\\": [\\n \\"云账号报警联系人\\"\\n ]\\n },\\n \\"ContactGroupList\\": {\\n \\"ContactGroup\\": [\\n {\\n \\"Describe\\": \\"Devops-运维组\\",\\n \\"UpdateTime\\": 0,\\n \\"CreateTime\\": 0,\\n \\"EnabledWeeklyReport\\": false,\\n \\"Name\\": \\"name\\",\\n \\"EnableSubscribed\\": false,\\n \\"Contacts\\": {\\n \\"Contact\\": [\\n \\"135xxxx8066\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'Query Alarm Contact Group List',
+ 'translator' => 'machine',
+ ],
+ 'DescribeContactList' => [
+ 'summary' => 'Queries alert contacts.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Default value: 100.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '100',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'ContactName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert contact.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Alice',
+ ],
+ ],
+ [
+ 'name' => 'ChanelType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The alert notification method. Valid values:'."\n"
+ ."\n"
+ .'* Mail: emails'."\n"
+ .'* DingWebHook: DingTalk chatbots'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Mail',
+ ],
+ ],
+ [
+ 'name' => 'ChanelValue',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The value specified for the alert notification method.'."\n"
+ ."\n"
+ .'> This parameter is required only if you set the `ChanelType` parameter to `Mail`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[email protected]',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '06D5ECC2-B9BE-42A4-8FA3-1A610FB08B83',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true: The request was successful.'."\n"
+ .'* false: The request failed.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Contacts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Contact' => [
+ 'description' => 'The alert contacts.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'UpdateTime' => [
+ 'description' => 'The timestamp when the alert contact was updated.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552356159000',
+ ],
+ 'Name' => [
+ 'description' => 'The name of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => 'Alice',
+ ],
+ 'CreateTime' => [
+ 'description' => 'The timestamp when the alert contact was created.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1552356159000',
+ ],
+ 'Lang' => [
+ 'description' => 'The language in which the alert information is displayed. Valid values:'."\n"
+ ."\n"
+ .'* zh-cn: simplified Chinese'."\n"
+ .'* en: English'."\n",
+ 'type' => 'string',
+ 'example' => 'zh-cn',
+ ],
+ 'Desc' => [
+ 'description' => 'The description.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'ContactGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContactGroup' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The alert contact groups.'."\n",
+ 'type' => 'string',
+ 'example' => '{ "ContactGroup": [ "ECS_Group", "Jim" ] }',
+ ],
+ ],
+ ],
+ ],
+ 'Channels' => [
+ 'description' => 'The alert notification method.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Mail' => [
+ 'description' => 'The email address of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => '[email protected]',
+ ],
+ 'AliIM' => [
+ 'description' => 'The TradeManager ID of the alert contact.'."\n",
+ 'type' => 'string',
+ 'example' => 'Alice',
+ ],
+ 'DingWebHook' => [
+ 'description' => 'The webhook URL of the DingTalk chatbot.'."\n",
+ 'type' => 'string',
+ 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=9bf44f8189597d07dfdd7a123455ffc112****',
+ ],
+ 'SMS' => [
+ 'description' => 'The phone number of the alert contac.'."\n",
+ 'type' => 'string',
+ 'example' => '1333333****',
+ ],
+ ],
+ ],
+ 'ChannelsState' => [
+ 'description' => 'The status of the alert notification method. Valid values: PENDING and OK.'."\n"
+ ."\n"
+ .'The email address must be activated after it is added as the value specified for the alert notification method. The value PENDING indicates that the email address is not activated. The value OK indicates that the email address is activated.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Mail' => [
+ 'description' => 'The status of the email address. Valid values:'."\n"
+ ."\n"
+ .'* PENDING: The phone number is not activated. Alert notifications can be sent to the phone number by using text messages only after the phone number is activated.'."\n"
+ .'* OK: The phone number is activated and can receive alert notifications.'."\n",
+ 'type' => 'string',
+ 'example' => 'PENDING',
+ ],
+ 'AliIM' => [
+ 'description' => 'The status of the TradeManager ID.'."\n"
+ ."\n"
+ .'Valid value: OK. The value OK indicates that the TradeManager ID is valid and can receive alert notifications.'."\n"
+ ."\n"
+ .'> This parameter applies only to the Alibaba Cloud China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => 'OK',
+ ],
+ 'DingWebHook' => [
+ 'description' => 'The status of the DingTalk chatbot.'."\n"
+ ."\n"
+ .'Valid value: OK. The value OK indicates that the DingTalk chatbot is normal and alert notifications can be received in a DingTalk group.'."\n",
+ 'type' => 'string',
+ 'example' => 'OK',
+ ],
+ 'SMS' => [
+ 'description' => 'The status of the phone number. Valid values:'."\n"
+ ."\n"
+ .'* PENDING: The phone number is not activated. Alert notifications can be sent to the phone number by using text messages only after the phone number is activated.'."\n"
+ .'* OK: The phone number is activated and can receive alert notifications.'."\n"
+ ."\n"
+ .'> This parameter applies only to the Alibaba Cloud China site (aliyun.com).'."\n",
+ 'type' => 'string',
+ 'example' => 'OK',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"06D5ECC2-B9BE-42A4-8FA3-1A610FB08B83\\",\\n \\"Total\\": 15,\\n \\"Success\\": true,\\n \\"Contacts\\": {\\n \\"Contact\\": [\\n {\\n \\"UpdateTime\\": 1552356159000,\\n \\"Name\\": \\"Alice\\",\\n \\"CreateTime\\": 1552356159000,\\n \\"Lang\\": \\"zh-cn\\",\\n \\"Desc\\": \\"ECS联系人\\",\\n \\"ContactGroups\\": {\\n \\"ContactGroup\\": [\\n \\"{ \\\\\\"ContactGroup\\\\\\": [ \\\\t\\\\\\"ECS_Group\\\\\\", \\\\\\"Jim\\\\\\" ] }\\"\\n ]\\n },\\n \\"Channels\\": {\\n \\"Mail\\": \\"[email protected]\\",\\n \\"AliIM\\": \\"Alice\\",\\n \\"DingWebHook\\": \\"https://oapi.dingtalk.com/robot/send?access_token=9bf44f8189597d07dfdd7a123455ffc112****\\",\\n \\"SMS\\": \\"1333333****\\"\\n },\\n \\"ChannelsState\\": {\\n \\"Mail\\": \\"PENDING\\",\\n \\"AliIM\\": \\"OK\\",\\n \\"DingWebHook\\": \\"OK\\",\\n \\"SMS\\": \\"OK\\"\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeContactListResponse>\\r\\n\\t\\t<RequestId>A1267F27-942F-40EE-9254-57FE16E3C9AB</RequestId>\\r\\n\\t\\t<Contacts>\\r\\n\\t\\t\\t<Contact>\\r\\n\\t\\t\\t\\t<Desc>Contact Desc</Desc>\\r\\n\\t\\t\\t\\t<ContactGroups>\\r\\n\\t\\t\\t\\t\\t<ContactGroup>ECS_Group</ContactGroup>\\r\\n\\t\\t\\t\\t\\t<ContactGroup>Jim</ContactGroup>\\r\\n\\t\\t\\t\\t</ContactGroups>\\r\\n\\t\\t\\t\\t<ChannelsState>\\r\\n\\t\\t\\t\\t\\t<SMS>PENDING</SMS>\\r\\n\\t\\t\\t\\t\\t<Mail>OK</Mail>\\r\\n\\t\\t\\t\\t</ChannelsState>\\r\\n\\t\\t\\t\\t<CreateTime>1583307692000</CreateTime>\\r\\n\\t\\t\\t\\t<UpdateTime>1589441072000</UpdateTime>\\r\\n\\t\\t\\t\\t<Channels>\\r\\n\\t\\t\\t\\t\\t<Mail>[email protected]</Mail>\\r\\n\\t\\t\\t\\t\\t<SMS>155*******</SMS>\\r\\n\\t\\t\\t\\t</Channels>\\r\\n\\t\\t\\t\\t<Name>Alice</Name>\\r\\n\\t\\t\\t\\t<Lang>zh-cn</Lang>\\r\\n\\t\\t\\t</Contact>\\r\\n\\t\\t</Contacts>\\r\\n\\t\\t<Total>25</Total>\\r\\n\\t\\t<Code>200</Code>\\r\\n\\t\\t<Success>true</Success>\\r\\n</DescribeContactListResponse>","errorExample":""}]',
+ 'title' => 'DescribeContactList',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutContact' => [
+ 'summary' => 'Creates or modifies an alert contact.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ContactName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert contact.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Alice',
+ 'docRequired' => true,
+ ],
+ ],
+ [
+ 'name' => 'Describe',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the alert contact.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS_Instance',
+ 'docRequired' => true,
+ ],
+ ],
+ [
+ 'name' => 'Channels.SMS',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The phone number of the alert contact. After you add or modify a phone number, the recipient receives a text message that contains an activation link. The system adds the recipient to the list of alert contacts only after the recipient activates the phone number.'."\n"
+ ."\n"
+ .'Specify at least one of the following alert notification methods: email address and DingTalk chatbot.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1333333****',
+ ],
+ ],
+ [
+ 'name' => 'Channels.Mail',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The email address. After you add or modify an email address, the recipient receives an email that contains an activation link. The system adds the recipient to the list of alert contacts only after the recipient activates the email address.'."\n"
+ ."\n"
+ .'Specify at least one of the following alert notification methods: email address and DingTalk chatbot.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[email protected]',
+ ],
+ ],
+ [
+ 'name' => 'Channels.AliIM',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The TradeManager ID of the alert contact.'."\n"
+ ."\n"
+ .'Specify at least one of the following alert notification methods: email address and DingTalk chatbot.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Jim',
+ ],
+ ],
+ [
+ 'name' => 'Channels.DingWebHook',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The webhook URL of the DingTalk chatbot.'."\n"
+ ."\n"
+ .'Specify at least one of the following alert notification methods: email address and DingTalk chatbot.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=7d49515e8ebf21106a80a9cc4bb3d247771305d52fb15d6201234565****',
+ ],
+ ],
+ [
+ 'name' => 'Lang',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The language in which the alert information is displayed. Valid values:'."\n"
+ ."\n"
+ .'* zh-cn: simplified Chinese'."\n"
+ .'* en: English'."\n"
+ ."\n"
+ .'> If you do not specify this parameter, CloudMonitor identifies the language of the alert information based on the region of your Alibaba Cloud account.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'zh-cn',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'The Request is not authorization.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '181C406E-9DE4-484C-9C61-37AE9A1A12EE',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'Permission denied',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"The Request is not authorization.\\",\\n \\"RequestId\\": \\"181C406E-9DE4-484C-9C61-37AE9A1A12EE\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<PutContactResponse>\\n <Code>200</Code>\\n <RequestId>181C406E-9DE4-484C-9C61-37AE9A1A12EE</RequestId>\\n <Success>true</Success>\\n</PutContactResponse>","errorExample":""}]',
+ 'title' => 'PutContact',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'PutContactGroup' => [
+ 'summary' => 'Creates or modifies an alert contact group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ContactGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the alert contact group.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of an alert contact group, see [DescribeContactGroupList](~~114922~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ECS_Group',
+ ],
+ ],
+ [
+ 'name' => 'Describe',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the alert contact group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ECS_Alert_Group',
+ ],
+ ],
+ [
+ 'name' => 'EnableSubscribed',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to enable the weekly report subscription feature. Valid values:'."\n"
+ ."\n"
+ .'* true: The weekly report subscription feature is enabled.'."\n"
+ .'* false: The weekly report subscription feature is disabled.'."\n"
+ ."\n"
+ .'> You can enable the weekly report subscription feature only for an Alibaba Cloud account that has at least five Elastic Compute Service (ECS) instances.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'ContactNames',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The name of the alert contact. Valid values of N: 1 to 100.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ 'description' => '',
+ ],
+ 'required' => false,
+ 'example' => 'Alice',
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Illegal parameters.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'B4E30DB6-F069-5D0B-A589-2A89F7D62A57',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'Permission denied',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ContactGroup.NotExists',
+ 'errorMessage' => 'ContactGroup not exists',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Illegal parameters.\\",\\n \\"RequestId\\": \\"B4E30DB6-F069-5D0B-A589-2A89F7D62A57\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'PutContactGroup',
+ 'description' => 'This topic provides an example on how to create an alert contact group named `ECS_Group`.'."\n",
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateHybridMonitorNamespace' => [
+ 'summary' => 'Creates a namespace.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the namespace.'."\n"
+ ."\n"
+ .'The name can contain lowercase letters, digits, and hyphens (-).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aliyun',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the namespace.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'Spec',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The data retention period. Valid values:'."\n"
+ ."\n"
+ .'* cms.s1.large (Retention Period 15 Days)'."\n"
+ .'* cms.s1.xlarge (Retention Period 32 Days)'."\n"
+ .'* cms.s1.2xlarge (Retention Period 63 Days)'."\n"
+ .'* cms.s1.3xlarge (Retention Period 93 Days) (default)'."\n"
+ .'* cms.s1.6xlarge (Retention Period 185 Days)'."\n"
+ .'* cms.s1.12xlarge (Retention Period 367 Days)'."\n"
+ ."\n"
+ .'For information about the pricing for different retention periods, see the **Pricing** section in [Billing of the dashboard feature](~~223532~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'enumValueTitles' => [
+ 'cms.s1.large' => 'cms.s1.large',
+ 'cms.s1.2xlarge' => 'cms.s1.2xlarge',
+ 'cms.s1.xlarge' => 'cms.s1.xlarge',
+ 'cms.s1.6xlarge' => 'cms.s1.6xlarge',
+ 'cms.s1.3xlarge' => 'cms.s1.3xlarge',
+ ],
+ 'example' => 'cms.s1.3xlarge',
+ 'enum' => [],
+ ],
+ ],
+ [
+ 'name' => 'NamespaceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The storage scheme of metric data. Valid values:'."\n"
+ ."\n"
+ .'* m_prom_user: The metric data is stored in Simple Log Service.'."\n"
+ .'* m_prom_pool: The metric data is stored in the private storage space provided by CloudMonitor.'."\n"
+ ."\n"
+ .'> For more information about the storage schemes of metric data, see [Data storage schemes for Hybrid Cloud Monitoring](~~2594921~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'm_prometheus',
+ ],
+ ],
+ [
+ 'name' => 'NamespaceRegion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The region where the metric data is stored.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n",
+ 'type' => 'string',
+ 'example' => 'Success',
+ ],
+ 'Message' => [
+ 'description' => 'The error message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'Namespace.Existed',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3843D23A-FB9E-5DC8-BCCC-458768B79296',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"Success\\",\\n \\"Message\\": \\"Namespace.Existed\\",\\n \\"RequestId\\": \\"3843D23A-FB9E-5DC8-BCCC-458768B79296\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateHybridMonitorNamespace>\\r\\n\\t<RequestId>3843D23A-FB9E-5DC8-BCCC-458768B79296</RequestId>\\r\\n\\t<Code>Success</Code>\\r\\n\\t<Success>true</Success>\\r\\n</CreateHybridMonitorNamespace>\\t","errorExample":""}]',
+ 'title' => 'CreateHybridMonitorNamespace',
+ 'description' => '## [](#)Prerequisites'."\n"
+ ."\n"
+ .'Hybrid Cloud Monitoring is activated. For more information, see [Activate Hybrid Cloud Monitoring](~~250773~~).'."\n"
+ ."\n"
+ .'## [](#)Operation description'."\n"
+ ."\n"
+ .'This topic provides an example on how to create a namespace named `aliyun`. In this example, the data retention period of the namespace is set to `cms.s1.3xlarge`. The returned result indicates that the namespace is created.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'ModifyHybridMonitorNamespace' => [
+ 'summary' => 'Modifies a namespace.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the namespace.'."\n"
+ ."\n"
+ .'The name can contain letters, digits, and hyphens (-).'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a namespace, see [DescribeHybridMonitorNamespaceList](~~428880~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aliyun',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the namespace.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'Spec',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The data retention period. Valid values:'."\n"
+ ."\n"
+ .'* cms.s1.large: Data is stored for 15 days.'."\n"
+ .'* cms.s1.xlarge: Data is stored for 32 days.'."\n"
+ .'* cms.s1.2xlarge: Data is stored for 63 days.'."\n"
+ .'* cms.s1.3xlarge: Data is stored for 93 days.'."\n"
+ .'* cms.s1.6xlarge: Data is stored for 185 days.'."\n"
+ .'* cms.s1.12xlarge: Data is stored for 376 days.'."\n"
+ ."\n"
+ .'For information about the pricing for different retention periods, see the **Pricing** section in [Billing of the dashboard feature](~~223532~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'enumValueTitles' => [
+ 'cms.s1.12xlarge' => 'cms.s1.12xlarge',
+ 'cms.s1.large' => 'cms.s1.large',
+ 'cms.s1.2xlarge' => 'cms.s1.2xlarge',
+ 'cms.s1.6xlarge' => 'cms.s1.6xlarge',
+ 'cms.s1.3xlarge' => 'cms.s1.3xlarge',
+ ],
+ 'example' => 'cms.s1.2xlarge',
+ 'enum' => [],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Success',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => '%s',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'E190AB2E-7BF9-59B7-9DDC-7CB1782C5ECD',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"Success\\",\\n \\"Message\\": \\"%s\\",\\n \\"RequestId\\": \\"E190AB2E-7BF9-59B7-9DDC-7CB1782C5ECD\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyHybridMonitorNamespace>\\r\\n\\t<RequestId>E190AB2E-7BF9-59B7-9DDC-7CB1782C5ECD</RequestId>\\r\\n\\t<Code>Success</Code>\\r\\n\\t<Success>true</Success>\\r\\n</ModifyHybridMonitorNamespace>\\t","errorExample":""}]',
+ 'title' => 'ModifyHybridMonitorNamespace',
+ 'description' => 'This topic provides an example on how to change the data retention period of the `aliyun` namespace to `cms.s1.2xlarge`. The response shows that the namespace is modified.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DeleteHybridMonitorNamespace' => [
+ 'summary' => 'Deletes a namespace.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the namespace.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a namespace, see [DescribeHybridMonitorNamespaceList](~~428880~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aliyun',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Success',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Namespace.NotFound',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '3843D23A-FB9E-5DC8-BCCC-458768B79296',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"Success\\",\\n \\"Message\\": \\"Namespace.NotFound\\",\\n \\"RequestId\\": \\"3843D23A-FB9E-5DC8-BCCC-458768B79296\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteHybridMonitorNamespace>\\r\\n\\t<RequestId>3843D23A-FB9E-5DC8-BCCC-458768B79296</RequestId>\\r\\n\\t<Code>Success</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DeleteHybridMonitorNamespace>\\t","errorExample":""}]',
+ 'title' => 'DeleteHybridMonitorNamespace',
+ 'description' => '> If a metric import task is created for metrics in a namespace, you cannot delete the namespace unless you delete the task first.'."\n"
+ ."\n"
+ .'This topic provides an example on how to delete a namespace named `aliyun`. The response shows that the namespace is deleted.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DescribeHybridMonitorNamespaceList' => [
+ 'summary' => 'Queries namespaces and the details of the related metric import tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Page numbers start from 1. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Page numbers start from 1. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The search keyword.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'aliyun',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the namespace.'."\n"
+ ."\n"
+ .'The name can contain letters, digits, and hyphens (-).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'aliyun-test',
+ ],
+ ],
+ [
+ 'name' => 'ShowTaskStatistic',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to return the configuration details of metric import tasks for Alibaba Cloud services and the number of metric import tasks for third-party services. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false (default)'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The returned data.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '1EC450A4-3221-5148-B77E-2827576CFE48',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The response code.'."\n",
+ 'type' => 'string',
+ 'example' => 'Success',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Specified parameter PageSize is not valid.',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'DescribeHybridMonitorNamespace' => [
+ 'description' => 'The details of the namespaces.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Description' => [
+ 'description' => 'The description of the namespace.'."\n",
+ 'type' => 'string',
+ 'example' => 'aliyun-test',
+ ],
+ 'CreateTime' => [
+ 'description' => 'The timestamp that was generated when the namespace was created.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1652682744000',
+ ],
+ 'Namespace' => [
+ 'description' => 'The name of the namespace.'."\n",
+ 'type' => 'string',
+ 'example' => 'aliyun-test',
+ ],
+ 'IsDelete' => [
+ 'description' => 'Indicates whether the namespace is deleted. Valid values:'."\n"
+ ."\n"
+ .'* 0: The namespace is not deleted.'."\n"
+ .'* 1: The namespace is deleted.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Id' => [
+ 'description' => 'The ID of the namespace.'."\n",
+ 'type' => 'string',
+ 'example' => '3****',
+ ],
+ 'ModifyTime' => [
+ 'description' => 'The timestamp that was generated when the namespace was last modified.'."\n",
+ 'type' => 'string',
+ 'example' => '1652682744000',
+ ],
+ 'Detail' => [
+ 'description' => 'The details of the data retention period.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Spec' => [
+ 'description' => 'The data retention period. Valid values:'."\n"
+ ."\n"
+ .'* cms.s1.large (Retention Period 15 Days)'."\n"
+ .'* cms.s1.xlarge (Retention Period 32 Days)'."\n"
+ .'* cms.s1.2xlarge (Retention Period 63 Days)'."\n"
+ .'* cms.s1.3xlarge (Retention Period 93 Days)'."\n"
+ .'* cms.s1.6xlarge (Retention Period 185 Days)'."\n"
+ .'* cms.s1.12xlarge (Retention Period 367 Days)'."\n",
+ 'type' => 'string',
+ 'example' => 'cms.s1.3xlarge',
+ ],
+ 'NamespaceRegion' => [
+ 'description' => 'The region where the metric data is stored.'."\n"
+ ."\n"
+ .'> This parameter is returned if you select `m_prom_user` for `NamespaceType` when you create a namespace.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'SLSProject' => [
+ 'description' => 'The project where the metric data is located.'."\n"
+ ."\n"
+ .'> This parameter is returned if you select `m_prom_user` for `NamespaceType` when you create a namespace.'."\n",
+ 'type' => 'string',
+ 'example' => 'cms-hybrid-120886317861****-cn-hangzhou-a83d',
+ ],
+ 'PrometheusInstanceId' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'NotAliyunTaskNumber' => [
+ 'description' => 'The number of metric import tasks for third-party services.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'AliyunProductMetricList' => [
+ 'description' => 'The configuration details of metric import tasks for Alibaba Cloud services.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'UserId' => [
+ 'description' => 'The account that is used to create the namespace.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '120886317861****',
+ ],
+ 'NamespaceList' => [
+ 'description' => 'The namespaces.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Namespace' => [
+ 'description' => 'The namespace for the Alibaba Cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ 'MetricList' => [
+ 'description' => 'The metrics for the Alibaba Cloud service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Period' => [
+ 'description' => 'The collection period of the metric.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '60',
+ ],
+ 'List' => [
+ 'description' => 'The metrics.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The metric.'."\n",
+ 'type' => 'string',
+ 'example' => '["cpu_total"]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'YAMLConfig' => [
+ 'description' => 'The configuration file of the Alibaba Cloud service that you want to monitor by using Hybrid Cloud Monitoring.'."\n"
+ ."\n"
+ .'* namespace: the namespace of the Alibaba Cloud service.'."\n"
+ .'* metric_list: the metrics of the Alibaba Cloud service.'."\n"
+ .'* dimension: the resources of the Alibaba Cloud service that you want to monitor by using Hybrid Cloud Monitoring. If you do not specify a dimension, all resources of the Alibaba Cloud service are monitored.'."\n",
+ 'type' => 'string',
+ 'example' => 'products:- namespace: acs_ecs_dashboard metric_info: - metric_list: - cpu_total dimension: \'\'',
+ ],
+ ],
+ ],
+ ],
+ 'NamespaceType' => [
+ 'description' => 'The storage scheme of metric data. Valid values:'."\n"
+ ."\n"
+ .'* m_prom_user: The metric data is stored in Simple Log Service.'."\n"
+ .'* m_prom_pool: The metric data is stored in the storage space provided by CloudMonitor.'."\n",
+ 'type' => 'string',
+ 'example' => 'm_prom_user',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1EC450A4-3221-5148-B77E-2827576CFE48\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"Success\\",\\n \\"Message\\": \\"Specified parameter PageSize is not valid.\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Total\\": 1,\\n \\"DescribeHybridMonitorNamespace\\": [\\n {\\n \\"Description\\": \\"aliyun-test\\",\\n \\"CreateTime\\": \\"1652682744000\\",\\n \\"Namespace\\": \\"aliyun-test\\",\\n \\"IsDelete\\": 0,\\n \\"Id\\": \\"3****\\",\\n \\"ModifyTime\\": \\"1652682744000\\",\\n \\"Detail\\": {\\n \\"Spec\\": \\"cms.s1.3xlarge\\",\\n \\"NamespaceRegion\\": \\"cn-hangzhou\\",\\n \\"SLSProject\\": \\"cms-hybrid-120886317861****-cn-hangzhou-a83d\\",\\n \\"PrometheusInstanceId\\": \\"rw-57******************7f\\"\\n },\\n \\"NotAliyunTaskNumber\\": 0,\\n \\"AliyunProductMetricList\\": [\\n {\\n \\"UserId\\": 0,\\n \\"NamespaceList\\": [\\n {\\n \\"Namespace\\": \\"acs_ecs_dashboard\\",\\n \\"MetricList\\": [\\n {\\n \\"Period\\": 60,\\n \\"List\\": [\\n \\"[\\\\\\"cpu_total\\\\\\"]\\"\\n ]\\n }\\n ]\\n }\\n ],\\n \\"YAMLConfig\\": \\"products:- namespace: acs_ecs_dashboard metric_info: - metric_list: - cpu_total dimension: \'\'\\"\\n }\\n ],\\n \\"NamespaceType\\": \\"aliyun_prometheus\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeHybridMonitorNamespaceListResponse>\\r\\n\\t<RequestId>1EC450A4-3221-5148-B77E-2827576CFE48</RequestId>\\r\\n\\t<PageSize>10</PageSize>\\r\\n\\t<PageNumber>1</PageNumber>\\r\\n\\t<Total>1</Total>\\r\\n\\t<DescribeHybridMonitorNamespace>\\r\\n\\t\\t<ModifyTime>1652682744000</ModifyTime>\\r\\n\\t\\t<Description></Description>\\r\\n\\t\\t<CreateTime>1652682744000</CreateTime>\\r\\n\\t\\t<IsDelete>0</IsDelete>\\r\\n\\t\\t<Id>3****</Id>\\r\\n\\t\\t<Namespace>aliyun-test</Namespace>\\r\\n\\t\\t<Detail>\\r\\n\\t\\t\\t<Spec>cms.s1.3xlarge</Spec>\\r\\n\\t\\t</Detail>\\r\\n\\t</DescribeHybridMonitorNamespace>\\r\\n\\t<Code>Success</Code>\\r\\n\\t<Success>true</Success>\\r\\n</DescribeHybridMonitorNamespaceListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeHybridMonitorNamespaceList',
+ 'description' => 'In this example, all namespaces within the current account are queried. The response shows that the current account has only one namespace named `aliyun-test`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'CreateHybridMonitorTask' => [
+ 'summary' => 'Creates a metric import task for an Alibaba Cloud service or creates a metric for logs imported from Simple Log Service.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the namespace.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a namespace, see [DescribeHybridMonitorNamespaceList](~~428880~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => false,
+ 'example' => 'aliyun',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the metric import task.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'TaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the metric import task.'."\n"
+ ."\n"
+ .'* If the `TaskType` parameter is set to `aliyun_fc`, enter the name of the metric import task.'."\n"
+ .'* If the `TaskType` parameter is set to `aliyun_sls`, enter the name of the metric for logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'aliyun_task',
+ ],
+ ],
+ [
+ 'name' => 'TaskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the metric import task. Valid values:'."\n"
+ ."\n"
+ .'* aliyun_fc: metric import tasks for Alibaba Cloud services.'."\n"
+ .'* aliyun_sls: metrics for logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'enumValueTitles' => [
+ 'aliyun_fc' => 'aliyun_fc',
+ 'aliyun_sls' => 'aliyun_sls',
+ ],
+ 'example' => 'aliyun_fc',
+ ],
+ ],
+ [
+ 'name' => 'CollectTargetType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the collection target.'."\n"
+ ."\n"
+ .'* If the `TaskType` parameter is set to `aliyun_fc`, enter `aliyun_fc`.'."\n"
+ .'* If the `TaskType` parameter is set to `aliyun_sls`, enter the name of the Logstore group.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aliyun_fc',
+ ],
+ ],
+ [
+ 'name' => 'CollectInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The collection period of the metric. Valid values:'."\n"
+ ."\n"
+ .'* 15'."\n"
+ .'* 60 (default)'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n"
+ ."\n"
+ .'> This parameter is required only if the `TaskType` parameter is set to `aliyun_sls`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 15 => '15',
+ 60 => '60',
+ ],
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n"
+ ."\n"
+ .'> This parameter is required only if the `TaskType` parameter is set to `aliyun_sls`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '3607****',
+ ],
+ ],
+ [
+ 'name' => 'YARMConfig',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The configuration file of the Alibaba Cloud service that you want to monitor by using Hybrid Cloud Monitoring.'."\n"
+ ."\n"
+ .'* namespace: the namespace of the Alibaba Cloud service. For information about how to query the namespace of an Alibaba Cloud service, see [DescribeMetricMetaList](~~98846~~).'."\n"
+ .'* metric_list: the metrics of the Alibaba Cloud service. For information about how to query the metrics of an Alibaba Cloud service, see [DescribeMetricMetaList](~~98846~~).'."\n"
+ ."\n"
+ .'The following code shows a sample configuration file:'."\n"
+ ."\n"
+ .' products:'."\n"
+ .' - namespace: acs_ecs_dashboard'."\n"
+ .' metric_info:'."\n"
+ .' - metric_list:'."\n"
+ .' - cpu_total'."\n"
+ .' - cpu_idle'."\n"
+ .' - diskusage_utilization'."\n"
+ .' - CPUUtilization'."\n"
+ .' - DiskReadBPS'."\n"
+ .' - InternetOut'."\n"
+ .' - IntranetOut'."\n"
+ .' - cpu_system'."\n"
+ .' - namespace: acs_rds_dashboard'."\n"
+ .' metric_info:'."\n"
+ .' - metric_list:'."\n"
+ .' - MySQL_QPS'."\n"
+ .' - MySQL_TPS'."\n"
+ ."\n"
+ .'> This parameter is required only if the `TaskType` parameter is set to `aliyun_fc`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'products:- namespace: acs_ecs_dashboard metric_info: - metric_list: - cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'TargetUserId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the member account.'."\n"
+ ."\n"
+ .'If you call this operation by using the management account of a resource directory, you can connect the Alibaba Cloud services that are activated for all members in the resource directory to Hybrid Cloud Monitoring. You can use the resource directory to monitor Alibaba Cloud services across enterprise accounts.'."\n"
+ ."\n"
+ .'> This parameter is required only if the `TaskType` parameter is set to `aliyun_fc`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '120886317861****',
+ ],
+ ],
+ [
+ 'name' => 'AttachLabels',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The tags of the metric.'."\n"
+ ."\n"
+ .'> This parameter is required only if the `TaskType` parameter is set to `aliyun_sls`.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => 'The tag value of the metric.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testValue',
+ ],
+ 'Name' => [
+ 'description' => 'The tag key of the metric.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'app_service',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'TargetUserIdList',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The IDs of the member accounts. Separate multiple member account IDs with commas (,).'."\n"
+ ."\n"
+ .'> This parameter is required only if you call this operation by using the management account.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '120886317861****',
+ ],
+ ],
+ [
+ 'name' => 'SLSProcessConfig',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'The configurations of the logs that are imported from Simple Log Service.'."\n"
+ ."\n"
+ .'> This parameter is required only if the `TaskType` parameter is set to `aliyun_sls`.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Filter' => [
+ 'description' => 'The conditions that are used to filter logs imported from Simple Log Service.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Relation' => [
+ 'description' => 'The relationship between multiple filter conditions. Valid values:'."\n"
+ ."\n"
+ .'* and (default): Logs are processed only if all filter conditions are met.'."\n"
+ .'* or: Logs are processed if one of the filter conditions is met.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'or' => 'or',
+ 'and' => 'and',
+ ],
+ 'example' => 'and',
+ ],
+ 'Filters' => [
+ 'description' => 'The conditions that are used to filter logs imported from Simple Log Service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSKeyName' => [
+ 'description' => 'The name of the key that is used to filter logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'code',
+ ],
+ 'Operator' => [
+ 'description' => 'The method that is used to filter logs imported from Simple Log Service. Valid values:'."\n"
+ ."\n"
+ .'* `contain`: contains'."\n"
+ .'* `notContain`: does not contain'."\n"
+ .'* `>`: greater than'."\n"
+ .'* `<`: less than'."\n"
+ .'* `=`: equal to'."\n"
+ .'* `! =`: not equal to'."\n"
+ .'* `>=`: greater than or equal to'."\n"
+ .'* `<=`: less than or equal to'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '=',
+ 'enum' => [
+ '>',
+ '>=',
+ '=',
+ '<=',
+ '<',
+ '!=',
+ 'contain',
+ 'notContain',
+ ],
+ ],
+ 'Value' => [
+ 'description' => 'The value of the key that is used to filter logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '200',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'Statistics' => [
+ 'description' => 'The method that is used to aggregate logs imported from Simple Log Service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSKeyName' => [
+ 'description' => 'The name of the key that is used to aggregate logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'name',
+ ],
+ 'Function' => [
+ 'description' => 'The function that is used to aggregate the log data of a statistical period. Valid values:'."\n"
+ ."\n"
+ .'* count: counts the number.'."\n"
+ .'* sum: calculates the total value.'."\n"
+ .'* avg: calculates the average value.'."\n"
+ .'* max: calculates the maximum value.'."\n"
+ .'* min: calculates the minimum value.'."\n"
+ .'* value: collects samples within the statistical period.'."\n"
+ .'* countps: calculates the number of values of the specified field divided by the total number of seconds within a statistical period.'."\n"
+ .'* sumps: calculates the sum of the values of the specified field divided by the total number of seconds within a statistical period.'."\n"
+ .'* distinct: calculates the number of unique values of the specified field within a statistical period.'."\n"
+ .'* distribution: calculates the number of logs that meet a specified condition within the statistical period.'."\n"
+ .'* percentile: sorts the values of the specified field in ascending order, and then returns the value that is at the specified percentile within the statistical period. Example: P50.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'count',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the aggregation result.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'level_count',
+ 'minLength' => 0,
+ 'pattern' => '^[a-zA-Z_][a-zA-Z0-9_]{1,39}$',
+ ],
+ 'Parameter1' => [
+ 'description' => 'The value of the function that is used to aggregate logs imported from Simple Log Service.'."\n"
+ ."\n"
+ .'* If the `Function` parameter is set to `distribution`, this parameter specifies the lower limit of the statistical interval. For example, if you want to calculate the number of HTTP requests whose status code is 2XX, set this parameter to 200.'."\n"
+ .'* If the `Function` parameter is set to `percentile`, this parameter specifies the percentile at which the expected value is. For example, 0.5 specifies P50.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '200',
+ ],
+ 'Parameter2' => [
+ 'description' => 'The value of the function that is used to aggregate logs imported from Simple Log Service.'."\n"
+ ."\n"
+ .'> This parameter is required only if the `Function` parameter is set to `distribution`. This parameter specifies the upper limit of the statistical interval. For example, if you want to calculate the number of HTTP requests whose status code is 2XX, set this parameter to 299.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '299',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'GroupBy' => [
+ 'description' => 'The dimension based on which data is aggregated. This parameter is equivalent to the GROUP BY clause in SQL.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSKeyName' => [
+ 'description' => 'The name of the key that is used to aggregate logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'code',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the aggregation result.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ApiResult',
+ 'pattern' => '^[a-zA-Z_][a-zA-Z0-9_]{1,39}$',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'Express' => [
+ 'description' => 'The extended fields that specify the results of basic operations performed on aggregation results.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Express' => [
+ 'description' => 'The extended field that specifies the result of basic operations performed on aggregation results.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'success_count',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the extended field that specifies the result of basic operations performed on aggregation results.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SuccRate',
+ 'pattern' => '^[a-zA-Z_][a-zA-Z0-9_]{1,39}$',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'CloudAccessId',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ ],
+ 'maxItems' => 50,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'yamlConfigFail',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '28CEA2E0-3E90-51B2-A7E8-B1ED75534E49',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'TaskId' => [
+ 'description' => 'The ID of the monitoring task.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '36****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"yamlConfigFail\\",\\n \\"RequestId\\": \\"28CEA2E0-3E90-51B2-A7E8-B1ED75534E49\\",\\n \\"Success\\": \\"true\\",\\n \\"TaskId\\": 0\\n}","errorExample":""},{"type":"xml","example":"<CreateHybridMonitorTaskResponse>\\n\\t<TaskId>36****</TaskId>\\n\\t<RequestId>28CEA2E0-3E90-51B2-A7E8-B1ED75534E49</RequestId>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</CreateHybridMonitorTaskResponse>\\t","errorExample":""}]',
+ 'title' => 'CreateHybridMonitorTask',
+ 'description' => '# [](#)Prerequisites'."\n"
+ ."\n"
+ .'* Hybrid Cloud Monitoring is activated. For more information, see [Activate Hybrid Cloud Monitoring](~~250773~~).'."\n"
+ .'* If you want to create a metric for logs imported from Simple Log Service, make sure that you have activated Simple Log Service and created a project and a Logstore. For more information, see [Getting Started](~~54604~~).'."\n"
+ ."\n"
+ .'# [](#)Description'."\n"
+ ."\n"
+ .'This topic provides an example on how to create a metric import task named `aliyun_task` for Elastic Compute Service (ECS). The task imports the `cpu_total` metric to the `aliyun` namespace. The response shows that the metric import task is created.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'ModifyHybridMonitorTask' => [
+ 'summary' => 'Modifies a metric for the logs that are imported from Log Service.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the metric import task.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of a metric import task, see [DescribeHybridMonitorTaskList](~~428624~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => true,
+ 'example' => '36****',
+ ],
+ ],
+ [
+ 'name' => 'TaskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the metric import task.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of a metric import task, see [DescribeHybridMonitorTaskList](~~428624~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'SLS_task',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the metric import task.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'CollectInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The collection period of the metric. Valid values:'."\n"
+ ."\n"
+ .'* 15'."\n"
+ .'* 60'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '15',
+ ],
+ ],
+ [
+ 'name' => 'AttachLabels',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The tags of the metric.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => 'The tag value of the metric.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testValue',
+ ],
+ 'Name' => [
+ 'description' => 'The tag key of the metric.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'app_service',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ [
+ 'name' => 'SLSProcessConfig',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'The configurations of the logs that are imported from Simple Log Service.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Filter' => [
+ 'description' => 'The conditions that are used to filter logs imported from Simple Log Service.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Relation' => [
+ 'description' => 'The relationship between multiple filter conditions. Valid values:'."\n"
+ ."\n"
+ .'* and (default): Logs are processed only if all filter conditions are met.'."\n"
+ .'* or: Logs are processed if one of the filter conditions is met.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'and',
+ ],
+ 'Filters' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSKeyName' => [
+ 'description' => 'The name of the key that is used to filter logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'code',
+ ],
+ 'Operator' => [
+ 'description' => 'The method that is used to filter logs imported from Simple Log Service. Valid values:'."\n"
+ ."\n"
+ .'* `contain`: contains'."\n"
+ .'* `notContain`: does not contain'."\n"
+ .'* `>`: greater than'."\n"
+ .'* `<`: less than'."\n"
+ .'* `=`: equal to'."\n"
+ .'* `! =`: not equal to'."\n"
+ .'* `>=`: greater than or equal to'."\n"
+ .'* `<=`: less than or equal to'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '=',
+ 'enum' => [
+ '>',
+ '>=',
+ '=',
+ '<=',
+ '<',
+ '!=',
+ 'contain',
+ 'notContain',
+ ],
+ ],
+ 'Value' => [
+ 'description' => 'The value of the key that is used to filter logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '200',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'Statistics' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSKeyName' => [
+ 'description' => 'The name of the key that is used to aggregate logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'name',
+ ],
+ 'Function' => [
+ 'description' => 'The function that is used to aggregate the log data of a statistical period. Valid values:'."\n"
+ ."\n"
+ .'* count: counts the number.'."\n"
+ .'* sum: calculates the total value.'."\n"
+ .'* avg: calculates the average value.'."\n"
+ .'* max: calculates the maximum value.'."\n"
+ .'* min: calculates the minimum value.'."\n"
+ .'* value: collects samples within the statistical period.'."\n"
+ .'* countps: calculates the number of values of the specified field divided by the total number of seconds within the statistical period.'."\n"
+ .'* sumps: calculates the sum of the values of the specified field divided by the total number of seconds within the statistical period.'."\n"
+ .'* distinct: calculates the number of unique values of the specified field within the statistical period.'."\n"
+ .'* distribution: calculates the number of logs that meet a specified condition within the statistical period.'."\n"
+ .'* percentile: sorts the values of the specified field in ascending order, and then returns the value that is at the specified percentile within the statistical period. Example: P50.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'count',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the aggregation result.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'level_count',
+ 'minLength' => 0,
+ 'pattern' => '^[a-zA-Z_][a-zA-Z0-9_]{1,39}$',
+ ],
+ 'Parameter1' => [
+ 'description' => 'The value of the function that is used to aggregate logs imported from Simple Log Service.'."\n"
+ ."\n"
+ .'* If the `Function` parameter is set to `distribution`, this parameter specifies the lower limit of the statistical interval. For example, if you want to calculate the number of HTTP requests whose status code is 2XX, set this parameter to 200.'."\n"
+ .'* If the `Function` parameter is set to `percentile`, this parameter specifies the percentile at which the expected value is. For example, 0.5 specifies P50.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '200',
+ ],
+ 'Parameter2' => [
+ 'description' => 'The value of the function that is used to aggregate logs imported from Simple Log Service.'."\n"
+ ."\n"
+ .'> This parameter is required only if the `Function` parameter is set to `distribution`. This parameter specifies the upper limit of the statistical interval. For example, if you want to calculate the number of HTTP requests whose status code is 2XX, set this parameter to 299.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '299',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'GroupBy' => [
+ 'description' => 'The dimension based on which data is aggregated. This parameter is equivalent to the GROUP BY clause in SQL.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSKeyName' => [
+ 'description' => 'The name of the key that is used to aggregate logs imported from Simple Log Service.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'code',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the aggregation result.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ApiResult',
+ 'pattern' => '^[a-zA-Z_][a-zA-Z0-9_]{1,39}$',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'Express' => [
+ 'description' => 'The extended fields that specify the results of basic operations performed on aggregation results.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Express' => [
+ 'description' => 'The extended field that specifies the result of basic operations performed on aggregation results.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'success_count',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the extended field that specifies the result of basic operations performed on aggregation results.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SuccRate',
+ 'pattern' => '^[a-zA-Z_][a-zA-Z0-9_]{1,39}$',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Invalid.SLSConfig',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '11145B76-566A-5D80-A8A3-FAD98D310079',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Invalid.SLSConfig\\",\\n \\"RequestId\\": \\"11145B76-566A-5D80-A8A3-FAD98D310079\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyHybridMonitorTaskResponse>\\n <RequestId>11145B76-566A-5D80-A8A3-FAD98D310079</RequestId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ModifyHybridMonitorTaskResponse>","errorExample":""}]',
+ 'title' => 'ModifyHybridMonitorTask',
+ 'description' => 'This topic provides an example on how to change the collection period of a metric import task whose ID is `36****` to `15` seconds. The task is used to monitor the logs that are imported from Log Service. The returned result indicates that the metric is modified.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DeleteHybridMonitorTask' => [
+ 'summary' => 'Deletes a metric import task for Alibaba Cloud services or a metric for the logs that are imported from Log Service.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the metric import task.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of a metric import task, see [DescribeHybridMonitorTaskList](~~428624~~).'."\n"
+ ."\n"
+ .'> This parameter is required only if you call this operation to delete metrics for the logs that are imported from Log Service. In this case, the `TaskType` parameter is set to `aliyun_sls`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '36****',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the namespace.'."\n"
+ ."\n"
+ .'The name can contain uppercase letters, lowercase letters, digits, and hyphens (-).'."\n"
+ ."\n"
+ .'> This parameter is required only if you call this operation to delete metric import tasks for Alibaba Cloud services. In this case, the `TaskType` parameter is set to `aliyun_fc`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aliyun',
+ ],
+ ],
+ [
+ 'name' => 'TargetUserId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the member account.'."\n"
+ ."\n"
+ .'> This parameter is required only if you use a management account to call this operation to query metric import tasks that belong to a member in a resource directory. In this case, the `TaskType` parameter is set to `aliyun_fc`.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '120886317861****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'null',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'D6B8103F-7BAD-5FEB-945F-71D991AB8834',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"null\\",\\n \\"RequestId\\": \\"D6B8103F-7BAD-5FEB-945F-71D991AB8834\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteHybridMonitorTaskResponse>\\n <RequestId>D6B8103F-7BAD-5FEB-945F-71D991AB8834</RequestId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteHybridMonitorTaskResponse>","errorExample":""}]',
+ 'title' => 'DeleteHybridMonitorTask',
+ 'description' => 'This topic provides an example on how to delete a metric import task whose ID is `36****`. The returned result indicates that the metric import task is deleted.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DescribeHybridMonitorTaskList' => [
+ 'summary' => 'Queries metric import tasks.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword that is used for the search.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'task',
+ ],
+ ],
+ [
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the metric import task.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '36****',
+ ],
+ ],
+ [
+ 'name' => 'GroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the application group.'."\n"
+ ."\n"
+ .'For information about how to obtain the ID of an application group, see [DescribeMonitorGroups](~~115032~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '3607****',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the namespace.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a namespace, see [DescribeHybridMonitorNamespaceList](~~428880~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => 'aliyun',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 1.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'IncludeAliyunTask',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether the returned result includes metric import tasks for Alibaba Cloud services. Valid values:'."\n"
+ ."\n"
+ .'* true (default): The returned result includes metric import tasks for Alibaba Cloud services.'."\n"
+ .'* false: The returned result excludes metric import tasks for Alibaba Cloud services.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'TaskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The type of the metric import task. Valid values:'."\n"
+ ."\n"
+ .'* aliyun_fc: metric import tasks for Alibaba Cloud services'."\n"
+ .'* aliyun_sls: metrics for logs imported from Log Service'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'aliyun_sls' => 'aliyun_sls',
+ ],
+ 'example' => 'aliyun_fc',
+ ],
+ ],
+ [
+ 'name' => 'TargetUserId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the member account.'."\n"
+ ."\n"
+ .'> This parameter is required only if you use a management account to call this operation to delete the metric import tasks that belong to a member in a resource directory. In this case, the `TaskType` parameter is set to `aliyun_fc`.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '120886317861****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '11145B76-566A-5D80-A8A3-FAD98D310079',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n"
+ ."\n"
+ .'* If the request was successful, the value `successful` is returned.'."\n"
+ .'* If the request failed, an error message is returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TaskList' => [
+ 'description' => 'The metric import tasks.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'YARMConfig' => [
+ 'description' => 'The configuration file of the Alibaba Cloud service that you want to monitor by using Hybrid Cloud Monitoring.'."\n"
+ ."\n"
+ .'* namespace: the namespace of the Alibaba Cloud service.'."\n"
+ .'* metric_list: the metrics of the Alibaba Cloud service.'."\n",
+ 'type' => 'string',
+ 'example' => 'products:- namespace: acs_ecs_dashboard metric_info: - metric_list: - cpu_total',
+ ],
+ 'CreateTime' => [
+ 'description' => 'The timestamp when the metric import task was created.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1639382496000',
+ ],
+ 'TaskName' => [
+ 'description' => 'The name of the metric import task.'."\n",
+ 'type' => 'string',
+ 'example' => 'aliyun_task',
+ ],
+ 'Namespace' => [
+ 'description' => 'The namespace to which the host belongs.'."\n",
+ 'type' => 'string',
+ 'example' => 'aliyun',
+ ],
+ 'UploadRegion' => [
+ 'description' => 'The region where the host resides.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'NetworkType' => [
+ 'description' => 'The network type of the host. Valid values:'."\n"
+ ."\n"
+ .'* `vpc`'."\n"
+ .'* `Internet`'."\n",
+ 'type' => 'string',
+ 'example' => 'vpc',
+ ],
+ 'CollectTimout' => [
+ 'description' => 'The timeout period during which the CloudMonitor agent collects host monitoring data. Valid values:'."\n"
+ ."\n"
+ .'* 0'."\n"
+ .'* 15'."\n"
+ .'* 30'."\n"
+ .'* 60'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ 'CollectTargetEndpoint' => [
+ 'description' => 'The URL of the destination from which the CloudMonitor agent collects host monitoring data.'."\n",
+ 'type' => 'string',
+ 'example' => 'http://localhost',
+ ],
+ 'TaskType' => [
+ 'description' => 'The type of the metric import task. Valid values:'."\n"
+ ."\n"
+ .'* aliyun_fc: metric import tasks for Alibaba Cloud services'."\n"
+ .'* aliyun_sls: metrics for logs imported from Log Service'."\n",
+ 'type' => 'string',
+ 'example' => 'aliyun_sls',
+ ],
+ 'MatchExpressRelation' => [
+ 'description' => 'The relationship between the conditions that are used to filter metric import tasks. Valid values:'."\n"
+ ."\n"
+ .'* or'."\n"
+ .'* and'."\n",
+ 'type' => 'string',
+ 'example' => 'or',
+ ],
+ 'Description' => [
+ 'description' => 'The description of the metric import task.'."\n",
+ 'type' => 'string',
+ 'example' => 'aliyun',
+ ],
+ 'GroupId' => [
+ 'description' => 'The ID of the application group.'."\n",
+ 'type' => 'string',
+ 'example' => '3607****',
+ ],
+ 'CollectInterval' => [
+ 'description' => 'The interval at which the CloudMonitor agent collects host monitoring data. Valid values:'."\n"
+ ."\n"
+ .'* 15'."\n"
+ .'* 30'."\n"
+ .'* 60'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'TargetUserId' => [
+ 'description' => 'The ID of the member account.'."\n"
+ ."\n"
+ .'> This parameter is displayed only when you call this operation by using a management account.'."\n",
+ 'type' => 'string',
+ 'example' => '120886317861****',
+ ],
+ 'CollectTargetPath' => [
+ 'description' => 'The relative path from which the CloudMonitor agent collects monitoring data.'."\n",
+ 'type' => 'string',
+ 'example' => '/metrics',
+ ],
+ 'CollectTargetType' => [
+ 'description' => 'The type of the monitoring data. Valid values: Spring, Tomcat, Nginx, Tengine, JVM, Redis, and MySQL.'."\n",
+ 'type' => 'string',
+ 'example' => 'nginx',
+ ],
+ 'TaskId' => [
+ 'description' => 'The ID of the metric import task.'."\n",
+ 'type' => 'string',
+ 'example' => '36****',
+ ],
+ 'AttachLabels' => [
+ 'description' => 'The tags of the metric import task.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => 'The tag key.'."\n",
+ 'type' => 'string',
+ 'example' => 'key1',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value.'."\n",
+ 'type' => 'string',
+ 'example' => 'value1',
+ ],
+ ],
+ ],
+ ],
+ 'MatchExpress' => [
+ 'description' => 'The conditions that are used to match the instances in the application group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'None'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => 'The keyword that corresponds to the instance name.'."\n",
+ 'type' => 'string',
+ 'example' => 'ECS_instance1',
+ ],
+ 'Name' => [
+ 'description' => 'The instance name.'."\n",
+ 'type' => 'string',
+ 'example' => 'name',
+ ],
+ 'Function' => [
+ 'description' => 'The method that is used to match the instance name. Valid values:'."\n"
+ ."\n"
+ .'* startWith: starts with a prefix'."\n"
+ .'* endWith: ends with a suffix'."\n"
+ .'* all: matches all'."\n"
+ .'* equals: equals'."\n"
+ .'* contains: contains'."\n"
+ .'* notContains: does not contain'."\n",
+ 'type' => 'string',
+ 'example' => 'all',
+ ],
+ ],
+ ],
+ ],
+ 'Instances' => [
+ 'description' => 'The instances where monitoring data is collected in batches.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-hp368focau7dp0hw****',
+ ],
+ ],
+ 'ExtraInfo' => [
+ 'description' => 'The additional information of the instance.'."\n",
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'LogFilePath' => [
+ 'description' => 'The path where on-premises log data is stored. On-premises log data is stored in the specified path of the host where CloudMonitor is deployed.'."\n"
+ ."\n"
+ .'* Windows: The log path must start with a drive letter. Example: `C:\\UserData\\log\\\\*.Log`. You cannot specify wildcard characters in a log path.'."\n"
+ .'* Linux: The log path must start with a forward slash (/). Example: `/home/appdata/log/**/*.log`. In this example, `/**/` is used to match all files in the appdata directory.'."\n",
+ 'type' => 'string',
+ 'example' => 'C:\\UserData\\log\\*.Log',
+ ],
+ 'LogSplit' => [
+ 'description' => 'The result that is returned after on-premises log data is split based on the specified matching mode.'."\n"
+ ."\n"
+ .'> The matching modes of on-premises log data include full regex mode, delimiter mode, and JSON mode.'."\n",
+ 'type' => 'string',
+ 'example' => '{"type": "regex","regex": "\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\s+(\\\\d+)\\\\s+\\\\S+\\\\s+\\\\[\\\\d+/\\\\S+/\\\\d+:\\\\d+:\\\\d+:\\\\d+\\\\s+\\\\+\\\\d+\\\\]\\\\s+(\\\\S+)\\\\s+\\\\S+\\\\s+/\\\\S+/\\\\S+/\\\\S+\\\\s+(\\\\d+)","columns": [{"name": "field1"},{"name": "filed2","translate": {"default": "-","mappings": [{"from": "(\\\\w+)","to": "$1x","type": "regex"}]}},{"name": "filed3","translate": {"default": "-","mappings": [{"from": "NumberRange(100,300)","to": "true","type": "function"}]}}]}',
+ ],
+ 'LogProcess' => [
+ 'description' => 'The method that is used to aggregate on-premises log data.'."\n",
+ 'type' => 'string',
+ 'example' => '[{"metric": "metric1","filters": [{"column": "filed2","type": "include","values": ["222222"]}],"groupBys": [{"column": "filed3","name": "filed3"}],"calculates": [{"column": "field1","name": "avg","type": "avg"}]},{"metric": "metric2","filters": [{"column": "field1","type": "include","values": ["11111"]}],"groupBys": [{"column": "filed2","name": "filed2"}],"calculates": [{"column": "field1","name": "avg","type": "avg"}]}]',
+ ],
+ 'LogSample' => [
+ 'description' => 'The sample on-premises log.'."\n",
+ 'type' => 'string',
+ 'example' => '{"logContent":"100.116.134.26 1119 - [13/Aug/2019:16:55:46 +0800] POST metrichub-cn-hongkong.aliyun.com /agent/metrics/putLines 200 0 \\"-\\" \\"127.0.0.1:7001\\" \\"Go-http-client/1.1\\" \\"-\\" \\"-\\" \\"0a98a21a15656865460656276e\\"","addData":{"field1":["1119","1119"],"filed2":["POSTx","POST"],"filed3":["true","200"]}}',
+ ],
+ 'SLSProcess' => [
+ 'description' => 'The configurations of the logs that are imported from Log Service.'."\n",
+ 'type' => 'string',
+ 'example' => '{"express": [],"filter": {"filters": [{"key": "task_type","operator": "=","value": "1"}]},"groupby": [{"alias": "isp","key": "isp","sqlKey": "t.`isp`","valueKey": "isp"}],"interval": 60,"labels": [{"name": "__cms_app__","type": 0,"value": "sitemonitor"}],"statistics": [{"alias": "http_dns_time_avg","function": "avg","key": "http_dns_time"}]}',
+ ],
+ 'SLSProcessConfig' => [
+ 'description' => 'The configurations of the logs that are imported from Log Service.'."\n"
+ ."\n"
+ .'> This parameter is returned only if the `TaskType` parameter is set to `aliyun_sls`.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Filter' => [
+ 'description' => 'The conditions that are used to filter logs imported from Log Service.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Relation' => [
+ 'description' => 'The relationship between multiple filter conditions. Valid values:'."\n"
+ ."\n"
+ .'* and (default): Logs are processed only if all filter conditions are met.'."\n"
+ .'* or: Logs are processed if one of the filter conditions is met.'."\n",
+ 'type' => 'string',
+ 'example' => 'and',
+ ],
+ 'Filters' => [
+ 'description' => 'The conditions that are used to filter logs imported from Log Service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The conditions that are used to filter logs imported from Log Service.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSKeyName' => [
+ 'description' => 'The name of the key that is used to filter logs imported from Log Service.'."\n",
+ 'type' => 'string',
+ 'example' => 'host',
+ ],
+ 'Operator' => [
+ 'description' => 'The method that is used to filter logs imported from Log Service. Valid values:'."\n"
+ ."\n"
+ .'* `contain`: contains'."\n"
+ .'* `notContain`: does not contain'."\n"
+ .'* `>`: greater than'."\n"
+ .'* `<`: less than'."\n"
+ .'* `=`: equal to'."\n"
+ .'* `! =`: not equal to'."\n"
+ .'* `>=`: greater than or equal to'."\n"
+ .'* `<=`: less than or equal to'."\n",
+ 'type' => 'string',
+ 'example' => '=',
+ ],
+ 'Value' => [
+ 'description' => 'The value of the key that is used to filter logs imported from Log Service.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Statistics' => [
+ 'description' => 'The methods that are used to aggregate logs imported from Log Service.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The method that is used to aggregate logs imported from Log Service.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSKeyName' => [
+ 'description' => 'The name of the key that is used to aggregate logs imported from Log Service.'."\n",
+ 'type' => 'string',
+ 'example' => 'name',
+ ],
+ 'Function' => [
+ 'description' => 'The function that is used to aggregate log data within a statistical period. Valid values:'."\n"
+ ."\n"
+ .'* count: counts the number.'."\n"
+ .'* sum: calculates the total value.'."\n"
+ .'* avg: calculates the average value.'."\n"
+ .'* max: calculates the maximum value.'."\n"
+ .'* min: calculates the minimum value.'."\n"
+ .'* value: collects samples within the statistical period.'."\n"
+ .'* countps: calculates the average number of the specified field per second by using the following formula: Counted number of the specified field/Total number of seconds within the statistical period.'."\n"
+ .'* sumps: calculates the average number of the specified field per second by using the following formula: Total value of the specified field/Total number of seconds within the statistical period.'."\n"
+ .'* distinct: counts the number of logs where the specified field appears within the statistical period.'."\n"
+ .'* distribution: counts the number of logs that meet a specified condition within the statistical period.'."\n"
+ .'* percentile: sorts the values of the specified field in ascending order, and then returns the value that is at the specified percentile within the statistical period. Example: P50.'."\n",
+ 'type' => 'string',
+ 'example' => 'count',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the aggregation result.'."\n",
+ 'type' => 'string',
+ 'example' => 'level_count',
+ ],
+ 'Parameter1' => [
+ 'description' => 'The value of the function that is used to aggregate logs imported from Log Service.'."\n"
+ ."\n"
+ .'* If the `Function` parameter is set to `distribution`, this parameter indicates the lower limit of the statistical interval. For example, 200 indicates that the number of HTTP requests whose status code is 2XX is calculated.'."\n"
+ .'* If the `Function` parameter is set to `percentile`, this parameter specifies the percentile at which the expected value is. For example, 0.5 specifies P50.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Parameter2' => [
+ 'description' => 'The value of the function that is used to aggregate logs imported from Log Service.'."\n"
+ ."\n"
+ .'> This parameter is returned only if the `Function` parameter is set to `distribution`. This parameter indicates the upper limit of the statistical interval. For example, 299 indicates that the number of HTTP requests whose status code is 2XX is calculated.'."\n",
+ 'type' => 'string',
+ 'example' => '299',
+ ],
+ ],
+ ],
+ ],
+ 'GroupBy' => [
+ 'description' => 'The dimensions based on which data is aggregated. This parameter is equivalent to the GROUP BY clause in SQL.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The dimension based on which data is aggregated. This parameter is equivalent to the GROUP BY clause in SQL.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSKeyName' => [
+ 'description' => 'The name of the key that is used to aggregate logs imported from Log Service.'."\n",
+ 'type' => 'string',
+ 'example' => 'code',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the aggregation result.'."\n",
+ 'type' => 'string',
+ 'example' => 'ApiResult',
+ ],
+ ],
+ ],
+ ],
+ 'Express' => [
+ 'description' => 'The extended fields that indicate the results of basic operations that are performed on aggregation results.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The extended field that indicates the result of basic operations that are performed on aggregation results.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Express' => [
+ 'description' => 'The extended field that indicates the result of basic operations that are performed on aggregation results.'."\n",
+ 'type' => 'string',
+ 'example' => 'success_count',
+ ],
+ 'Alias' => [
+ 'description' => 'The alias of the extended field that indicates the result of basic operations that are performed on aggregation results.'."\n",
+ 'type' => 'string',
+ 'example' => 'SuccRate',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"11145B76-566A-5D80-A8A3-FAD98D310079\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Total\\": 1,\\n \\"TaskList\\": [\\n {\\n \\"YARMConfig\\": \\"products:- namespace: acs_ecs_dashboard metric_info: - metric_list: - cpu_total\\",\\n \\"CreateTime\\": \\"1639382496000\\",\\n \\"TaskName\\": \\"aliyun_task\\",\\n \\"Namespace\\": \\"aliyun\\",\\n \\"UploadRegion\\": \\"cn-hangzhou\\",\\n \\"NetworkType\\": \\"vpc\\",\\n \\"CollectTimout\\": 15,\\n \\"CollectTargetEndpoint\\": \\"http://localhost\\",\\n \\"TaskType\\": \\"aliyun_sls\\",\\n \\"MatchExpressRelation\\": \\"or\\",\\n \\"Description\\": \\"aliyun\\",\\n \\"GroupId\\": \\"3607****\\",\\n \\"CollectInterval\\": 60,\\n \\"TargetUserId\\": \\"120886317861****\\",\\n \\"CollectTargetPath\\": \\"/metrics\\",\\n \\"CollectTargetType\\": \\"nginx\\",\\n \\"TaskId\\": \\"36****\\",\\n \\"AttachLabels\\": [\\n {\\n \\"Name\\": \\"key1\\",\\n \\"Value\\": \\"value1\\"\\n }\\n ],\\n \\"MatchExpress\\": [\\n {\\n \\"Value\\": \\"ECS_instance1\\",\\n \\"Name\\": \\"name\\",\\n \\"Function\\": \\"all\\"\\n }\\n ],\\n \\"Instances\\": [\\n \\"i-hp368focau7dp0hw****\\"\\n ],\\n \\"ExtraInfo\\": \\"test\\",\\n \\"LogFilePath\\": \\"C:\\\\\\\\UserData\\\\\\\\log\\\\\\\\*.Log\\",\\n \\"LogSplit\\": \\"{\\\\\\"type\\\\\\": \\\\\\"regex\\\\\\",\\\\\\"regex\\\\\\": \\\\\\"\\\\\\\\\\\\\\\\d+\\\\\\\\\\\\\\\\.\\\\\\\\\\\\\\\\d+\\\\\\\\\\\\\\\\.\\\\\\\\\\\\\\\\d+\\\\\\\\\\\\\\\\.\\\\\\\\\\\\\\\\d+\\\\\\\\\\\\\\\\s+(\\\\\\\\\\\\\\\\d+)\\\\\\\\\\\\\\\\s+\\\\\\\\\\\\\\\\S+\\\\\\\\\\\\\\\\s+\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\d+/\\\\\\\\\\\\\\\\S+/\\\\\\\\\\\\\\\\d+:\\\\\\\\\\\\\\\\d+:\\\\\\\\\\\\\\\\d+:\\\\\\\\\\\\\\\\d+\\\\\\\\\\\\\\\\s+\\\\\\\\\\\\\\\\+\\\\\\\\\\\\\\\\d+\\\\\\\\\\\\\\\\]\\\\\\\\\\\\\\\\s+(\\\\\\\\\\\\\\\\S+)\\\\\\\\\\\\\\\\s+\\\\\\\\\\\\\\\\S+\\\\\\\\\\\\\\\\s+/\\\\\\\\\\\\\\\\S+/\\\\\\\\\\\\\\\\S+/\\\\\\\\\\\\\\\\S+\\\\\\\\\\\\\\\\s+(\\\\\\\\\\\\\\\\d+)\\\\\\",\\\\\\"columns\\\\\\": [{\\\\\\"name\\\\\\": \\\\\\"field1\\\\\\"},{\\\\\\"name\\\\\\": \\\\\\"filed2\\\\\\",\\\\\\"translate\\\\\\": {\\\\\\"default\\\\\\": \\\\\\"-\\\\\\",\\\\\\"mappings\\\\\\": [{\\\\\\"from\\\\\\": \\\\\\"(\\\\\\\\\\\\\\\\w+)\\\\\\",\\\\\\"to\\\\\\": \\\\\\"$1x\\\\\\",\\\\\\"type\\\\\\": \\\\\\"regex\\\\\\"}]}},{\\\\\\"name\\\\\\": \\\\\\"filed3\\\\\\",\\\\\\"translate\\\\\\": {\\\\\\"default\\\\\\": \\\\\\"-\\\\\\",\\\\\\"mappings\\\\\\": [{\\\\\\"from\\\\\\": \\\\\\"NumberRange(100,300)\\\\\\",\\\\\\"to\\\\\\": \\\\\\"true\\\\\\",\\\\\\"type\\\\\\": \\\\\\"function\\\\\\"}]}}]}\\",\\n \\"LogProcess\\": \\"[{\\\\\\"metric\\\\\\": \\\\\\"metric1\\\\\\",\\\\\\"filters\\\\\\": [{\\\\\\"column\\\\\\": \\\\\\"filed2\\\\\\",\\\\\\"type\\\\\\": \\\\\\"include\\\\\\",\\\\\\"values\\\\\\": [\\\\\\"222222\\\\\\"]}],\\\\\\"groupBys\\\\\\": [{\\\\\\"column\\\\\\": \\\\\\"filed3\\\\\\",\\\\\\"name\\\\\\": \\\\\\"filed3\\\\\\"}],\\\\\\"calculates\\\\\\": [{\\\\\\"column\\\\\\": \\\\\\"field1\\\\\\",\\\\\\"name\\\\\\": \\\\\\"avg\\\\\\",\\\\\\"type\\\\\\": \\\\\\"avg\\\\\\"}]},{\\\\\\"metric\\\\\\": \\\\\\"metric2\\\\\\",\\\\\\"filters\\\\\\": [{\\\\\\"column\\\\\\": \\\\\\"field1\\\\\\",\\\\\\"type\\\\\\": \\\\\\"include\\\\\\",\\\\\\"values\\\\\\": [\\\\\\"11111\\\\\\"]}],\\\\\\"groupBys\\\\\\": [{\\\\\\"column\\\\\\": \\\\\\"filed2\\\\\\",\\\\\\"name\\\\\\": \\\\\\"filed2\\\\\\"}],\\\\\\"calculates\\\\\\": [{\\\\\\"column\\\\\\": \\\\\\"field1\\\\\\",\\\\\\"name\\\\\\": \\\\\\"avg\\\\\\",\\\\\\"type\\\\\\": \\\\\\"avg\\\\\\"}]}]\\",\\n \\"LogSample\\": \\"{\\\\\\"logContent\\\\\\":\\\\\\"100.116.134.26 1119 - [13/Aug/2019:16:55:46 +0800] POST metrichub-cn-hongkong.aliyun.com /agent/metrics/putLines 200 0 \\\\\\\\\\\\\\"-\\\\\\\\\\\\\\" \\\\\\\\\\\\\\"127.0.0.1:7001\\\\\\\\\\\\\\" \\\\\\\\\\\\\\"Go-http-client/1.1\\\\\\\\\\\\\\" \\\\\\\\\\\\\\"-\\\\\\\\\\\\\\" \\\\\\\\\\\\\\"-\\\\\\\\\\\\\\" \\\\\\\\\\\\\\"0a98a21a15656865460656276e\\\\\\\\\\\\\\"\\\\\\",\\\\\\"addData\\\\\\":{\\\\\\"field1\\\\\\":[\\\\\\"1119\\\\\\",\\\\\\"1119\\\\\\"],\\\\\\"filed2\\\\\\":[\\\\\\"POSTx\\\\\\",\\\\\\"POST\\\\\\"],\\\\\\"filed3\\\\\\":[\\\\\\"true\\\\\\",\\\\\\"200\\\\\\"]}}\\",\\n \\"SLSProcess\\": \\"{\\\\\\"express\\\\\\": [],\\\\\\"filter\\\\\\": {\\\\\\"filters\\\\\\": [{\\\\\\"key\\\\\\": \\\\\\"task_type\\\\\\",\\\\\\"operator\\\\\\": \\\\\\"=\\\\\\",\\\\\\"value\\\\\\": \\\\\\"1\\\\\\"}]},\\\\\\"groupby\\\\\\": [{\\\\\\"alias\\\\\\": \\\\\\"isp\\\\\\",\\\\\\"key\\\\\\": \\\\\\"isp\\\\\\",\\\\\\"sqlKey\\\\\\": \\\\\\"t.`isp`\\\\\\",\\\\\\"valueKey\\\\\\": \\\\\\"isp\\\\\\"}],\\\\\\"interval\\\\\\": 60,\\\\\\"labels\\\\\\": [{\\\\\\"name\\\\\\": \\\\\\"__cms_app__\\\\\\",\\\\\\"type\\\\\\": 0,\\\\\\"value\\\\\\": \\\\\\"sitemonitor\\\\\\"}],\\\\\\"statistics\\\\\\": [{\\\\\\"alias\\\\\\": \\\\\\"http_dns_time_avg\\\\\\",\\\\\\"function\\\\\\": \\\\\\"avg\\\\\\",\\\\\\"key\\\\\\": \\\\\\"http_dns_time\\\\\\"}]}\\",\\n \\"SLSProcessConfig\\": {\\n \\"Filter\\": {\\n \\"Relation\\": \\"and\\",\\n \\"Filters\\": [\\n {\\n \\"SLSKeyName\\": \\"host\\",\\n \\"Operator\\": \\"=\\",\\n \\"Value\\": \\"200\\"\\n }\\n ]\\n },\\n \\"Statistics\\": [\\n {\\n \\"SLSKeyName\\": \\"name\\",\\n \\"Function\\": \\"count\\",\\n \\"Alias\\": \\"level_count\\",\\n \\"Parameter1\\": \\"200\\",\\n \\"Parameter2\\": \\"299\\"\\n }\\n ],\\n \\"GroupBy\\": [\\n {\\n \\"SLSKeyName\\": \\"code\\",\\n \\"Alias\\": \\"ApiResult\\"\\n }\\n ],\\n \\"Express\\": [\\n {\\n \\"Express\\": \\"success_count\\",\\n \\"Alias\\": \\"SuccRate\\"\\n }\\n ]\\n }\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeHybridMonitorTaskListResponse>\\n\\t<RequestId>11145B76-566A-5D80-A8A3-FAD98D310079</RequestId>\\n\\t<PageSize>10</PageSize>\\n\\t<PageNumber>1</PageNumber>\\n\\t<Total>1</Total>\\n\\t<TaskList>\\n\\t\\t<CollectTimout>15</CollectTimout>\\n\\t\\t<CollectInterval>0</CollectInterval>\\n\\t\\t<Description></Description>\\n\\t\\t<TaskId>36****</TaskId>\\n\\t\\t<CreateTime>1639382496000</CreateTime>\\n\\t\\t<YARMConfig></YARMConfig>\\n\\t\\t<CollectTargetPath></CollectTargetPath>\\n\\t\\t<Namespace>aliyun</Namespace>\\n\\t\\t<GroupId>0</GroupId>\\n\\t\\t<MatchExpressRelation></MatchExpressRelation>\\n\\t\\t<SLSProcess>{\\\\\\"express\\\\\\":[],\\\\\\"filter\\\\\\":{\\\\\\"filters\\\\\\":[]},\\\\\\"groupby\\\\\\":[],\\\\\\"interval\\\\\\":60,\\\\\\"labels\\\\\\":[],\\\\\\"statistics\\\\\\":[{\\\\\\"alias\\\\\\":\\\\\\"referer_count\\\\\\",\\\\\\"function\\\\\\":\\\\\\"count\\\\\\",\\\\\\"key\\\\\\":\\\\\\"referer\\\\\\"}]}</SLSProcess>\\n\\t\\t<CollectTargetEndpoint></CollectTargetEndpoint>\\n\\t\\t<TaskName>aliyun_task</TaskName>\\n\\t\\t<UploadRegion>unknown</UploadRegion>\\n\\t\\t<NetworkType>vpc</NetworkType>\\n\\t\\t<TaskType>aliyun_sls</TaskType>\\n\\t\\t<CollectTargetType></CollectTargetType>\\n\\t\\t<TargetUserId></TargetUserId>\\n\\t</TaskList>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</DescribeHybridMonitorTaskListResponse>\\t","errorExample":""}]',
+ 'title' => 'DescribeHybridMonitorTaskList',
+ 'description' => 'This topic provides an example on how to query all metric import tasks that belong to the current Alibaba Cloud account. The returned result indicates that the current account has only one metric import task. The metric import task is named `aliyun_task`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'PutHybridMonitorMetricData' => [
+ 'summary' => 'Imports the monitoring data of a metric to a namespace of Hybrid Cloud Monitoring.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the namespace.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a namespace, see [DescribeHybridMonitorNamespaceList](~~428880~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'default-aliyun',
+ ],
+ ],
+ [
+ 'name' => 'MetricList',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'title' => '上报的监控数据',
+ 'description' => 'The monitoring data.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'title' => '指标名,只能是英文字母、数字、下划线',
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n"
+ ."\n"
+ .'The name can contain letters, digits, and underscores (\\_). The name must start with a letter.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'CPU_Usage',
+ 'maxLength' => 128,
+ 'minLength' => 1,
+ 'pattern' => '^[a-zA-Z_][a-zA-Z0-9_]*$',
+ ],
+ 'Labels' => [
+ 'title' => '标签,Key只能是英文字母、数字、下划线',
+ 'description' => 'The tags of the metric.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'title' => '只能是英文字母、数字、下划线',
+ 'description' => 'The tag key of the metric.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n"
+ ."\n"
+ .'The key can contain letters, digits, and underscores (\\_). The key must start with a letter or an underscore (\\_).'."\n"
+ ."\n"
+ .'> You must specify both the Key and Value parameters.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'IP',
+ ],
+ 'Value' => [
+ 'description' => 'The tag value of the metric.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n"
+ ."\n"
+ .'> You must specify both the Key and Value parameters.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '192.168.XX.XX',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'example' => 'app、ip、hostName等标识信息',
+ 'maxItems' => 20,
+ ],
+ 'Value' => [
+ 'title' => '监控值,浮点或整型',
+ 'description' => 'The value of the metric.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n"
+ ."\n"
+ .'The value must be an integer or a floating-point number.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '90',
+ 'pattern' => '^[0-9\\.]*$',
+ ],
+ 'TS' => [
+ 'title' => '时间戳,unix毫秒数,如果不传会使用服务器时间',
+ 'description' => 'The time when the monitoring data is imported. The value is a timestamp.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 100.'."\n"
+ ."\n"
+ .'Unit: milliseconds. By default, the current time is used.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1640776119473',
+ ],
+ ],
+ 'required' => true,
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'title' => '返回code',
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'RequestId' => [
+ 'title' => '请求的requestId',
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '5DB1CBCA-D14A-55FA-814F-B4DBD9735F68',
+ ],
+ 'ErrorDetail' => [
+ 'title' => '不合法的指标信息',
+ 'description' => 'The details of invalid parameters.'."\n"
+ ."\n"
+ .'If a request parameter is invalid, the details of the invalid parameter are returned.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Index' => [
+ 'title' => '错误数据在上报列表中的序号,从0开始',
+ 'description' => 'The position of the error message in the array.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'ErrorMessage' => [
+ 'title' => '错误信息',
+ 'description' => 'The error message of the invalid parameter.'."\n",
+ 'type' => 'string',
+ 'example' => 'label name :123 not match [a-zA-Z_][a-zA-Z0-9_]*',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"RequestId\\": \\"5DB1CBCA-D14A-55FA-814F-B4DBD9735F68\\",\\n \\"ErrorDetail\\": [\\n {\\n \\"Index\\": 0,\\n \\"ErrorMessage\\": \\"label name :123 not match [a-zA-Z_][a-zA-Z0-9_]*\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<PutHybridMonitorMetricDataResponse>\\r\\n\\t<RequestId>5DB1CBCA-D14A-55FA-814F-B4DBD9735F68</RequestId>\\r\\n\\t<Code>200</Code>\\r\\n</PutHybridMonitorMetricDataResponse>\\t","errorExample":""}]',
+ 'title' => 'PutHybridMonitorMetricData',
+ 'description' => '## [](#)Prerequisites'."\n"
+ ."\n"
+ .'Hybrid Cloud Monitoring is activated. For more information, see [Activate Hybrid Cloud Monitoring](~~250773~~).'."\n"
+ ."\n"
+ .'## [](#)Limits'."\n"
+ ."\n"
+ .'The size of the monitoring data that you import at a time must be less than or equal to 1 MB.'."\n"
+ ."\n"
+ .'## [](#)Operation description'."\n"
+ ."\n"
+ .'This topic provides an example on how to import the monitoring data of the `CPU_Usage` metric to the `default-aliyun` namespace of Hybrid Cloud Monitoring.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeHybridMonitorDataList' => [
+ 'summary' => 'Queries the monitoring data in a namespace.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the namespace.'."\n"
+ ."\n"
+ .'For more information about how to query the names of namespaces, see [DescribeHybridMonitorNamespaceList](~~428880~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => false,
+ 'example' => 'default-aliyun',
+ ],
+ ],
+ [
+ 'name' => 'PromSQL',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The metric name.'."\n"
+ ."\n"
+ .'> PromQL statements are supported.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => false,
+ 'example' => 'AliyunEcs_cpu_total',
+ ],
+ ],
+ [
+ 'name' => 'Start',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The start of the time range to query.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => false,
+ 'example' => '1653804865',
+ ],
+ ],
+ [
+ 'name' => 'End',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The end of the time range to query.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'docRequired' => false,
+ 'example' => '1653805225',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The statistical period of the monitoring data.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'docRequired' => false,
+ 'example' => '60',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The response code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'end timestamp must not be before start time.',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'C240412F-3F5F-50E2-ACEC-DE808EF9C4BE',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'TimeSeries' => [
+ 'description' => 'The returned monitoring data.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'MetricName' => [
+ 'description' => 'The metric name.'."\n",
+ 'type' => 'string',
+ 'example' => 'AliyunEcs_cpu_total',
+ ],
+ 'Labels' => [
+ 'description' => 'The tags of the time dimension.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'K' => [
+ 'description' => 'The tag key.'."\n",
+ 'type' => 'string',
+ 'example' => 'instanceId',
+ ],
+ 'V' => [
+ 'description' => 'The tag value.'."\n",
+ 'type' => 'string',
+ 'example' => 'i-rj99xc6cptkk64ml****',
+ ],
+ ],
+ ],
+ ],
+ 'Values' => [
+ 'description' => 'The metric values that are collected at different timestamps.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'V' => [
+ 'description' => 'The metric value.'."\n",
+ 'type' => 'string',
+ 'example' => '0.13',
+ ],
+ 'Ts' => [
+ 'description' => 'The timestamp that indicates the time when the metric value is collected.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1653804865',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Bad request.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => 'Resources already exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"end timestamp must not be before start time.\\",\\n \\"RequestId\\": \\"C240412F-3F5F-50E2-ACEC-DE808EF9C4BE\\",\\n \\"Success\\": \\"true\\",\\n \\"TimeSeries\\": [\\n {\\n \\"MetricName\\": \\"AliyunEcs_cpu_total\\",\\n \\"Labels\\": [\\n {\\n \\"K\\": \\"instanceId\\",\\n \\"V\\": \\"i-rj99xc6cptkk64ml****\\"\\n }\\n ],\\n \\"Values\\": [\\n {\\n \\"V\\": \\"0.13\\",\\n \\"Ts\\": \\"1653804865\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeHybridMonitorDataList>\\n\\t<TimeSeries>\\n\\t\\t<MetricName>AliyunEcs_cpu_total</MetricName>\\n\\t\\t<Values>\\n\\t\\t\\t<V>0.13</V>\\n\\t\\t\\t<Ts>1653804865</Ts>\\n\\t\\t</Values>\\n\\t\\t<Values>\\n\\t\\t\\t<V>0.13</V>\\n\\t\\t\\t<Ts>1653804925</Ts>\\n\\t\\t</Values>\\n\\t\\t<Values>\\n\\t\\t\\t<V>0.13</V>\\n\\t\\t\\t<Ts>1653804985</Ts>\\n\\t\\t</Values>\\n\\t\\t<Values>\\n\\t\\t\\t<V>0.17</V>\\n\\t\\t\\t<Ts>1653805045</Ts>\\n\\t\\t</Values>\\n\\t\\t<Values>\\n\\t\\t\\t<V>0.23</V>\\n\\t\\t\\t<Ts>1653805105</Ts>\\n\\t\\t</Values>\\n\\t\\t<Values>\\n\\t\\t\\t<V>0.2</V>\\n\\t\\t\\t<Ts>1653805165</Ts>\\n\\t\\t</Values>\\n\\t\\t<Values>\\n\\t\\t\\t<V>0.13</V>\\n\\t\\t\\t<Ts>1653805225</Ts>\\n\\t\\t</Values>\\n\\t\\t<Labels>\\n\\t\\t\\t<V>rg-acfmw3ty5y7****</V>\\n\\t\\t\\t<K>rmgroup_id</K>\\n\\t\\t</Labels>\\n\\t\\t<Labels>\\n\\t\\t\\t<V>ESS</V>\\n\\t\\t\\t<K>tag_ess</K>\\n\\t\\t</Labels>\\n\\t\\t<Labels>\\n\\t\\t\\t<V>hostname1</V>\\n\\t\\t\\t<K>hostname</K>\\n\\t\\t</Labels>\\n\\t\\t<Labels>\\n\\t\\t\\t<V>i-rj99xc6cptkk64ml****</V>\\n\\t\\t\\t<K>instanceId</K>\\n\\t\\t</Labels>\\n\\t\\t<Labels>\\n\\t\\t\\t<V>cn-hangzhou</V>\\n\\t\\t\\t<K>regionId</K>\\n\\t\\t</Labels>\\n\\t\\t<Labels>\\n\\t\\t\\t<V>192.168.XX.XX</V>\\n\\t\\t\\t<K>ipgroup</K>\\n\\t\\t</Labels>\\n\\t\\t<Labels>\\n\\t\\t\\t<V>120886317861****</V>\\n\\t\\t\\t<K>userId</K>\\n\\t\\t</Labels>\\n\\t</TimeSeries>\\n\\t<RequestId>C240412F-3F5F-50E2-ACEC-DE808EF9C4BE</RequestId>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</DescribeHybridMonitorDataList>\\t","errorExample":""}]',
+ 'title' => 'DescribeHybridMonitorDataList',
+ 'description' => '## [](#)Prerequisites'."\n"
+ ."\n"
+ .'Hybrid Cloud Monitoring is activated. For more information, see [Activate Hybrid Cloud Monitoring](~~250773~~).'."\n"
+ ."\n"
+ .'## [](#)Limits'."\n"
+ ."\n"
+ .'The size of monitoring data that is returned in each call cannot exceed 1.5 MB. If the returned data reaches the upper limit, the query fails. You must reset the query conditions.'."\n"
+ ."\n"
+ .'## [](#)Operation description'."\n"
+ ."\n"
+ .'This topic provides an example to show how to query the monitoring data of the `AliyunEcs_cpu_total` metric in the `default-aliyun` namespace from `1653804865` (14:14:25 on May 29, 2022) to `1653805225` (14:20:25 on May 29, 2022).'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'CreateHybridMonitorSLSGroup' => [
+ 'summary' => 'Creates a Logstore group of Hybrid Cloud Monitoring.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SLSGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the Logstore group.'."\n"
+ ."\n"
+ .'The name must be 2 to 32 characters in length and can contain uppercase letters, lowercase letters, digits, and underscores (\\_). The name must start with a letter.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Logstore_test',
+ ],
+ ],
+ [
+ 'name' => 'SLSGroupDescription',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the Logstore group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'SLSGroupConfig',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The configurations of the Logstore group.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSRegion' => [
+ 'description' => 'The region ID.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ 'SLSProject' => [
+ 'description' => 'The Simple Log Service project.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aliyun-project',
+ ],
+ 'SLSLogstore' => [
+ 'description' => 'The Logstore.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Logstore-ECS',
+ ],
+ 'SLSUserId' => [
+ 'description' => 'The member ID.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n"
+ ."\n"
+ .'If you call this operation by using the management account of a resource directory, you can connect the Alibaba Cloud services that are activated for all members in the resource directory to Hybrid Cloud Monitoring. You can use the resource directory to monitor Alibaba Cloud services across enterprise accounts.'."\n"
+ ."\n"
+ .'> If a member uses CloudMonitor for the first time, you must make sure that the service-linked role AliyunServiceRoleForCloudMonitor is attached to the member. For more information, see [Manage the service-linked role for CloudMonitor](~~170423~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '120886317861****',
+ ],
+ ],
+ 'required' => true,
+ ],
+ 'required' => true,
+ 'maxItems' => 30,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'Duplicate.SLSGroup',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '66683237-7126-50F8-BBF8-D67ACC919A17',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParameterInvalid',
+ 'errorMessage' => 'The parameter is missing or invalid. %s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'InvalidAuthorization',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'ResourceNotFound',
+ 'errorMessage' => 'The specified resource is not found.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Duplicate.SLSGroup\\",\\n \\"RequestId\\": \\"66683237-7126-50F8-BBF8-D67ACC919A17\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateHybridMonitorSLSGroupResponse>\\n <RequestId>66683237-7126-50F8-BBF8-D67ACC919A17</RequestId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateHybridMonitorSLSGroupResponse>","errorExample":""}]',
+ 'title' => 'CreateHybridMonitorSLSGroup',
+ 'description' => '### [](#)Prerequisites'."\n"
+ ."\n"
+ .'Simple Log Service is activated. A project and a Logstore are created in Simple Log Service. For more information, see [Getting Started](~~54604~~).'."\n"
+ ."\n"
+ .'### [](#)Operation description'."\n"
+ ."\n"
+ .'This topic provides an example on how to create a Logstore group named `Logstore_test`. The region ID is `cn-hangzhou`. The project is `aliyun-project`. The Logstore is `Logstore-ECS`. The response shows that the Logstore group is created.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'ModifyHybridMonitorSLSGroup' => [
+ 'summary' => 'Modifies a Logstore group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SLSGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the Logstore group.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a Logstore group, see [DescribeHybridMonitorSLSGroup](~~429526~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Logstore_test',
+ ],
+ ],
+ [
+ 'name' => 'SLSGroupDescription',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The description of the Logstore group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'SLSGroupConfig',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => 'The configurations of the Logstore group.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSRegion' => [
+ 'description' => 'The region ID.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ 'SLSProject' => [
+ 'description' => 'The Simple Log Service project.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aliyun-project',
+ ],
+ 'SLSLogstore' => [
+ 'description' => 'The Logstore.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Logstore-aliyun-all',
+ ],
+ 'SLSUserId' => [
+ 'description' => 'The member ID.'."\n"
+ ."\n"
+ .'Valid values of N: 1 to 25.'."\n"
+ ."\n"
+ .'If you call this operation by using the management account of a resource directory, you can connect the Alibaba Cloud services that are activated for all members in the resource directory to Hybrid Cloud Monitoring. You can use the resource directory to monitor Alibaba Cloud services across enterprise accounts.'."\n"
+ ."\n"
+ .'> If a member uses CloudMonitor for the first time, you must make sure that the service-linked role AliyunServiceRoleForCloudMonitor is attached to the member. For more information, see [Manage the service-linked role for CloudMonitor](~~170423~~).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '120886317861****',
+ ],
+ ],
+ 'required' => true,
+ ],
+ 'required' => true,
+ 'maxItems' => 30,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'NotFound.SLSGroup',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '66683237-7126-50F8-BBF8-D67ACC919A17',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"NotFound.SLSGroup\\",\\n \\"RequestId\\": \\"66683237-7126-50F8-BBF8-D67ACC919A17\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyHybridMonitorSLSGroupResponse>\\n <RequestId>66683237-7126-50F8-BBF8-D67ACC919A17</RequestId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</ModifyHybridMonitorSLSGroupResponse>","errorExample":""}]',
+ 'title' => 'ModifyHybridMonitorSLSGroup',
+ 'description' => 'In this example, a Logstore group named `Logstore_test` is modified. The Logstore of the `aliyun-project` project in the `cn-hangzhou` region is changed to `Logstore-aliyun-all`. The response shows that the Logstore group is modified.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DeleteHybridMonitorSLSGroup' => [
+ 'summary' => 'Deletes a Logstore group.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SLSGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the Logstore group.'."\n"
+ ."\n"
+ .'For information about how to obtain the name of a Logstore group, see [DescribeHybridMonitorSLSGroup](~~429526~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Logstore_test',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'RESOURCE_NOT_FOUND',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '85198BFF-1DE6-556E-B6A4-C77C51C62B8D',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"RESOURCE_NOT_FOUND\\",\\n \\"RequestId\\": \\"85198BFF-1DE6-556E-B6A4-C77C51C62B8D\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteHybridMonitorSLSGroupResponse>\\n <RequestId>85198BFF-1DE6-556E-B6A4-C77C51C62B8D</RequestId>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteHybridMonitorSLSGroupResponse>","errorExample":""}]',
+ 'title' => 'DeleteHybridMonitorSLSGroup',
+ 'description' => 'This topic provides an example on how to delete a Logstore group named `Logstore_test`. The response shows that the Logstore group is deleted.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DescribeHybridMonitorSLSGroup' => [
+ 'summary' => 'Queries Logstore groups.',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The keyword that is used to search for Logstore groups.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Logstore',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n"
+ ."\n"
+ .'Minimum value: 1. Default value: 10.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number.'."\n"
+ ."\n"
+ .'Pages start from page 1. Default value: 1.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'SLSGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name of the Logstore group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Logstore_test',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'Message' => [
+ 'description' => 'The error message.'."\n",
+ 'type' => 'string',
+ 'example' => 'NotFound.SLSGroup',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '66683237-7126-50F8-BBF8-D67ACC919A17',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'List' => [
+ 'description' => 'The queried Logstore groups.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSGroupName' => [
+ 'description' => 'The name of the Logstore group.'."\n",
+ 'type' => 'string',
+ 'format' => 'int64',
+ 'example' => 'Logstore_test',
+ ],
+ 'SLSGroupDescription' => [
+ 'description' => 'The description of the Logstore group.'."\n",
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'SLSGroupConfig' => [
+ 'description' => 'The configurations of the Logstore group.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SLSRegion' => [
+ 'description' => 'The region ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'SLSProject' => [
+ 'description' => 'The Simple Log Service project.'."\n",
+ 'type' => 'string',
+ 'example' => 'aliyun-project',
+ ],
+ 'SLSLogstore' => [
+ 'description' => 'The Logstore.'."\n",
+ 'type' => 'string',
+ 'example' => 'Logstore-aliyun-all',
+ ],
+ 'SLSUserId' => [
+ 'description' => 'The member ID.'."\n"
+ ."\n"
+ .'**Description** This parameter is returned when you call the operation by using an administrative account.',
+ 'type' => 'string',
+ 'example' => '120886317861****',
+ ],
+ ],
+ ],
+ ],
+ 'CreateTime' => [
+ 'description' => 'The time when the Logstore group was created.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1652845630000',
+ ],
+ 'UpdateTime' => [
+ 'description' => 'The time when the Logstore group was modified.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n",
+ 'type' => 'string',
+ 'example' => '1652845630000',
+ ],
+ ],
+ ],
+ ],
+ 'PageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ 'PageNumber' => [
+ 'description' => 'The page number.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ 'Total' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '2',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 412 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"NotFound.SLSGroup\\",\\n \\"RequestId\\": \\"66683237-7126-50F8-BBF8-D67ACC919A17\\",\\n \\"Success\\": \\"无。\\",\\n \\"List\\": [\\n {\\n \\"SLSGroupName\\": 0,\\n \\"SLSGroupDescription\\": \\"阿里云产品归属的Logstore组。\\",\\n \\"SLSGroupConfig\\": [\\n {\\n \\"SLSRegion\\": \\"cn-hangzhou\\",\\n \\"SLSProject\\": \\"aliyun-project\\",\\n \\"SLSLogstore\\": \\"Logstore-aliyun-all\\",\\n \\"SLSUserId\\": \\"120886317861****\\"\\n }\\n ],\\n \\"CreateTime\\": \\"1652845630000\\",\\n \\"UpdateTime\\": \\"1652845630000\\"\\n }\\n ],\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Total\\": 2\\n}","errorExample":""},{"type":"xml","example":"<DescribeHybridMonitorSLSGroupResponse>\\n <RequestId>66683237-7126-50F8-BBF8-D67ACC919A17</RequestId>\\n <PageSize>10</PageSize>\\n <PageNumber>1</PageNumber>\\n <Total>2</Total>\\n <List>\\n <CreateTime>1652845630000</CreateTime>\\n <SLSGroupName>Logstore_test</SLSGroupName>\\n <UpdateTime>1652845630000</UpdateTime>\\n <SLSGroupDescription/>\\n <SLSGroupConfig>\\n <SLSProject>aliyun-project</SLSProject>\\n <SLSRegion>cn-hangzhou</SLSRegion>\\n <SLSLogstore>Logstore-aliyun-all</SLSLogstore>\\n </SLSGroupConfig>\\n </List>\\n <List>\\n <CreateTime>1649230049000</CreateTime>\\n <SLSGroupName>Logstore_aliyun</SLSGroupName>\\n <UpdateTime>1649230049000</UpdateTime>\\n <SLSGroupDescription/>\\n <SLSGroupConfig>\\n <SLSProject>aliyun-test</SLSProject>\\n <SLSRegion>cn-qingdao</SLSRegion>\\n <SLSLogstore>oss_log</SLSLogstore>\\n </SLSGroupConfig>\\n </List>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeHybridMonitorSLSGroupResponse>","errorExample":""}]',
+ 'title' => 'DescribeHybridMonitorSLSGroup',
+ 'description' => 'In this example, all Logstore groups within the current account are queried. The response shows that the current account has two Logstore groups: `Logstore_test` and `Logstore_aliyun`.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'Cursor' => [
+ 'summary' => 'Defines the range of monitoring data that you want to export. The Cursor information is returned. When you call the BatchExport operation for the first time, you must specify the Cursor information.',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'Metric',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'The metric that is used to monitor the cloud service.'."\n"
+ ."\n"
+ .'For more information about the metrics of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cpu_idle',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'The time interval based on which the metric value is measured.'."\n"
+ ."\n"
+ .'Unit: seconds.'."\n"
+ ."\n"
+ .'> Generally, the time interval is 60 seconds. For more information about specific values, see the `Period` parameter in [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'The beginning of the time range to query.'."\n"
+ ."\n"
+ .'Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. For example, 2023-01-01T00:00:00Z indicates January 1, 2023, 00:00:00 UTC.'."\n"
+ ."\n"
+ .'> In CloudMonitor, the TTL of monitoring data varies with the time granularity. Specify a proper time interval based on the TTL corresponding to the value of the `Period` parameter.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '1641627000000',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'The end of the time range to query.'."\n"
+ ."\n"
+ .'Unit: milliseconds.'."\n"
+ ."\n"
+ .'> '."\n"
+ ."\n"
+ .'* This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. For example, 2023-01-01T00:00:00Z indicates January 1, 2023, 00:00:00 UTC.'."\n"
+ ."\n"
+ .'* If you do not set the end time, the end time is infinite. You can leave this parameter empty in real-time export scenarios.'."\n"
+ .'* In CloudMonitor, the TTL of monitoring data varies with the time granularity. Specify a proper time interval based on the TTL corresponding to the value of the `Period` parameter.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1641645000000',
+ ],
+ ],
+ [
+ 'name' => 'Matchers',
+ 'in' => 'formData',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The dimension information of the metric.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The dimension information of the metric.'."\n",
+ 'required' => false,
+ '$ref' => '#/components/schemas/Matcher',
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'CursorPopResponse',
+ 'description' => 'Schema of Response'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Cursor' => [
+ 'description' => 'Cursor is used as an input parameter for data export in the [BatchExport](~~2329847~~) operation.'."\n",
+ 'type' => 'string',
+ 'example' => 'v2.5eyJiYXRjaGVzIjoxLCJidWNrZXRCeXRlcyI6IndBPT0iLCJidWNrZXRzIjo0LCJjdXJyZW50QnVja2V0IjotNjQsImN1cnJlbnRUYXJnZXRUaW1lU2xvdCI6MTY3ODc1MjAwMCwiZW5kVGltZSI6MTY3ODc4MjQxOTAwMCwiZXhwb3J0RW5kVGltZSI6MTY3ODc4MjQxOTAwMCwiZXhwb3J0U3RhcnRUaW1lIjoxNjc4NzgxODE5MDAwLCJleHByZXNzUmFuZ2UiOmZhbHNlLCJoYXNOZXh0Ijp0cnVlLCJpbmRleCI6MCwibGF0ZXN0TG9nVGltZSI6MCwibWF0Y2hlcnMiOnsiY2hhaW4iOlt7ImxhYmVsIjoidXNlcklkIiwib3BlcmF0b3IiOiJFUVVBTFMiLCJ2YWx1ZSI6IjEyNzA2NzY2Nzk1NDY3MDQifV0sImxvY2tlZCI6dHJ1ZX0sIm1ldHJpYyI6IlNwbGl0cndQcm94eU1heFJlc3BvbnNlU2l6ZSIsIm1ldHJpY1R5cGUiOiJNRVRSSUMiLCJuYW1lc3BhY2UiOiJhY3Nfa3ZzdG9yZV9leCIsIm5leHRQa0FkYXB0ZXIiOnsiZGltIjoiVjowXG5EOmB1c2VySWRgPTEyNzA2NzY2Nzk1NDY3MDQsYGluc3RhbmNlSWRgPXItcmo5ZjlzMTlsc3V1MXd1bnVyLGBub2RlSWRgPXItcmo5ZjlzMTlsc3V1MXd1bnVyLXByb3h5LTIsXG4iLCJtZXRhIjoiXG5WOjBcbk06YWNzX2t2c3RvcmVfZXgvU3BsaXRyd1Byb3h5TWF4UmVzcG9uc2VTaXplXG5XOjYwXG5COjRcbkk6LTFcblQ6MFxuQzpgQXZlcmFnZWAsYE1heGltdW1gLGBfX2NvdW50X19gLGBfX3RzX19gXG4iLCJyZCI6InN1YkFMU0RwWXY2K0t6aENQQUFBWkErNUFKMEpjbGErRGd2V0hFNWxDSHMvbGtqR2FXYTFJTkVwdFE9PSIsInRhZyI6IiJ9LCJvZmZzZXQiOjAsIm9mZnNldERpZ2l0Ijo0NTU0NTczNDQyMTc4NDIxMjIsInN0YXJ0VGltZSI6MTY3ODc4MTgxOTAwMCwic3RlcCI6LTEsInRhZ01hdGNoZXJzIjp7ImNoYWluIjpbXSwibG9ja2VkIjp0cnVlfSwidGFyZ2V0VGltZVNsb3RzIjpbMTY3ODY2NTYwMCwxNjc4NzUyMDAwXSwidXVpZCI6ImQwMmFhZmY1LWU3ZGQtNDUyYy0***********',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '915C2D7A-E6A4-17C3-8E13-4DBDD61E7919',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"Cursor\\": \\"v2.5eyJiYXRjaGVzIjoxLCJidWNrZXRCeXRlcyI6IndBPT0iLCJidWNrZXRzIjo0LCJjdXJyZW50QnVja2V0IjotNjQsImN1cnJlbnRUYXJnZXRUaW1lU2xvdCI6MTY3ODc1MjAwMCwiZW5kVGltZSI6MTY3ODc4MjQxOTAwMCwiZXhwb3J0RW5kVGltZSI6MTY3ODc4MjQxOTAwMCwiZXhwb3J0U3RhcnRUaW1lIjoxNjc4NzgxODE5MDAwLCJleHByZXNzUmFuZ2UiOmZhbHNlLCJoYXNOZXh0Ijp0cnVlLCJpbmRleCI6MCwibGF0ZXN0TG9nVGltZSI6MCwibWF0Y2hlcnMiOnsiY2hhaW4iOlt7ImxhYmVsIjoidXNlcklkIiwib3BlcmF0b3IiOiJFUVVBTFMiLCJ2YWx1ZSI6IjEyNzA2NzY2Nzk1NDY3MDQifV0sImxvY2tlZCI6dHJ1ZX0sIm1ldHJpYyI6IlNwbGl0cndQcm94eU1heFJlc3BvbnNlU2l6ZSIsIm1ldHJpY1R5cGUiOiJNRVRSSUMiLCJuYW1lc3BhY2UiOiJhY3Nfa3ZzdG9yZV9leCIsIm5leHRQa0FkYXB0ZXIiOnsiZGltIjoiVjowXG5EOmB1c2VySWRgPTEyNzA2NzY2Nzk1NDY3MDQsYGluc3RhbmNlSWRgPXItcmo5ZjlzMTlsc3V1MXd1bnVyLGBub2RlSWRgPXItcmo5ZjlzMTlsc3V1MXd1bnVyLXByb3h5LTIsXG4iLCJtZXRhIjoiXG5WOjBcbk06YWNzX2t2c3RvcmVfZXgvU3BsaXRyd1Byb3h5TWF4UmVzcG9uc2VTaXplXG5XOjYwXG5COjRcbkk6LTFcblQ6MFxuQzpgQXZlcmFnZWAsYE1heGltdW1gLGBfX2NvdW50X19gLGBfX3RzX19gXG4iLCJyZCI6InN1YkFMU0RwWXY2K0t6aENQQUFBWkErNUFKMEpjbGErRGd2V0hFNWxDSHMvbGtqR2FXYTFJTkVwdFE9PSIsInRhZyI6IiJ9LCJvZmZzZXQiOjAsIm9mZnNldERpZ2l0Ijo0NTU0NTczNDQyMTc4NDIxMjIsInN0YXJ0VGltZSI6MTY3ODc4MTgxOTAwMCwic3RlcCI6LTEsInRhZ01hdGNoZXJzIjp7ImNoYWluIjpbXSwibG9ja2VkIjp0cnVlfSwidGFyZ2V0VGltZVNsb3RzIjpbMTY3ODY2NTYwMCwxNjc4NzUyMDAwXSwidXVpZCI6ImQwMmFhZmY1LWU3ZGQtNDUyYy0***********\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"RequestId\\": \\"915C2D7A-E6A4-17C3-8E13-4DBDD61E7919\\"\\n}","errorExample":""},{"type":"xml","example":"<CursorResponse>\\n\\t<RequestId>915C2D7A-E6A4-17C3-8E13-4DBDD61E7919</RequestId>\\n\\t<Message>success</Message>\\n\\t<Data>\\n\\t\\t<Cursor>eyJidWNrZXRzIjo0LCJjdXJzb3IiOiIxNjQxNDU0MzIwMDAwMWUxY2YxNWY0NTU0MTliZjllYTY4OWQ2ODI1OTU1Yzc1NmZjMDQ2OTMxMzczMzM2MzUzMTMxMzEzMzM0MzMzODM5MzEzMTMwMjQyYzY5MmQ3NTY2MzYzMjY3NmI2ZjM5MzU2YjY4MzAzMTYyNzg3MTcwNjkzMTM3MjQyYyIsImN1cnNvclZlcnNpb24iOiJxdWVyeSIsImVuZFRpbWUiOjE2NDE0NTQ3OTU4MjMsImV4cG9ydEVuZFRpbWUiOjE2NDE0NTQ3OTU4MjMsImV4cG9ydFN0YXJ0VGltZSI6MTY0MTQ1NDE5NTgyMywiZXhwcmVzc1JhbmdlIjpmYWxzZSwiaGFzTmV4dCI6dHJ1ZSwiaW5wdXRNZXRyaWMiOiJDUFVVdGlsaXphdGlvbiIsImlucHV0TmFtZXNwYWNlIjoiYWNzX2Vjc19kYXNoYm9hcmQiLCJsaW1pdCI6MTAwMCwibG9nVGltZU1vZGUiOnRydWUsIm1hdGNoZXJzIjp7ImNoYWluIjpbeyJsYWJlbCI6InVzZXJJZCIsIm9wZXJhdG9yIjoiRVFVQUxTIiwidmFsdWUiOiIxNzM2NTExMTM0Mzg5MTEwIn1dfSwibWV0cmljIjoiQ1BVVXRpbGl6YXRpb24iLCJtZXRyaWNUeXBlIjoiTUVUUklDIiwibmFtZXNwYWNlIjoiYWNzX2Vjc19kYXNoYm9hcmQiLCJuZXh0UGtBZGFwdGVyIjp7fSwib2Zmc2V0IjowLCJwYXJlbnRVaWQiOjEyNzA2NzY2Nzk1NDY3MDQsInN0YXJ0VGltZSI6MTY0MTQ1NDE5NTgyMywic3RlcCI6LTEsInRpbWVvdXQiOjEyMCwid2luZG93Ijo2****</Cursor>\\n\\t</Data>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</CursorResponse>\\t","errorExample":""}]',
+ 'title' => 'Cursor',
+ 'description' => '### [](#)Prerequisites'."\n"
+ ."\n"
+ .'Hybrid Cloud Monitoring is activated. For more information, see [Activate Hybrid Cloud Monitoring](~~250773~~).'."\n"
+ ."\n"
+ .'### [](#)Background information'."\n"
+ ."\n"
+ .'You can call this operation to obtain the Cursor information and then call the [BatchExport](~~2329847~~) operation to export the monitoring data.'."\n"
+ ."\n"
+ .'### [](#)Description'."\n"
+ ."\n"
+ .'This topic provides an example on how to define the monitoring data of a specified metric for a specified cloud service. In this example, the namespace of the cloud service is set to `acs_ecs_dashboard`, the metric is set to `cpu_idle`, the start time is set to `1641627000000`, and the end time is set to `1641645000000`. The number of idle CPU cores on your Elastic Compute Service (ECS) instances is measured every 60 seconds from 15:30:00, January 8, 2022 to 20:30:00, January 8, 2022. The `Cursor` information is returned.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'BatchExport' => [
+ 'summary' => 'Exports the monitoring data that is defined in the Cursor operation.',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Namespace',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'The namespace of the cloud service.'."\n"
+ ."\n"
+ .'For more information about the namespaces of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> The value of this parameter must be the same as the value of the request parameter `Namespace` in the Cursor operation.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'acs_ecs_dashboard',
+ ],
+ ],
+ [
+ 'name' => 'Metric',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'The metric that is used to monitor the cloud service.'."\n"
+ ."\n"
+ .'For more information about the metrics of cloud services, see [Appendix 1: Metrics](~~163515~~).'."\n"
+ ."\n"
+ .'> The value of this parameter must be the same as the value of the request parameter `Metric` in the Cursor operation.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cpu_idle',
+ ],
+ ],
+ [
+ 'name' => 'Cursor',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'When you call this operation to export data, you must specify the `Cursor` parameter. You can obtain the value of the `Cursor` parameter by using one of the following methods:'."\n"
+ ."\n"
+ .'* When you call this operation for the first time, you must call the Cursor operation to obtain the `Cursor` value. For more information, see [Cursor](~~2330730~~).'."\n"
+ .'* When you call this operation again, you can obtain the `Cursor` value from the returned data of the last call.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eyJidWNrZXRzIjo0LCJjdXJzb3IiOiIxNjQxNDU0MzIwMDAwMWUxY2YxNWY0NTU0MTliZjllYTY4OWQ2ODI1OTU1Yzc1NmZjMDQ2OTMxMzczMzM2MzUzMTMxMzEzMzM0MzMzODM5MzEzMTMwMjQyYzY5MmQ3NTY2MzYzMjY3NmI2ZjM5MzU2YjY4MzAzMTYyNzg3MTcwNjkzMTM3MjQyYyIsImN1cnNvclZlcnNpb24iOiJxdWVyeSIsImVuZFRpbWUiOjE2NDE0NTQ3OTU4MjMsImV4cG9ydEVuZFRpbWUiOjE2NDE0NTQ3OTU4MjMsImV4cG9ydFN0YXJ0VGltZSI6MTY0MTQ1NDE5NTgyMywiZXhwcmVzc1JhbmdlIjpmYWxzZSwiaGFzTmV4dCI6dHJ1ZSwiaW5wdXRNZXRyaWMiOiJDUFVVdGlsaXphdGlvbiIsImlucHV0TmFtZXNwYWNlIjoiYWNzX2Vjc19kYXNoYm9hcmQiLCJsaW1pdCI6MTAwMCwibG9nVGltZU1vZGUiOnRydWUsIm1hdGNoZXJzIjp7ImNoYWluIjpbeyJsYWJlbCI6InVzZXJJZCIsIm9wZXJhdG9yIjoiRVFVQUxTIiwidmFsdWUiOiIxNzM2NTExMTM0Mzg5MTEwIn1dfSwibWV0cmljIjoiQ1BVVXRpbGl6YXRpb24iLCJtZXRyaWNUeXBlIjoiTUVUUklDIiwibmFtZXNwYWNlIjoiYWNzX2Vjc19kYXNoYm9hcmQiLCJuZXh0UGtBZGFwdGVyIjp7fSwib2Zmc2V0IjowLCJwYXJlbnRVaWQiOjEyNzA2NzY2Nzk1NDY3MDQsInN0YXJ0VGltZSI6MTY0MTQ1NDE5NTgyMywic3RlcCI6LTEsInRpbWVvdXQiOjEyMCwid2luZG93Ijo2****',
+ ],
+ ],
+ [
+ 'name' => 'Length',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => 'The maximum number of data entries that can be returned in each response.'."\n"
+ ."\n"
+ .'Valid values: 1 to 10000.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '1000',
+ ],
+ ],
+ [
+ 'name' => 'Measurements',
+ 'in' => 'formData',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The statistical methods used to customize the returned data. By default, the measurements based on all statistical methods are returned.'."\n"
+ ."\n"
+ .'For example, the `cpu_idle` metric of ECS (`acs_ecs_dashboard`) has three statistical methods: `Average`, `Maximum`, and `Minimum`. If you want to return only the measurements based on the `Average` and `Maximum` statistical methods, set this parameter to `["Average", "Maximum"]`.'."\n"
+ ."\n"
+ .'The statistical methods of metrics are displayed in the `Statistics` column on the Metrics page of each cloud service. For more information, see [Appendix 1: Metrics](~~163515~~).'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The statistical method.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Maximum',
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'None.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => 'The returned message.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Code' => [
+ 'description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'> The status code 200 indicates that the request was successful.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* true'."\n"
+ .'* false'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'RequestId' => [
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'example' => '251402CD-305C-1617-808E-D8C11FC8138D',
+ ],
+ 'Cursor' => [
+ 'description' => 'The Cursor information that is used to call this operation again.'."\n"
+ ."\n"
+ .'> If `null` is returned, the monitoring data is exported.'."\n",
+ 'type' => 'string',
+ 'example' => 'v2.5eyJidWNrZXRzIjo0LCJjdXJzb3IiOiIxNjQxNDU0ODAwMDAwMWUxY2YxNWY0NTU0MTliZjllYTY4OWQ2ODI1OTU1Yzc1NmZjMDQ2OTMxMzczMzM2MzUzMTMxMzEzMzM0MzMzODM5MzEzMTMwMjQyYzY5MmQzMjdhNjU2MjY3N2E2NjZhNzczOTY2NmM3Mjc0NjM3MzY5Njg3NDcyMjQyYyIsImN1cnNvclZlcnNpb24iOiJxdWVyeSIsImVuZFRpbWUiOjE2NDE0NTUyMzYxMTIsImV4cG9ydEVuZFRpbWUiOjE2NDE0NTUyMzYxMTIsImV4cG9ydFN0YXJ0VGltZSI6MTY0MTQ1NDYzNjExMiwiZXhwcmVzc1JhbmdlIjpmYWxzZSwiaGFzTmV4dCI6dHJ1ZSwiaW5wdXRNZXRyaWMiOiJDUFVVdGlsaXphdGlvbiIsImlucHV0TmFtZXNwYWNlIjoiYWNzX2Vjc19kYXNoYm9hcmQiLCJsaW1pdCI6MTAwMCwibG9nVGltZU1vZGUiOnRydWUsIm1hdGNoZXJzIjp7ImNoYWluIjpbeyJsYWJlbCI6InVzZXJJZCIsIm9wZXJhdG9yIjoiRVFVQUxTIiwidmFsdWUiOiIxNzM2NTExMTM0Mzg5MTEwIn1dfSwibWV0cmljIjoiQ1BVVXRpbGl6YXRpb24iLCJtZXRyaWNUeXBlIjoiTUVUUklDIiwibmFtZXNwYWNlIjoiYWNzX2Vjc19kYXNoYm9hcmQiLCJuZXh0UGtBZGFwdGVyIjp7fSwib2Zmc2V0IjowLCJwYXJlbnRVaWQiOjEyNzA2NzY2Nzk1NDY3MDQsInN0YXJ0VGltZSI6MTY0MTQ1NDYzNjExMiwic3RlcCI6LTEsInRpbWVvdXQiOjEyMCwid2luZG93Ijo2MH0***',
+ ],
+ 'Length' => [
+ 'description' => 'The number of data entries returned in this call.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1000',
+ ],
+ 'Anchor' => [
+ 'description' => 'The timestamp of the data requested by the backend. A larger timestamp indicates that the data export time is closer to the current time.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1678781819000',
+ ],
+ 'HasNext' => [
+ 'description' => 'Indicates whether the data has been exported. Valid values:'."\n"
+ ."\n"
+ .'* true: Some data is not exported.'."\n"
+ .'* false: All the data is exported.'."\n",
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'DataResults' => [
+ 'description' => 'The data returned in this call.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The exported data. The following parameters are involved:'."\n"
+ ."\n"
+ .'* Namespace: the namespace of the cloud service. Example: `acs_ecs_dashboard`.'."\n"
+ .'* Metric: the name of the metric. Example: `cpu_idle`.'."\n"
+ .'* Timestamp: the timestamp of the monitoring data. Unit: milliseconds. Example: 1641454680000.'."\n"
+ .'* Period: the statistical period of the monitoring data. Unit: seconds. Example: 60.'."\n"
+ .'* Dimensions: the dimensions used to identify the monitored instance, for example, `[{"Label":"userId", "Value":""20654616023382****"}, {"Label":"InstanceId", "Value":""i-2ze2d6j5uhg20x4****"}]`.'."\n"
+ .'* Associated: the additional information about the monitored instance, such as the tags in key-value pairs. Example: `{"group":"test****", "name":"Alice"}`.'."\n"
+ .'* Measurements: the statistical methods of the metric. Multiple values are displayed by default. Example: `{"Average":60,"Maximum":85}`.'."\n"
+ .'* LogTime: the time when the monitoring data is recorded. Unit: milliseconds. For non-raw data (aggregated data), the value of `LogTime` is null.'."\n",
+ '$ref' => '#/components/schemas/MetricStat',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ 503 => [
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => '%s',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"success\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"RequestId\\": \\"251402CD-305C-1617-808E-D8C11FC8138D\\",\\n \\"Cursor\\": \\"v2.5eyJidWNrZXRzIjo0LCJjdXJzb3IiOiIxNjQxNDU0ODAwMDAwMWUxY2YxNWY0NTU0MTliZjllYTY4OWQ2ODI1OTU1Yzc1NmZjMDQ2OTMxMzczMzM2MzUzMTMxMzEzMzM0MzMzODM5MzEzMTMwMjQyYzY5MmQzMjdhNjU2MjY3N2E2NjZhNzczOTY2NmM3Mjc0NjM3MzY5Njg3NDcyMjQyYyIsImN1cnNvclZlcnNpb24iOiJxdWVyeSIsImVuZFRpbWUiOjE2NDE0NTUyMzYxMTIsImV4cG9ydEVuZFRpbWUiOjE2NDE0NTUyMzYxMTIsImV4cG9ydFN0YXJ0VGltZSI6MTY0MTQ1NDYzNjExMiwiZXhwcmVzc1JhbmdlIjpmYWxzZSwiaGFzTmV4dCI6dHJ1ZSwiaW5wdXRNZXRyaWMiOiJDUFVVdGlsaXphdGlvbiIsImlucHV0TmFtZXNwYWNlIjoiYWNzX2Vjc19kYXNoYm9hcmQiLCJsaW1pdCI6MTAwMCwibG9nVGltZU1vZGUiOnRydWUsIm1hdGNoZXJzIjp7ImNoYWluIjpbeyJsYWJlbCI6InVzZXJJZCIsIm9wZXJhdG9yIjoiRVFVQUxTIiwidmFsdWUiOiIxNzM2NTExMTM0Mzg5MTEwIn1dfSwibWV0cmljIjoiQ1BVVXRpbGl6YXRpb24iLCJtZXRyaWNUeXBlIjoiTUVUUklDIiwibmFtZXNwYWNlIjoiYWNzX2Vjc19kYXNoYm9hcmQiLCJuZXh0UGtBZGFwdGVyIjp7fSwib2Zmc2V0IjowLCJwYXJlbnRVaWQiOjEyNzA2NzY2Nzk1NDY3MDQsInN0YXJ0VGltZSI6MTY0MTQ1NDYzNjExMiwic3RlcCI6LTEsInRpbWVvdXQiOjEyMCwid2luZG93Ijo2MH0***\\",\\n \\"Length\\": 1000,\\n \\"Anchor\\": 1678781819000,\\n \\"HasNext\\": true,\\n \\"DataResults\\": [\\n {\\n \\"Namespace\\": \\"\\",\\n \\"Metric\\": \\"\\",\\n \\"Period\\": 0,\\n \\"Timestamp\\": 0,\\n \\"Dimensions\\": [\\n {\\n \\"Label\\": \\"\\",\\n \\"Value\\": \\"\\"\\n }\\n ],\\n \\"Associated\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"Measurements\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"LogTime\\": 0\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<BatchExportResponse>\\n <DataResults>\\n <Associated/>\\n <LogTime/>\\n <Dimensions>\\n <Value>1270676***********</Value>\\n <Label>userId</Label>\\n </Dimensions>\\n <Dimensions>\\n <Value>r-rj9f9s*********</Value>\\n <Label>instanceId</Label>\\n </Dimensions>\\n <Dimensions>\\n <Value>r-rj9f9s19lsu*******</Value>\\n <Label>nodeId</Label>\\n </Dimensions>\\n <Namespace>acs_kvstore</Namespace>\\n <Timestamp>1678781700000</Timestamp>\\n <Metric>SplitrwProxyMaxResponseSize</Metric>\\n <Period>60</Period>\\n <Measurements>\\n <Average>0.583</Average>\\n <Maximum>0.583</Maximum>\\n </Measurements>\\n </DataResults>\\n <RequestId>733A3B5A-F082-1092-B429-1208168FC07F</RequestId>\\n <Code>200</Code>\\n <Length>10</Length>\\n <Message>success</Message>\\n <Cursor>v2.5eyJiYXRjaGVzIjoxLCJidWNrZXRCeXRlcyI6IndBPT0iLCJidWNrZXRzIjo0LCJjdXJyZW50QnVja2V0IjotNjQsImN1cnJlbnRUYXJnZXRUaW1lU2xvdCI6MTY3ODc1MjAwMCwiZW5kVGltZSI6MTY3ODc4MjQxOTAwMCwiZXhwb3J0RW5kVGltZSI6MTY3ODc4MjQxOTAwMCwiZXhwb3J0U3RhcnRUaW1lIjoxNjc4NzgxODE5MDAwLCJleHByZXNzUmFuZ2UiOmZhbHNlLCJoYXNOZXh0Ijp0cnVlLCJpbmRleCI6MCwibGF0ZXN0TG9nVGltZSI6MCwibWF0Y2hlcnMiOnsiY2hhaW4iOlt7ImxhYmVsIjoidXNlcklkIiwib3BlcmF0b3IiOiJFUVVBTFMiLCJ2YWx1ZSI6IjEyNzA2NzY2Nzk1NDY3MDQifV0sImxvY2tlZCI6dHJ1ZX0sIm1ldHJpYyI6IlNwbGl0cndQcm94eU1heFJlc3BvbnNlU2l6ZSIsIm1ldHJpY1R5cGUiOiJNRVRSSUMiLCJuYW1lc3BhY2UiOiJhY3Nfa3ZzdG9yZV9leCIsIm5leHRQa0FkYXB0ZXIiOnsiZGltIjoiVjowXG5EOmB1c2VySWRgPTEyNzA2NzY2Nzk1NDY3MDQsYGluc3RhbmNlSWRgPXItcmo5ZjlzMTlsc3V1MXd1bnVyLGBub2RlSWRgPXItcmo5ZjlzMTlsc3V1MXd1bnVyLXByb3h5LTIsXG4iLCJtZXRhIjoiXG5WOjBcbk06YWNzX2t2c3RvcmVfZXgvU3BsaXRyd1Byb3h5TWF4UmVzcG9uc2VTaXplXG5XOjYwXG5COjRcbkk6LTFcblQ6MFxuQzpgQXZlcmFnZWAsYE1heGltdW1gLGBfX2NvdW50X19gLGBfX3RzX19gXG4iLCJyZCI6InN1YkFMU0RwWXY2K0t6aENQQUFBWkErNUFKMEpjbGErRGd2V0hFNWxDSHMvbGtqR2FXYTFJTkVwdFE9PSIsInRhZyI6IiJ9LCJvZmZzZXQiOjAsIm9mZnNldERpZ2l0Ijo0NTU0NTczNDQyMTc4NDIxMjIsInN0YXJ0VGltZSI6MTY3ODc4MTgxOTAwMCwic3RlcCI6LTEsInRhZ01hdGNoZXJzIjp7ImNoYWluIjpbXSwibG9ja2VkIjp0cnVlfSwidGFyZ2V0VGltZVNsb3RzIjpbMTY3ODY2NTYwMCwxNjc4NzUyMDAwXSwidXVpZCI6ImQwMmFhZmY1LWU3ZGQtNDUyYy04ZGMwLTZlY2QxZGVhZGY***************</Cursor>\\n <Success>true</Success>\\n <HasNext>true</HasNext>\\n <Anchor>1678781819000</Anchor>\\n</BatchExportResponse>","errorExample":""}]',
+ 'title' => 'BatchExport',
+ 'description' => '### [](#)Prerequisites'."\n"
+ ."\n"
+ .'The `Cursor` information is returned by calling the [Cursor](~~2330730~~) operation.'."\n"
+ ."\n"
+ .'### [](#)Description'."\n"
+ ."\n"
+ .'This topic provides an example on how to export the monitoring data of the `cpu_idle` metric for Elastic Compute Service (ECS). The namespace of ECS is `acs_ecs_dashboard`. The `Cursor` information is specified. A maximum of 1,000 data entries can be returned in each response.'."\n",
+ 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~199331~~).'."\n",
+ ],
+ 'DescribeSyntheticProbeList' => [
+ 'summary' => 'Queries detection points.',
+ 'path' => '',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'City',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'Ipv4',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'Ipv6',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'ViewAll',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'MbProbe',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'LmProbe',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'IdcProbe',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'title' => 'Id of the request',
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'IspCityList' => [
+ 'description' => 'The queried detection points.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The queried detection point.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'AreaCn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'AreaEn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'Huabei',
+ ],
+ 'City' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '738',
+ ],
+ 'CityCn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'CityEn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'Beijing',
+ ],
+ 'Country' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '629',
+ ],
+ 'CountryCn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'CountryEn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'China',
+ ],
+ 'IpPool' => [
+ 'description' => 'The IP addresses of the monitored nodes.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The IP address of the node.'."\n",
+ 'type' => 'string',
+ 'example' => '1.1.1.1',
+ ],
+ ],
+ 'Isp' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '232',
+ ],
+ 'IspCn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'IspEn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'China-Unicom',
+ ],
+ 'LmProbeCount' => [
+ 'description' => '',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'MbProbeCount' => [
+ 'description' => '',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Region' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '264',
+ ],
+ 'RegionCn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '',
+ ],
+ 'RegionEn' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'Jiangxi',
+ ],
+ 'IdcV4ProbeCount' => [
+ 'description' => '',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'IdcV6ProbeCount' => [
+ 'description' => 'The number of IPv6 nodes in data centers.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ 'Message' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'The specified resource is not found.',
+ ],
+ 'RequestId' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '87170bc7-e28a-4c93-b9bf-90a1dbe84736',
+ ],
+ 'Success' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameterValue',
+ 'errorMessage' => 'Illegal parameters.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'AccessDeniedException',
+ 'errorMessage' => 'You donot have sufficient access to perform this action.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'LimitExceeded',
+ 'errorMessage' => 'The quota for this customer had been reached.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'Forbidden',
+ 'errorMessage' => 'You are not authorized to operate the specified resource.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'ExceedingQuota',
+ 'errorMessage' => 'Exceeding quota limits.',
+ ],
+ ],
+ 429 => [
+ [
+ 'errorCode' => 'ThrottlingException',
+ 'errorMessage' => 'The request was denied due to request throttling.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalUnknownError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"IspCityList\\": [\\n {\\n \\"AreaCn\\": \\"华北\\",\\n \\"AreaEn\\": \\"Huabei\\",\\n \\"City\\": \\"738\\",\\n \\"CityCn\\": \\"北京\\",\\n \\"CityEn\\": \\"Beijing\\",\\n \\"Country\\": \\"629\\",\\n \\"CountryCn\\": \\"中国\\",\\n \\"CountryEn\\": \\"China\\",\\n \\"IpPool\\": [\\n \\"1.1.1.1\\"\\n ],\\n \\"Isp\\": \\"232\\",\\n \\"IspCn\\": \\"联通\\",\\n \\"IspEn\\": \\"China-Unicom\\",\\n \\"LmProbeCount\\": 1,\\n \\"MbProbeCount\\": 1,\\n \\"Region\\": \\"264\\",\\n \\"RegionCn\\": \\"江西省\\",\\n \\"RegionEn\\": \\"Jiangxi\\",\\n \\"IdcV4ProbeCount\\": 1,\\n \\"IdcV6ProbeCount\\": 1\\n }\\n ],\\n \\"Message\\": \\"The specified resource is not found.\\",\\n \\"RequestId\\": \\"87170bc7-e28a-4c93-b9bf-90a1dbe84736\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ 'title' => 'DescribeSyntheticProbeList',
+ ],
+ ],
+ 'endpoints' => [
+ [
+ 'regionId' => 'cn-qingdao',
+ 'endpoint' => 'cms.cn-qingdao.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-beijing',
+ 'endpoint' => 'cms.cn-beijing.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-zhangjiakou',
+ 'endpoint' => 'cms.cn-zhangjiakou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-zhengzhou-jva',
+ 'endpoint' => 'metrics.cn-zhengzhou-jva.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-huhehaote',
+ 'endpoint' => 'metrics.cn-huhehaote.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-wulanchabu',
+ 'endpoint' => 'metrics.cn-wulanchabu.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hangzhou',
+ 'endpoint' => 'metrics.cn-hangzhou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shanghai',
+ 'endpoint' => 'metrics.cn-shanghai.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-nanjing',
+ 'endpoint' => 'metrics.cn-nanjing.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-fuzhou',
+ 'endpoint' => 'metrics.cn-fuzhou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shenzhen',
+ 'endpoint' => 'metrics.cn-shenzhen.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-heyuan',
+ 'endpoint' => 'metrics.cn-heyuan.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-guangzhou',
+ 'endpoint' => 'metrics.cn-guangzhou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-chengdu',
+ 'endpoint' => 'metrics.cn-chengdu.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-wuhan-lr',
+ 'endpoint' => 'metrics.cn-wuhan-lr.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hongkong',
+ 'endpoint' => 'metrics.cn-hongkong.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-northeast-1',
+ 'endpoint' => 'metrics.ap-northeast-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-northeast-2',
+ 'endpoint' => 'metrics.ap-northeast-2.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-1',
+ 'endpoint' => 'metrics.ap-southeast-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-2',
+ 'endpoint' => 'metrics.ap-southeast-2.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-3',
+ 'endpoint' => 'metrics.ap-southeast-3.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-5',
+ 'endpoint' => 'cms.ap-southeast-5.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-6',
+ 'endpoint' => 'metrics.ap-southeast-6.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-7',
+ 'endpoint' => 'metrics.ap-southeast-7.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-zhongwei',
+ 'endpoint' => 'metrics.cn-zhongwei.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-east-1',
+ 'endpoint' => 'metrics.us-east-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-west-1',
+ 'endpoint' => 'metrics.us-west-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'eu-west-1',
+ 'endpoint' => 'metrics.eu-west-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'eu-central-1',
+ 'endpoint' => 'metrics.eu-central-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'na-south-1',
+ 'endpoint' => 'metrics.na-south-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-southeast-1',
+ 'endpoint' => 'metrics.us-southeast-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-south-1',
+ 'endpoint' => 'metrics.ap-south-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'me-east-1',
+ 'endpoint' => 'metrics.me-east-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'me-central-1',
+ 'endpoint' => 'metrics.me-central-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hangzhou-finance',
+ 'endpoint' => 'cms.cn-hangzhou-finance.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shanghai-finance-1',
+ 'endpoint' => 'metrics.cn-shanghai-finance-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shenzhen-finance-1',
+ 'endpoint' => 'metrics.cn-shenzhen-finance-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-beijing-finance-1',
+ 'endpoint' => 'metrics.cn-beijing-finance-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-heyuan-acdr-1',
+ 'endpoint' => 'metrics.cn-heyuan-acdr-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-north-2-gov-1',
+ 'endpoint' => 'metrics.cn-north-2-gov-1.aliyuncs.com',
+ ],
+ ],
+];