diff options
| author | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
|---|---|---|
| committer | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
| commit | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch) | |
| tree | 0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/en_us/arms/2019-08-08 | |
| download | acs-metadata-full-main.tar.gz acs-metadata-full-main.zip | |
first commitHEADv1.0.0+20260212main
Diffstat (limited to 'data/en_us/arms/2019-08-08')
| -rw-r--r-- | data/en_us/arms/2019-08-08/api-docs.php | 51004 |
1 files changed, 51004 insertions, 0 deletions
diff --git a/data/en_us/arms/2019-08-08/api-docs.php b/data/en_us/arms/2019-08-08/api-docs.php new file mode 100644 index 0000000..ae52d48 --- /dev/null +++ b/data/en_us/arms/2019-08-08/api-docs.php @@ -0,0 +1,51004 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'V3', + 'product' => 'ARMS', + 'version' => '2019-08-08', + ], + 'directories' => [ + [ + 'id' => 170580, + 'title' => 'Monitoring Metrics', + 'type' => 'directory', + 'children' => [ + 'QueryMetricByPage', + ], + ], + [ + 'id' => 128346, + 'title' => 'Application Monitoring', + 'type' => 'directory', + 'children' => [ + 'GetTraceApp', + 'GetAppJVMConfig', + 'QueryAppTopology', + 'GetAppApiByPage', + 'GetTrace', + 'GetStack', + 'GetMultipleTrace', + 'ConfigApp', + 'SaveTraceAppConfig', + 'GetTraceAppConfig', + 'DeleteTraceApp', + 'QueryReleaseMetric', + 'ListTraceApps', + 'SearchTraceAppByName', + 'SearchTraceAppByPage', + 'SearchTraces', + 'SearchTracesByPage', + 'GetAgentDownloadUrlV2', + 'GetAgentDownloadUrl', + 'DescribeTraceLicenseKey', + 'ListInsightsEvents', + 'QueryAppMetadata', + 'DeleteAppList', + 'DoInsightsAction', + ], + ], + [ + 'id' => 128359, + 'title' => 'Browser Monitoring', + 'type' => 'directory', + 'children' => [ + 'Upload', + 'DeleteSourceMap', + 'GetSourceMapInfo', + 'CreateRetcodeApp', + 'GetRetcodeShareUrl', + 'DeleteRetcodeApp', + 'SetRetcodeShareStatus', + 'ListRetcodeApps', + 'SearchRetcodeAppByPage', + 'GetRetcodeLogstore', + 'GetRetcodeDataByQuery', + 'GetRetcodeAppByPid', + ], + ], + [ + 'id' => 191976, + 'title' => 'User Experience Monitoring', + 'type' => 'directory', + 'children' => [ + 'UpdateRumFileStatus', + 'GetRumUploadFiles', + 'GetRumDataForPage', + 'CreateRumUploadFileUrl', + 'DeleteRumUploadFile', + 'GetRumAppInfo', + 'GetRumApps', + 'CreateRumApp', + 'DeleteRumApp', + 'UpdateRumApp', + 'GetRumExceptionStack', + ], + ], + [ + 'id' => 128367, + 'title' => 'Managed Service for Prometheus', + 'type' => 'directory', + 'children' => [ + 'DescribeEnvDropMetricsRule', + 'UpdateEnvDropMetricsRule', + 'AddTagToFlinkCluster', + 'CreateEnvironment', + 'InitEnvironment', + 'DescribeEnvironment', + 'UpdateEnvironment', + 'ListEnvironments', + 'DeleteEnvironment', + 'DescribeAddonMetrics', + 'InstallEnvironmentFeature', + 'DescribeEnvironmentFeature', + 'UpgradeEnvironmentFeature', + 'RestartEnvironmentFeature', + 'ListEnvironmentFeatures', + 'DeleteEnvironmentFeature', + 'CreateEnvCustomJob', + 'UpdateEnvCustomJob', + 'ListEnvCustomJobs', + 'DescribeEnvCustomJob', + 'DeleteEnvCustomJob', + 'CreateEnvPodMonitor', + 'DescribeEnvPodMonitor', + 'ListEnvPodMonitors', + 'UpdateEnvPodMonitor', + 'DeleteEnvPodMonitor', + 'CreateEnvServiceMonitor', + 'DescribeEnvServiceMonitor', + 'ListEnvServiceMonitors', + 'UpdateEnvServiceMonitor', + 'DeleteEnvServiceMonitor', + 'InstallAddon', + 'DescribeAddonRelease', + 'ListAddons', + 'UpgradeAddonRelease', + 'ListAddonReleases', + 'DeleteAddonRelease', + 'ListEnvironmentDashboards', + 'EnableMetric', + 'UpdateMetricDrop', + 'UpdatePrometheusMonitoringStatus', + 'UpdatePrometheusMonitoring', + 'ListPrometheusMonitoring', + 'GetPrometheusMonitoring', + 'DeletePrometheusMonitoring', + 'CreatePrometheusMonitoring', + 'AppendInstancesToPrometheusGlobalView', + 'AddPrometheusInstance', + 'AddPrometheusGlobalViewByAliClusterIds', + 'AddPrometheusGlobalView', + 'AddAliClusterIdsToPrometheusGlobalView', + 'AddRecordingRule', + 'SyncRecordingRules', + 'AddIntegration', + 'GetIntegrationState', + 'DeleteIntegration', + 'AddGrafana', + 'InstallCmsExporter', + 'OpenVCluster', + 'DeletePrometheusGlobalView', + 'RemoveAliClusterIdsFromPrometheusGlobalView', + 'RemoveSourcesFromPrometheusGlobalView', + 'DeleteCmsExporter', + 'DelAuthToken', + 'DeleteGrafanaResource', + 'UninstallPromCluster', + 'QueryPromInstallStatus', + 'ListPrometheusGlobalView', + 'GetPrometheusGlobalView', + 'CheckServiceStatus', + 'GetPrometheusApiToken', + 'GetExploreUrl', + 'ListDashboards', + 'ListClusterFromGrafana', + 'GetRecordingRule', + 'ListCmsInstances', + 'ListDashboardsByName', + 'GetAuthToken', + 'GetClusterAllUrl', + 'GetCloudClusterAllUrl', + 'ListPrometheusInstances', + 'InstallManagedPrometheus', + 'UninstallManagedPrometheus', + 'GetManagedPrometheusStatus', + 'BindPrometheusGrafanaInstance', + 'AddPrometheusIntegration', + 'UpdatePrometheusIntegration', + 'DeletePrometheusIntegration', + 'GetPrometheusIntegration', + 'ListPrometheusIntegration', + 'GetPrometheusInstance', + 'ListPrometheusInstanceByTagAndResourceGroupId', + 'CreatePrometheusInstance', + 'UpdatePrometheusInstance', + 'UpdatePrometheusGlobalView', + 'ListEnvironmentKubeResources', + 'ListEnvironmentMetricTargets', + 'ListEnvironmentAddons', + 'ListEnvironmentAlertRules', + ], + ], + [ + 'id' => 186945, + 'title' => 'Managed Service for Grafana', + 'type' => 'directory', + 'children' => [ + 'ListGrafanaWorkspace', + 'GetGrafanaWorkspace', + 'CreateGrafanaWorkspace', + 'UpdateGrafanaWorkspace', + 'UpdateGrafanaWorkspaceVersion', + 'DeleteGrafanaWorkspace', + ], + ], + [ + 'id' => 128330, + 'title' => 'Business Monitoring', + 'type' => 'directory', + 'children' => [ + 'ApplyScenario', + 'DeleteScenario', + 'ListScenario', + ], + ], + [ + 'id' => 184789, + 'title' => 'Synthetic Monitoring (New)', + 'type' => 'directory', + 'children' => [ + 'CreateTimingSyntheticTask', + 'UpdateTimingSyntheticTask', + 'StopTimingSyntheticTask', + 'StartTimingSyntheticTask', + 'DeleteTimingSyntheticTask', + 'GetSyntheticMonitors', + 'ListTimingSyntheticTasks', + 'GetTimingSyntheticTask', + 'ListSyntheticDetail', + ], + ], + [ + 'id' => 169864, + 'title' => 'Synthetic Monitoring (Old)', + 'type' => 'directory', + 'children' => [ + 'CreateSyntheticTask', + 'GetSyntheticTaskMonitors', + 'SwitchSyntheticTaskStatus', + 'GetSyntheticTaskList', + 'GetSyntheticTaskDetail', + 'DeleteSyntheticTask', + ], + ], + [ + 'id' => 128391, + 'title' => 'Alert Management', + 'type' => 'directory', + 'children' => [ + 'CreateIntegration', + 'UpdateIntegration', + 'DeleteIntegrations', + 'ListIntegration', + 'CreateOrUpdateAlertRule', + 'DeleteAlertRule', + 'ListAlertEvents', + 'GetAlertRules', + 'CreateOrUpdateContact', + 'SendTTSVerifyLink', + 'DeleteContact', + 'DescribeContacts', + 'CreateOrUpdateContactGroup', + 'DeleteContactGroup', + 'DescribeContactGroups', + 'CreateOrUpdateIMRobot', + 'DeleteIMRobot', + 'DescribeIMRobots', + 'CreateOrUpdateWebhookContact', + 'DeleteWebhookContact', + 'DescribeWebhookContacts', + 'CreateOrUpdateEventBridgeIntegration', + 'DeleteEventBridgeIntegration', + 'ListEventBridgeIntegrations', + 'CreateOrUpdateNotificationPolicy', + 'DeleteNotificationPolicy', + 'ListNotificationPolicies', + 'CreateOrUpdateSilencePolicy', + 'DeleteSilencePolicy', + 'ListEscalationPolicies', + 'ListOnCallSchedules', + 'GetOnCallSchedulesDetail', + 'ListSilencePolicies', + 'ListAlerts', + 'BlockAlarmNotification', + 'ChangeAlarmSeverity', + 'CloseAlarm', + 'ClaimAlarm', + ], + ], + [ + 'id' => 128334, + 'title' => 'Prometheus Alerts (Outdated)', + 'type' => 'directory', + 'children' => [ + 'CreatePrometheusAlertRule', + 'DeletePrometheusAlertRule', + 'UpdatePrometheusAlertRule', + 'DescribePrometheusAlertRule', + 'ListPrometheusAlertRules', + 'ListPrometheusAlertTemplates', + ], + ], + [ + 'id' => 128374, + 'title' => 'Alerts (Outdated)', + 'type' => 'directory', + 'children' => [ + 'CreateAlertContact', + 'CreateWebhook', + 'CreateAlertContactGroup', + 'CreateDispatchRule', + 'ListActivatedAlerts', + 'ImportAppAlertRules', + 'DeleteAlertRules', + 'DeleteAlertContact', + 'DeleteAlertContactGroup', + 'DeleteDispatchRule', + 'UpdateWebhook', + 'UpdateAlertContact', + 'UpdateAlertContactGroup', + 'UpdateAlertRule', + 'StartAlert', + 'StopAlert', + 'UpdateDispatchRule', + 'SearchAlertRules', + 'SearchAlertContact', + 'SearchAlertContactGroup', + 'SearchAlertHistories', + 'SearchEvents', + 'DescribeDispatchRule', + 'ListDispatchRule', + ], + ], + [ + 'id' => 128327, + 'title' => 'Service Activation', + 'type' => 'directory', + 'children' => [ + 'OpenArmsServiceSecondVersion', + 'OpenXtraceDefaultSLR', + 'OpenArmsDefaultSLR', + 'ChangeResourceGroup', + 'TagResources', + 'UntagResources', + ], + ], + [ + 'id' => 187814, + 'title' => 'Billing', + 'type' => 'directory', + 'children' => [ + 'GetCommercialStatus', + 'CheckCommercialStatus', + 'QueryCommercialUsage', + 'GetRumOcuStatisticData', + ], + ], + ], + 'components' => [ + 'schemas' => [ + 'GrafanaWorkspace' => [ + 'title' => 'grafana', + 'description' => 'The information about the Grafana workspace.'."\n", + 'visibility' => 'public', + 'type' => 'object', + 'properties' => [ + 'status' => [ + 'title' => '', + 'description' => 'The status of the workspace.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'- StartFailed:The workspace failed to be started'."\n" + ."\n" + .'- Stop:The workspace is stopped'."\n" + ."\n" + .'- Starting:The workspace is being started'."\n" + ."\n" + .'- DeleteFailed:The workspace failed to be deleted'."\n" + ."\n" + .'- Running:The workspace is running'."\n" + ."\n" + .'- DeleteSucceed:The workspace is deleted', + 'visibility' => 'public', + 'type' => 'string', + 'enumValueTitles' => [ + 'StartFailed' => '', + 'Stop' => '', + 'Starting' => '', + 'DeleteFailed' => '', + 'Running' => '', + 'DeleteSucceed' => '', + ], + 'example' => 'Starting、Running、Stop、DeleteSucceed', + 'backendName' => 'status', + ], + 'description' => [ + 'title' => '', + 'description' => 'The description.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'Grafana for Production ', + 'backendName' => 'description', + ], + 'grafanaWorkspaceEdition' => [ + 'title' => '', + 'description' => 'The version.'."\n" + ."\n" + .'Valid values:'."\n" + .'- standard:Standard Edition'."\n" + ."\n" + .'- personal_deition:Developer Edition'."\n" + ."\n" + .'- experts_edition:Expert Edition'."\n" + ."\n" + .'- advanced_edition:Advanced Edition', + 'visibility' => 'public', + 'type' => 'string', + 'enumValueTitles' => [ + 'standard' => '', + 'personal_edition' => '', + 'experts_edition' => '', + 'advanced_edition' => '', + ], + 'example' => 'personal_edition、experts_edition、advanced_edition、standard', + 'backendName' => 'instanceEdition', + ], + 'endTime' => [ + 'title' => '', + 'description' => 'The time when the workspace expires.'."\n", + 'visibility' => 'public', + 'type' => 'number', + 'format' => 'float', + 'example' => '1652803200000', + 'backendName' => 'endTime', + ], + 'grafanaWorkspaceId' => [ + 'title' => '', + 'description' => 'The ID of the workspace.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'grafana-cn-4xl3g******', + 'backendName' => 'instanceId', + ], + 'upgradeVersion' => [ + 'title' => '', + 'description' => 'The versions that are available for upgrades.'."\n", + 'visibility' => 'public', + 'type' => 'array', + 'items' => [ + 'description' => 'The version to which you want to upgrade.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => '9.0.x', + 'extendType' => 'true', + ], + 'backendName' => 'upgradeVersion', + ], + 'grafanaWorkspaceIp' => [ + 'title' => '', + 'description' => 'The public IP address and port number.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => '47.110.71.***:443', + 'backendName' => 'instanceIp', + ], + 'snatIp' => [ + 'title' => '', + 'description' => 'The outbound IP address.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => '47.110.71.***', + 'backendName' => 'snatIp', + ], + 'grafanaWorkspaceDomain' => [ + 'title' => '', + 'description' => 'The domain name of the workspace.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'my-grafana.grafana.aliyuncs.com:443', + 'backendName' => 'instanceDomain', + ], + 'grafanaWorkspaceDomainStatus' => [ + 'title' => '工作区域名状态', + 'description' => 'status of workspace domain', + 'visibility' => 'Public', + 'type' => 'string', + 'example' => 'on', + 'backendName' => 'instanceDomainStatus', + ], + 'commercial' => [ + 'title' => '', + 'description' => 'Indicates whether the workspace is commercialized.'."\n", + 'visibility' => 'public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'commercial', + ], + 'grafanaWorkspaceName' => [ + 'title' => '', + 'description' => 'The workspace name.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'Grafana for Production', + 'backendName' => 'instanceName', + ], + 'grafanaVersion' => [ + 'title' => '', + 'description' => 'The version number of Grafana.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 8.2.x'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* 10.0.x'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* 9.0.x'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'enumValueTitles' => [ + '8.2.x' => '8.2.x', + '10.0.x' => '10.0.x', + '9.0.x' => '9.0.x', + ], + 'example' => '9.0.x', + 'backendName' => 'grafanaVersion', + ], + 'gmtCreate' => [ + 'title' => '1642079398000', + 'description' => 'The time when the workspace was created.'."\n", + 'visibility' => 'public', + 'type' => 'number', + 'format' => 'float', + 'example' => '1642079398000', + 'backendName' => 'gmtCreate', + ], + 'userId' => [ + 'title' => '', + 'description' => 'The user ID.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => '1412143830******', + 'backendName' => 'userId', + ], + 'maxAccount' => [ + 'title' => '', + 'description' => 'The maximum number of accounts.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => '10', + 'backendName' => 'maxAccount', + ], + 'regionId' => [ + 'title' => '', + 'description' => 'The region ID of the disk.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'cn-hangzhou', + 'backendName' => 'regionId', + ], + 'protocol' => [ + 'title' => '', + 'description' => 'The protocol type.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'http、https', + 'backendName' => 'protocol', + ], + 'shareSynced' => [ + 'title' => '', + 'description' => 'Indicates whether the migration guide for the shared edition is provided.'."\n", + 'visibility' => 'public', + 'type' => 'boolean', + 'example' => 'true', + 'backendName' => 'shareSynced', + ], + 'ntmId' => [ + 'title' => '', + 'description' => 'The ID of the purchase order.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'grafana-cn-4xl3g******', + 'backendName' => 'ntmId', + ], + 'personalDomain' => [ + 'title' => '', + 'description' => 'The personalized domain name.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'my-grafana.grafana.aliyuncs.com:443', + 'backendName' => 'personalDomain', + ], + 'personalDomainPrefix' => [ + 'title' => '', + 'description' => 'The prefix of the personalized domain name.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'my-grafana', + 'backendName' => 'personalDomainPrefix', + ], + 'resourceGroupId' => [ + 'title' => '', + 'description' => 'The resource group ID.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'rg-aek2f4vzrfs6cla', + 'backendName' => 'resourceGroupId', + ], + 'deployType' => [ + 'title' => '', + 'description' => 'The deployment mode of Grafana. You can ignore this parameter.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'asi', + 'backendName' => 'deployType', + ], + 'tags' => [ + 'title' => '', + 'description' => 'The tags.'."\n", + 'visibility' => 'public', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'visibility' => 'public', + 'type' => 'object', + 'properties' => [ + 'key' => [ + 'title' => '', + 'description' => 'The tag key.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'TestKey', + 'backendName' => 'key', + ], + 'value' => [ + 'title' => '', + 'description' => 'The tag value.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'TestValue', + 'backendName' => 'value', + ], + ], + 'extendType' => 'true', + ], + 'backendName' => 'tags', + ], + 'privateIp' => [ + 'title' => '', + 'description' => 'The private IP address and port number.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => '192.168.1.1'."\n", + 'backendName' => 'privateIp', + ], + 'privateDomain' => [ + 'title' => '', + 'description' => 'The private domain name of the workspace.'."\n", + 'visibility' => 'public', + 'type' => 'string', + 'example' => 'my-grafana.grafana.aliyuncs.com:80', + 'backendName' => 'privateDomain', + ], + ], + ], + ], + ], + 'apis' => [ + 'QueryMetricByPage' => [ + 'summary' => 'Queries an Application Monitoring metric or a Browser Monitoring metric.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'IntervalInSec', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time interval at which you want to query metric data. Unit: milliseconds. Minimum value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => true, + 'maximum' => '2147483647', + 'minimum' => '0', + 'example' => '100000', + 'default' => '2147483647', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'maximum' => '9223372036854775806', + 'minimum' => '0', + 'example' => '1667287695000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'maximum' => '9223372036854775806', + 'minimum' => '0', + 'example' => '1667546895000', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The dimension for arranging metrics in sequence. For more information, see the supplementary metrics.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pid', + ], + ], + [ + 'name' => 'Metric', + 'in' => 'query', + 'schema' => [ + 'description' => 'The metric that you want to query. You cannot specify a custom metric. For more information, see the "Application monitoring metrics that can be queried" section.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'appstat.host', + ], + ], + [ + 'name' => 'Order', + 'in' => 'query', + 'schema' => [ + 'description' => 'The order in which measures are sorted. Valid values:'."\n" + ."\n" + .'* `ASC`: ascending order'."\n" + .'* `DESC`: descending order'."\n" + ."\n" + .'> If you do not specify the parameter, data is not sorted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ASC', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: `1`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2147483647', + 'minimum' => '1', + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter is no longer supported. The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2147483647', + 'minimum' => '1', + 'example' => '10', + 'default' => '10', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The filter conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the filter condition. You must set the key to `pid` or `regionId`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pid', + ], + 'Value' => [ + 'description' => 'The value of the filter condition. You must set the value of the `pid` or `regionId` condition. For information about how to obtain the `pid`, see the "Obtain the PID of an application" section.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'xxx@74xxx', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 15, + ], + ], + [ + 'name' => 'Dimensions', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The dimensions of the metric that you want to query.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The dimensions of the metric that you want to query. For more information, see the "Application monitoring metrics that can be queried" section. You can specify a maximum of five dimensions.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pid', + ], + 'required' => false, + 'example' => '["detector_browser","detector_device"]', + 'maxItems' => 15, + ], + ], + [ + 'name' => 'Measures', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The measures of the metric that you want to query.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The measures of the metric that you want to query. For more information, see the "Application monitoring metrics that can be queried" section. You can specify a maximum of five measures.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'instanceCount', + ], + 'required' => false, + 'example' => 'pv', + 'maxItems' => 15, + ], + ], + [ + 'name' => 'CustomFilters', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'Custom filter conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Custom filter conditions. Separate multiple filter conditions with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '["not rpcType:40","not rpcType:41"]', + ], + 'required' => false, + 'maxItems' => 5, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned for the request. Valid values:'."\n" + ."\n" + .'* 2XX: The request was successful.'."\n" + .'* 3XX: A redirection message was returned.'."\n" + .'* 4XX: The request was invalid.'."\n" + .'* 5XX: A server error occurred.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message returned if the call fails.'."\n", + 'type' => 'string', + 'example' => 'StartTime is mandatory for this action.', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '687F9CB7-4798-57BF-A6EE-E6CC76******', + ], + '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', + ], + 'Data' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'Page' => [ + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Completed' => [ + 'description' => 'Whether the paging query ends.'."\n" + ."\n" + .'true: end.'."\n" + .'false: Need to continue pagination (continue to query after CurrentPage+1).', + 'type' => 'boolean', + 'example' => 'false', + ], + 'Items' => [ + 'description' => 'The data entries returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data entries returned.'."\n", + 'type' => 'object', + 'example' => '[]', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMetricIllegal', + 'errorMessage' => 'The specified metric is invalid.', + ], + [ + 'errorCode' => 'ParameterMeasuresIllegal', + 'errorMessage' => 'The specified Measures is invalid.', + ], + [ + 'errorCode' => 'ParameterTimeStampIllegal', + 'errorMessage' => 'The specified timeStamp is invalid.', + ], + [ + 'errorCode' => 'ParameterOrderIllegal', + 'errorMessage' => 'The specified order is invalid.', + ], + [ + 'errorCode' => 'ParameterZeroStrategyIllegal', + 'errorMessage' => 'The specified zeroStrategy is invalid.', + ], + [ + 'errorCode' => 'ParameterPageSizeIllegal', + 'errorMessage' => 'The specified PageSize is invalid.', + ], + [ + 'errorCode' => 'ParameterIntervalIllegal', + 'errorMessage' => 'The specified interval is invalid.', + ], + [ + 'errorCode' => 'ParameterMeasuresMissing', + 'errorMessage' => 'You must specify measures.', + ], + [ + 'errorCode' => 'ParameterDimensionsIllegal', + 'errorMessage' => 'The specified dimensions is invalid.', + ], + [ + 'errorCode' => 'ParameterPidMissing', + 'errorMessage' => 'You must specify pid.', + ], + [ + 'errorCode' => 'ParameterRegionIdIllegal', + 'errorMessage' => 'The specified RegionId is invalid.', + ], + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => 'The specified region is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => 'The current user is not authorized to access the interface.', + ], + ], + [ + [ + 'errorCode' => 'AppNotExist', + 'errorMessage' => 'The application does not exist.', + ], + [ + 'errorCode' => 'RunningTaskNotExist', + 'errorMessage' => 'Application data collection task does not exist or has been stopped.', + ], + ], + 429 => [ + [ + 'errorCode' => 'OperationIsThrottled', + 'errorMessage' => 'The backend service cannot fully process the current request. The returned result may be incomplete. Adjust the operation conditions and try again.', + ], + ], + 452 => [ + [ + 'errorCode' => 'OperationTimeOut', + 'errorMessage' => 'The system timed out when processing the current request. The request may involve too many resources and the system cannot complete the processing within the limited time. Please adjust the relevant conditions and try again.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"StartTime is mandatory for this action.\\",\\n \\"RequestId\\": \\"687F9CB7-4798-57BF-A6EE-E6CC76******\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"PageSize\\": 1,\\n \\"Total\\": 2,\\n \\"Page\\": 1,\\n \\"Completed\\": false,\\n \\"Items\\": [\\n []\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<QueryMetricByPageResponse>\\n <Code>200</Code>\\n <Message>StartTime is mandatory for this action.</Message>\\n <RequestId>626037F5-FDEB-45B0-804C-B3C92797****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <PageSize>10</PageSize>\\n <Total>0</Total>\\n <Page>1</Page>\\n <Items/>\\n </Data>\\n</QueryMetricByPageResponse>","errorExample":""}]', + 'title' => 'QueryMetricByPage', + 'requestParamsDescription' => '## Obtain the PID of an application'."\n" + ."\n" + .'In the left-side navigation pane of the ARMS console, choose **Application Monitoring > Application List** or **Browser Monitoring > Browser Monitoring**. On the Application List or Browser Monitoring page, click the name of the application that you want to view.'."\n" + ."\n" + .'The URL in the address bar contains the **process ID (PID)** of the application. The PID is indicated in the `pid=xxx` format. The PID is usually percent encoded as `xxx%40xxx`. You must modify this value to remove the percent encoding. For example, if the PID in the URL is `eb4zdose6v%409781be0f44d****`, you must replace `%40` with an at sign (`@`) to obtain `eb4zdose6v@9781be0f44d****`.'."\n" + ."\n" + .'## Application Monitoring metrics supporting query'."\n" + ."\n" + .'**Note** You must set the **pid** and `regionId` filter conditions by specifying the `Filters` parameter. You must set all known filter conditions by specifying the **Filters** parameter to define the range of query results. If no filter conditions are known, you can specify one or more **dimensions** provided in the following table to narrow down the query range.'."\n" + ."\n" + .'|Metric|Description|Dimension|Measurement|'."\n" + .'|---|---|---|---|'."\n" + .'|appstat.vm|A collection of common metrics that are shown in the JVM monitoring chart on the application details page. These metrics are related to GCs, heap memory, non-heap memory, and threads.|\\- pid\\- rootIp|GC metrics:\\- youngGcCount: the number of GCs in the young generation\\- oldGcCount: the number of full heap GCs (full GCs)\\- youngGcTime: the amount of time consumed by GCs in the young generation\\- oldGcTime: the amount of time consumed by full GCs\\- youngGcCountInstant: the instantaneous value of the number of GCs in the young generation\\- oldGcCountInstant: the instantaneous value of the number of full GCs\\- youngGcTimeInstant: the instantaneous value of the amount of time consumed by GCs in the young generation\\- oldGcTimeInstant: the instantaneous value of the amount of time consumed by full GCs|'."\n" + .'|appstat.vm|A collection of common metrics that are shown in the JVM monitoring chart on the application details page. These metrics are related to garbage collections (GCs), heap memory, non-heap memory, and threads.|\\- pid\\- rootIp|Heap memory and non-heap memory:\\- edenSpace: the eden space in the young generation\\- oldGen: the old generation\\- survivorSpace: the survivor space in the young generation\\- metaSpace: the metaspace\\- nonHeapCommitted: the non-heap memory\\- nonHeapInit: the initial value of the non-heap memory\\- nonHeapMax: the maximum value of the non-heap memory\\- nonHeapUsed: the usage of the non-heap memory\\- directUsed: the amount of used direct buffer in the off-heap memory\\- directCapacity: the total amount of direct buffer in the off-heap memory|'."\n" + .'|appstat.vm|A collection of common metrics that are shown in the JVM monitoring chart on the application details page. These metrics are related to GCs, heap memory, non-heap memory, and threads.|\\- pid\\- rootIp|Number of threads:\\- threadCount: the total number of threads\\- threadNewCount: the number of new threads\\- threadDeadlockCount: the number of deadlocked threads in the JVM\\- threadRunnableCount: the number of runnable threads in the JVM\\- threadTerminatedCount: the number of terminated threads\\- threadTimedWaitCount: the number of threads in the timed\\_waiting state\\- threadWaitCount: the number of threads in the waiting state\\- threadBlockedCount: the number of blocked threads|'."\n" + .'|appstat.host|A collection of metrics for host monitoring. These metrics are related to instances, CPU, physical memory, disk, load, network traffic, and network packets.|\\- pid\\- rootIp|instanceCount: the number of instances|'."\n" + .'|appstat.host|A collection of metrics for host monitoring. These metrics are related to instances, CPU, physical memory, disk, load, network traffic, and network packets.|\\- pid\\- rootIp|CPU:\\- systemCpuIdle: the percentage of idle CPU in the last 5 seconds, which is not displayed in the ARMS console\\- systemCpuSystem: the CPU utilization of the system in the last 5 seconds\\- systemCpuUser: the percentage of CPU occupied by users in the last 5 seconds\\- systemCpuIoWait: the percentage of CPU consumed for I/O waiting in the last 5 seconds|'."\n" + .'|appstat.host|A collection of metrics for host monitoring. These metrics are related to instances, CPU, physical memory, disk, load, network traffic, and network packets.|\\- pid\\- rootIp|Physical memory:\\- systemMemFree: the amount of free memory (Unit: KB)\\- systemMemUsed: the amount of used memory (Unit: KB)\\- systemMemTotal: the total amount of memory, which is not displayed in the ARMS console (Unit: KB)\\- systemMemBuffers: the amount of memory in the buffer cache\\- systemMemCached: the amount of memory in the page cache|'."\n" + .'|appstat.host|A collection of metrics for host monitoring. These metrics are related to instances, CPU, physical memory, disk, load, network traffic, and network packets.|\\- pid\\- rootIp|Disk:\\- systemDiskFree: the size of free disk space in bytes\\- systemDiskUsedRatio: the usage of the disk space\\- SystemDiskTotal: the total size of disk space in bytes, which is not displayed in the ARMS console|'."\n" + .'|appstat.host|A collection of metrics for host monitoring. These metrics are related to instances, CPU, physical memory, disk, load, network traffic, and network packets.|\\- pid\\- rootIp|systemLoad: the load|'."\n" + .'|appstat.host|A collection of metrics for host monitoring. These metrics are related to instances, CPU, physical memory, disk, load, network traffic, and network packets.|\\- pid\\- rootIp|Network:\\- systemNetInPackets: the average number of packets received over the network per second in the last 30 seconds\\- systemNetOutPackets: the average number of packets sent over the network per second in the last 30 seconds\\- systemNetInErrs: the average number of frame errors received over the network per second in the last 30 seconds\\- systemNetOutErrs: the average number of errors sent over the network per second in the last 30 seconds\\- systemNetInBytes: the average number of bytes received over the network per second in the last 30 seconds\\- systemNetOutBytes: the average number of bytes sent over the network per second in the last 30 seconds|'."\n" + .'|appstat.database|A collection of metrics for database calls.|\\- pid\\- rpcType: the type of the call\\- endpoint: the database endpoint, which is localhost: 3306\\- destId: the database name, which is arms|\\- rt: the response time (Unit: milliseconds).\\- count: the number of requests.\\- error: the number of errors.\\- resultsize: This metric is available only for MySQL 5.x.\\- slowcount: the number of slow calls.|'."\n" + .'|appstat.incall|A collection of metrics related to application details.|\\- pid\\- rpcType\\- rootIp\\- rpc\\- ppid|\\- rt: the response time (Unit: milliseconds)\\- count: the number of requests\\- error: the number of errors\\- errorrate: the error rate\\- qps: the number of queries per second|'."\n" + .'|appstat.exception|A collection of metrics related to exceptions.|\\- pid\\- rpc\\- endpoint\\- excepType\\- excepInfo|\\- rt: the response time (Unit: milliseconds)\\- count: the number of requests\\- error: the number of errors|'."\n" + .'|appstat.sql|A collection of metrics related to slow SQL queries.|\\- pid\\- rpc\\- endpoint\\- sqlId|\\- rt: the response time (Unit: milliseconds).\\- count: the number of requests.\\- error: the number of errors.\\- slowcount: the number of slow calls.\\- resultsize: This metric is available only for MySQL 5.x.Note: If the value of the slow metric is true, the filter conditions do not take effect.|'."\n" + .'|appstat.mq.send|A collection of metrics related to message sending by using a message queue.|None|\\- rt: the response time (Unit: milliseconds)\\- count: the number of requests\\- error: error: the number of errors\\- delay: the scheduling delay (Unit: milliseconds)|'."\n" + .'|appstat.mq.receive|A collection of metrics related to message receiving by using a message queue.|None|\\- rt: the response time (Unit: milliseconds)\\- count: the number of requests\\- error: error: the number of errors\\- delay: the scheduling delay (Unit: milliseconds)|'."\n" + .'|appstat.schedulerx|A collection of metrics related to SchedulerX calls.|\\- pid\\- rpcType\\- rootIp\\- rpc|count: the number of requests|'."\n" + .'|appstat.elasticsearch|A collection of metrics related to Elasticsearch calls.|\\- rpc\\- endpoint\\- opType: the type of the operation, such as index and search operations. This dimension is supported only when elasticsearch-rest-high-level-client is used.|count: the number of requests|'."\n" + .'|appstat.redis|A collection of metrics related to ApsaraDB for Redis calls.|\\- pid\\- rpcType\\- endpoint\\- opType\\- rpc|count: the number of requests|'."\n" + .'|appstat.status|The number of requests with specified status codes. Only HTTP requests are supported.|\\- pid\\- rootIp\\- rpc|\\- 200: the number of requests with the 200 status code (abnormal)\\- 2xx: the number of requests with 2XX status codes (abnormal)\\- 3xx: the number of requests with 3XX status codes\\- 4xx: the number of requests with 4XX status codes (client errors)\\- 5xx: the number of requests with 5XX status codes (server errors)|'."\n" + ."\n" + .'## Browser Monitoring metrics supporting query'."\n" + ."\n" + .'You can call the QueryMetric operation to query the following metrics of Browser Monitoring.'."\n" + ."\n" + .'**Note** You must set the **pid** and `regionId` filter conditions by specifying the `Filters` parameter. You must set all known filter conditions by specifying the **Filters** parameter to define the range of query results. If no filter conditions are known, you can specify one or more **dimensions** provided in the following table to narrow down the query range.'."\n" + ."\n" + .'|Metric|Description|Dimension|Measurement|'."\n" + .'|---|---|---|---|'."\n" + .'|webstat.api|Success rate of API requests|\\- api: the URL of the API without request parameters\\- detector\\_app\\_version: the client version\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- release: the version number\\- sr: the screen resolution|\\- count: the number of requests\\- rate: the success rate of API requests\\- avg\\_time: the average response time|'."\n" + .'|webstat.api.detail|API details|\\- api: the URL of the API without request parameters\\- ct: the network connection type\\- detector\\_browser: the browser\\- detector\\_browser\\_version: the version of the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- detector\\_os\\_version: the version of the operating system\\- domain: the domain name\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_isp: the carrier\\- ip\\_region\\_id: the ID of the region\\- msg: the returned message\\- page: the URL of the page\\- sr: the screen resolution|\\- count: the number of requests\\- fail\\_count: the number of failed API requests\\- fail\\_time: the response time for failed API requests\\- fail\\_uv: the number of users affected by failures\\- success\\_count: the number of successful API requests\\- success\\_rate: the success rate\\- success\\_time: the response time for successful API requests|'."\n" + .'|webstat.apicost|Response time for successful API requests|\\- api: the URL of the API without request parameters\\- code: the returned status code\\- detector\\_app\\_version: the client version\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- release: the version number\\- sr: the screen resolution|\\- count: the number of successful API requests\\- avg\\_time: the average response time for successful API requests|'."\n" + .'|webstat.apifailtime|Response time for failed API requests|\\- api: the URL of the API without request parameters\\- code: the returned status code\\- detector\\_app\\_version: the client version\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- release: the version number\\- sr: the screen resolution|\\- count: the number of failed API requests\\- avg\\_time: the average response time for failed API requests|'."\n" + .'|webstat.apimsg|Classification and aggregation of API response messages|\\- code: the returned status code\\- detector\\_app\\_version: the client version\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- msg: the error message\\- release: the version number\\- sr: the screen resolution\\- success: The value 1 indicates that the request is successful and the value 0 indicates that the request has failed.|count: the number of requests|'."\n" + .'|webstat.avg|Custom statistics: average|\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- key: the custom key\\- sr: the screen resolution|\\- count: the total number of occurrences\\- pv: the number of page views\\- uv: the number of unique visitors\\- avg\\_val: the average value|'."\n" + .'|webstat.errcate|Error message ranking|\\- msg: the error message\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- sr: the screen resolution\\- release: the version number\\- environment: the environment\\- detector\\_app\\_version: the client version\\- detector\\_app: the client app|count: the number of errors|'."\n" + .'|webstat.index|Page view overview|\\- ct: the network connection type\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_isp: the carrier\\- ip\\_region\\_id: the ID of the region\\- page: the URL of the page\\- sr: the screen resolution|\\- pv: the number of page views\\- uv: the number of unique visitors|'."\n" + .'|webstat.msg.top|Frequent errors|\\- msg: the error message\\- page: the URL of the page|\\- count: the number of errors\\- error\\_uv: the number of affected users\\- Ratio of affected users: the ratio obtained by dividing affected users by total UVs|'."\n" + .'|webstat.perf.bucket|Performance Sample Distribution section on the **Page Speed** page in the ARMS console|\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- page: the URL of the page\\- sr: the screen resolution|\\- cfpt: the custom first paint time (FPT) of the page\\- ctti: the custom time to interact (TTI) of the page\\- dns: the amount of time consumed by DNS query\\- dom: the amount of time consumed by DOM parsing\\- fmp: the first meaningful paint (FMP) of the page\\- fpt: the FPT of the page\\- load: the amount of time consumed to completely load the page\\- ready: the time taken for the DOM to become ready\\- res: the amount of time consumed to load resources\\- ssl: the amount of time consumed to establish a Secure Sockets Layer (SSL) connection\\- t1\\\\~t10: the custom performance metrics\\- tcp: the amount of time consumed to establish a Transmission Control Protocol (TCP) connection\\- trans: the amount of time consumed to transfer the content of the page\\- ttfb: the time to first byte (TTFB)\\- tti: the TTI of the page|'."\n" + .'|webstat.perf.distribution|Performance Stacked Area Chart on the **Page Speed** page in the ARMS console|\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- page: the URL of the page\\- sr: the screen resolution|\\- cfpt: the custom FPT of the page\\- ctti: the custom TTI of the page\\- dns: the amount of time consumed by DNS query\\- dom: the amount of time consumed by DOM parsing\\- fmp: the FMP of the page\\- fpt: the FPT of the page\\- load: the amount of time consumed to completely load the page\\- ready: the time taken for the DOM to become ready\\- res: the amount of time consumed to load resources\\- ssl: the amount of time consumed to establish an SSL connection\\- t1\\\\~t10: the custom performance metrics\\- tcp: the amount of time consumed to establish a TCP connection\\- trans: the amount of time consumed to transfer the content of the page\\- ttfb: the TTFB\\- tti: the TTI of the page|'."\n" + .'|webstat.resource|Resource error ranking|\\- ct: the network connection type\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_isp: the carrier\\- ip\\_region\\_id: the ID of the region\\- node\\_name: the error type\\- page: the URL of the page\\- sr: the screen resolution\\- src: the resource information|count: the number of resource errors|'."\n" + .'|webstat.resource|Resource Error section on the **Overview** page in the ARMS console|\\- ct: the network connection type\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_isp: the carrier\\- ip\\_region\\_id: the ID of the region\\- node\\_name: the error type\\- page: the URL of the page\\- sr: the screen resolution\\- src: the resource information|count: the number of errors|'."\n" + .'|webstat.satisfy|Satisfaction|\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- page: the URL of the page\\- sr: the screen resolution|\\- bad: frustrated, indicating that the FPT is greater than 8,000\\- good: satisfied, indicating that the FPT is smaller than 2,000\\- neutral: tolerable, indicating that the FPT is between 2,000 and 8,000\\- satisfy: Application Performance Index (Apdex)|'."\n" + .'|webstat.session|Slow loading tracking|None|\\- browser\\_version: the browser version\\- browser: the browser\\- date: the start time of the data query\\- dom: the amount of time consumed by DOM parsing\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_country: the name of the country or area\\- ip\\_region\\_id: the ID of the region\\- ip\\_region: the name of the region\\- load: the amount of time consumed to completely load the page\\- page: the URL of the page\\- sid: the session ID|'."\n" + .'|webstat.speed|Access speed|\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- release: the version number\\- sr: the screen resolution\\- page: the URL of the page\\- environment: the environment|\\- avg\\_cfpt: the custom FPT of the page\\- count: the number of samples\\- avg\\_ctti: the custom TTI of the page\\- avg\\_dns: the amount of time consumed by DNS query\\- avg\\_dom: the amount of time consumed by DOM parsing\\- avg\\_fmp: the FMP of the page\\- avg\\_fpt: the FPT of the page\\- avg\\_load: the amount of time consumed to completely load the page\\- avg\\_ready: the average time taken for the DOM to become ready\\- avg\\_res: the amount of time consumed to load resources\\- avg\\_ssl: the amount of time consumed to establish an SSL connection\\- avg\\_t1\\\\~t10: the custom performance metrics\\- avg\\_tcp: the amount of time consumed to establish a TCP connection\\- avg\\_trans: the amount of time consumed to transfer the content of the page\\- avg\\_ttfb: the TTFB\\- avg\\_tti: the TTI of the page|'."\n" + .'|webstat.stable|Error rate ranking|\\- page: the URL of the page\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- sr: the screen resolution\\- msg: the error message\\- release: the version number\\- environment: the environment\\- detector\\_app\\_version: the client version\\- detector\\_app: the client app|\\- count: the number of samples\\- error\\_pv: the number of JS errors\\- rate: the JS error rate|'."\n" + .'|webstat.sum|Custom statistics: sum|\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- key: the custom key\\- sr: the screen resolution|\\- count: the total number of occurrences of specified events\\- pv: the number of page views\\- sum\\_val: the total value\\- uv: the number of unique visitors|'."\n" + .'|webstat.url|Access URL|\\- detector\\_browser: the browser\\- detector\\_device: the device\\- detector\\_os: the operating system\\- ip\\_country\\_id: the ID of the country or area\\- ip\\_region\\_id: the ID of the region\\- sr: the screen resolution\\- uid\\- username: the username|\\- pv: the number of page views\\- uv: the number of unique visitors|', + 'responseParamsDescription' => '**Sample response**'."\n" + ."\n" + .' {'."\n" + .' "RequestId": "687F9CB7-4798-57BF-A6EE-E6CC76******",'."\n" + .' "Data": {'."\n" + .' "PageSize": 1,'."\n" + .' "Total": 87,'."\n" + .' "Page": 1,'."\n" + .' "Items": ['."\n" + .' {'."\n" + .' "date": 1667287680000,'."\n" + .' "instanceCount": 17,'."\n" + .' "rule": "query1",'."\n" + .' "pid": "null"'."\n" + .' },'."\n" + .' {'."\n" + .' "date": 1667290680000,'."\n" + .' "instanceCount": 17,'."\n" + .' "rule": "query1",'."\n" + .' "pid": "null"'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "Code": 200,'."\n" + .' "Success": true'."\n" + .' }'."\n", + 'extraInfo' => '## Browser Monitoring FAQ'."\n" + ."\n" + .'* Why does an error about the RAM permissions occur when I call the API? This is because the RAM user does not have required permissions. You can grant the permissions to the RAM user. For more information, see [Use a RAM role to access resources across Alibaba Cloud accounts](~~74785~~).'."\n" + ."\n" + .'* How do I obtain a list of data entries without specifying a time interval? Set the intervalInSec parameter to 2147483647.'."\n" + ."\n" + .'* Why is 0 returned for all the queries?'."\n" + ."\n" + .' * Check whether the time interval that you set is too short. Make sure that the value of the intervalInSec parameter is greater than or equal to 60,000.'."\n" + ."\n" + .' * Check whether the value of the regionId parameter is valid. The value depends on the region where the server that receives logs resides, rather than the region where you reside. You can identify the region ID based on the URL of the log source.'."\n" + ."\n" + .' * URL of the log source in the China (Hangzhou) region: `https://arms-retcode.aliyuncs.com/r.png?`'."\n" + .' * URL of the log source in the Singapore region: `https://arms-retcode-sg.aliyuncs.com/r.png?`'."\n" + .' * URL of the log source in the US (Silicon Valley) region: `https://retcode-us-west-1.arms.aliyuncs.com/r.png?`'."\n" + ."\n" + .'* Why does an error occur when I call the simulator or an API?'."\n" + ."\n" + .' * Check whether the regionId parameter is specified and whether the pid parameter is specified by using the Filters parameter.'."\n" + .' * Check whether you have specified a valid value of the Measures or Dimensions parameter for the metric. For more information, see the **Browser Monitoring metrics that can be queried** section in this topic.'."\n" + ."\n" + .'* Error messages and solutions'."\n" + ."\n" + .' * **Query error. Contact the administrator.**'."\n" + ."\n" + .' * Check whether the value of the Metric parameter is valid.'."\n" + .' * Check whether the value of the Measures or Dimensions parameter is valid.'."\n" + .' * Check whether the pid parameter is specified by using the Filters parameter.'."\n" + ."\n" + .' * **InvalidIntervalInSec** Check whether the value of the intervalInSec parameter exceeds the maximum value 2,147,483,647.'."\n" + ."\n" + .' * **MissingMeasures** Check whether the Measures parameter is specified.'."\n" + ."\n" + .' * **NonsequenceParameter.Dimensions**'."\n" + ."\n" + .' * Check whether the value of the Dimensions parameter is valid.'."\n" + .' * Check whether the value of the Dimensions parameter contains extra spaces.'."\n" + ."\n" + .' * **ServiceUnavailable** Check whether the value of the regionId parameter is valid.'."\n" + ."\n" + .' * **Invalid Region** Check whether the value of the regionId parameter is valid. The value depends on the region where the server that receives logs resides, rather than the region where you reside. You can identify the region ID based on the URL of the log source.'."\n" + ."\n" + .' * URL of the log source in the China (Hangzhou) region: `https://arms-retcode.aliyuncs.com/r.png?`'."\n" + .' * URL of the log source in the Singapore region: `https://arms-retcode-sg.aliyuncs.com/r.png?`'."\n" + .' * URL of the log source in the US (Silicon Valley) region: `https://retcode-us-west-1.arms.aliyuncs.com/r.png?`'."\n" + ."\n" + .'* Why are some Measures or Dimensions parameters missing from my dataset? This happens because you can specify a maximum of five Measures or Dimensions parameters. If more than five parameters are specified, no data can be returned.'."\n" + ."\n" + .'* Why does the sum of some metrics significantly decrease after they are aggregated compared with when they were not aggregated? For example, when the values of the pv parameter for the webstat.index metric are aggregated, the sum of aggregated values is significantly less than the sum of all the individual values. The API gateway admits a maximum of 10,000 data entries at a time. Additional data entries are discarded. When you attempt to aggregate more than 10,000 data entries, only the first 10,000 data entries are aggregated and the rest are discarded. This causes the aggregated result to be far less than the result of individually adding all the values. You must make sure that no more than 10,000 data entries are returned for each request. This ensures that you can obtain an accurate aggregated value.'."\n", + ], + 'GetTraceApp' => [ + 'summary' => 'Queries the details of an application monitoring task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application. For more information about how to obtain the PID, see [Obtain the PID of an application](https://www.alibabacloud.com/help/zh/doc-detail/186100.htm?spm=a2cdw.13409063.0.0.7a72281f0bkTfx#title-imy-7gj-qhr).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'b590lhguqs@d8deedfa9bf****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'D80ADAAC-8C32-5479-BD14-C28CF832****', + ], + 'TraceApp' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the monitoring task. Valid values:'."\n" + ."\n" + .'* `TRACE`: Application Monitoring'."\n" + .'* `RETCODE`: Browser Monitoring'."\n", + 'type' => 'string', + 'example' => 'TRACE', + ], + 'AppName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'arms-k8s-demo', + ], + 'UpdateTime' => [ + 'description' => 'The timestamp generated when the task information was updated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1635700348000', + ], + 'Show' => [ + 'description' => 'Indicates whether the application is displayed in the Application Real-Time Monitoring Service (ARMS) console. Valid values:'."\n" + ."\n" + .'* `true`: yes'."\n" + .'* `false`: no'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'CreateTime' => [ + 'description' => 'The timestamp generated when the task was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1576599253000', + ], + 'Pid' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'example' => 'b590lhguqs@d8deedfa9bf****', + ], + 'AppId' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Labels' => [ + 'description' => 'The aliases of the application.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags of the application.'."\n", + 'type' => 'string', + 'example' => '[ "test", "123123123", "uat" ],', + ], + ], + 'Tags' => [ + 'description' => 'A list of key-value pairs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'TestValue', + ], + ], + ], + ], + 'Source' => [ + 'description' => 'The source of the application.'."\n", + 'type' => 'string', + 'example' => 'ACSK8S', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmxyexli2****', + ], + 'ClusterId' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'c905d1364c2dd4b6284a3f41790c4****', + ], + 'Language' => [ + 'description' => 'The programming language of the application.'."\n", + 'type' => 'string', + 'example' => 'java', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"D80ADAAC-8C32-5479-BD14-C28CF832****\\",\\n \\"TraceApp\\": {\\n \\"Type\\": \\"TRACE\\",\\n \\"AppName\\": \\"arms-k8s-demo\\",\\n \\"UpdateTime\\": 1635700348000,\\n \\"Show\\": true,\\n \\"CreateTime\\": 1576599253000,\\n \\"Pid\\": \\"b590lhguqs@d8deedfa9bf****\\",\\n \\"AppId\\": 123,\\n \\"UserId\\": \\"113197164949****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Labels\\": [\\n \\"[ \\\\\\"test\\\\\\", \\\\\\"123123123\\\\\\", \\\\\\"uat\\\\\\" ],\\"\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ],\\n \\"Source\\": \\"ACSK8S\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\",\\n \\"ClusterId\\": \\"c905d1364c2dd4b6284a3f41790c4****\\",\\n \\"Language\\": \\"java\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetTraceAppResponse>\\n <RequestId>D80ADAAC-8C32-5479-BD14-C28CF832****</RequestId>\\n <TraceApp>\\n <Type>TRACE</Type>\\n <AppId>123</AppId>\\n <UserId>113197164949****</UserId>\\n <CreateTime>1576599253000</CreateTime>\\n <UpdateTime>1635700348000</UpdateTime>\\n <Pid>b590lhguqs@d8deedfa9bfxxxx</Pid>\\n <Show>true</Show>\\n <Labels>test</Labels>\\n <Labels>123123123</Labels>\\n <Labels>uat</Labels>\\n <RegionId>cn-hangzhou</RegionId>\\n <AppName>arms-k8s-demo</AppName>\\n </TraceApp>\\n</GetTraceAppResponse>","errorExample":""}]', + 'title' => 'GetTraceApp', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'GetAppJVMConfig' => [ + 'summary' => 'Obtain the JVM configuration information of each instance of the application', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDof the application.'."\n" + .' '."\n" + .'Log on to the **ARMS console**. In the left-side navigation pane, choose **Application Monitoring** > **Applications**. On the **Applications** page, click the name of an application. The URL in the address bar contains the process ID (PID) of the application. The PID is indicated in the pid=xxx format. The PID is usually percent encoded as xxx%40xxx. You must modify this value to remove the percent encoding. For example, if the PID in the URL is eb4zdose6v%409781be0f44d\\*\\*\\*\\*, you must replace %40 with an at sign (@) to obtain eb4zdose6v@9781be0f44d\\*\\*\\*\\*.', + 'type' => 'string', + 'required' => false, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1480521600000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1480607940000', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Code' => [ + 'description' => 'The response code. Valid values: 2XX: The request is successful. 3XX: A redirection message is returned. 4XX: The request is invalid. 5XX: A server error occurs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'JvmInfoList' => [ + 'description' => 'The list of JVM information.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Pid' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'example' => 'dsv9zcel92@1455182510c5369', + ], + 'VmArgs' => [ + 'description' => 'The VM parameters.'."\n", + 'type' => 'string', + 'example' => '[-javaagent:/home/admin/.opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar, -Doneagent.plugin.arms-agent.enabled=true, -Darms.licenseKey=[******], -Darms.agent.env=K8s, -Darms.agent.podinfo.path=/etc/podinfo, -Darms.appName=productservice, -Doneagent.region=cn-hangzhou, -Dproject.name=Product]', + ], + 'HostName' => [ + 'description' => 'The hostname.'."\n", + 'type' => 'string', + 'example' => 'host_name', + ], + 'Ip' => [ + 'description' => 'The IP address.'."\n", + 'type' => 'string', + 'example' => '47.91.59.244', + ], + 'AgentVersion' => [ + 'description' => 'The version of the agent.'."\n", + 'type' => 'string', + 'example' => '1.7.0-SNAPSHOT_3.0.3_3756244', + ], + 'ProcId' => [ + 'description' => 'The process ID.'."\n", + 'type' => 'string', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"Success\\": true,\\n \\"JvmInfoList\\": [\\n {\\n \\"Pid\\": \\"dsv9zcel92@1455182510c5369\\",\\n \\"VmArgs\\": \\"[-javaagent:/home/admin/.opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar, -Doneagent.plugin.arms-agent.enabled=true, -Darms.licenseKey=[******], -Darms.agent.env=K8s, -Darms.agent.podinfo.path=/etc/podinfo, -Darms.appName=productservice, -Doneagent.region=cn-hangzhou, -Dproject.name=Product]\\",\\n \\"HostName\\": \\"host_name\\",\\n \\"Ip\\": \\"47.91.59.244\\",\\n \\"AgentVersion\\": \\"1.7.0-SNAPSHOT_3.0.3_3756244\\",\\n \\"ProcId\\": \\"1\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetAppJVMConfig', + ], + 'QueryAppTopology' => [ + 'summary' => 'Queries the topology of an application.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the application.'."\n" + ."\n" + .'Log on to the **ARMS console**. In the left-side navigation pane, choose **Browser Monitoring** > **Browser Monitoring**. On the Browser Monitoring page, click the name of an application. The URL in the address bar contains the process ID (PID) of the application. The PID is indicated in the pid=xxx format. The PID is usually percent encoded as xxx%40xxx. You must modify this value to remove the percent encoding. For example, if the PID in the URL is eb4zdose6v%409781be0f44d\\*\\*\\*\\*, you must replace %40 with an at sign (@) to obtain eb4zdose6v@9781be0f44d\\*\\*\\*\\*.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'AppType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application type', + 'type' => 'string', + 'required' => false, + 'example' => 'TRACE', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type kind of topology.', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'apm_txn' => '', + 'apm_app_v2' => '', + 'apm_database_v2' => '', + 'apm_apps' => '', + 'apm_app' => '', + 'apm_txn_v2' => '', + 'apm_database' => '', + 'apm_apps_v2' => '', + ], + 'example' => 'apm_apps_v2', + ], + ], + [ + 'name' => 'Rpc', + 'in' => 'query', + 'schema' => [ + 'description' => 'RPC interface name.', + 'type' => 'string', + 'required' => false, + 'example' => '/eventCenter', + ], + ], + [ + 'name' => 'Db', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database domain name.', + 'type' => 'string', + 'required' => false, + 'example' => 'rm-xxx.mysql.rds.aliyuncs.com:3306', + ], + ], + [ + 'name' => 'DbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'orders', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1595568910000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1671952708499', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The filter conditions.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The filter conditions.'."\n", + 'example' => '"rootIp":"127.0.0.1"', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + '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 status code. The status code 200 indicates that the request was successful. If another status code is returned, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'any', + 'example' => '"Data": {'."\n" + .' "nodes": ['."\n" + .' {'."\n" + .' "data": {'."\n" + .' "duration": 0.2254335260115607,'."\n" + .' "requests": 1211,'."\n" + .' "type": "MYSQL",'."\n" + .' "errors": 0'."\n" + .' },'."\n" + .' "id": "ggxw4lnjuz@c0507xxxx##MYSQL",'."\n" + .' "label": "mysql-pod:3306(cart_db)"'."\n" + .' }'."\n" + .' ],'."\n" + .' "edges": ['."\n" + .' {'."\n" + .' "data": {'."\n" + .' "duration": 0.03333333333333333,'."\n" + .' "requests": 600,'."\n" + .' "type": "UNKNOWN",'."\n" + .' "errors": 0'."\n" + .' },'."\n" + .' "id": "1974097372",'."\n" + .' "source": "ggxw4lnjuz@456xxxxx",'."\n" + .' "target": "ggxw4lnjuz@c0507xxxx"'."\n" + .' }'."\n" + .' ]'."\n" + .' }', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ParameterRegionIdMissing', + 'errorMessage' => 'You must specify regionId.', + ], + [ + 'errorCode' => 'ParameterTopologyTypeIllegal', + 'errorMessage' => 'The specified topologyType is invalid.', + ], + [ + 'errorCode' => 'ParameterTimeStampIllegal', + 'errorMessage' => 'The specified timeStamp is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => 'The current user is not authorized to access the interface.', + ], + ], + [ + [ + 'errorCode' => 'AppNotExist', + 'errorMessage' => 'The application does not exist.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Success\\": true,\\n \\"Code\\": 200,\\n \\"Message\\": \\"null\\",\\n \\"Data\\": \\"\\\\\\"Data\\\\\\": {\\\\n \\\\\\"nodes\\\\\\": [\\\\n {\\\\n \\\\\\"data\\\\\\": {\\\\n \\\\\\"duration\\\\\\": 0.2254335260115607,\\\\n \\\\\\"requests\\\\\\": 1211,\\\\n \\\\\\"type\\\\\\": \\\\\\"MYSQL\\\\\\",\\\\n \\\\\\"errors\\\\\\": 0\\\\n },\\\\n \\\\\\"id\\\\\\": \\\\\\"ggxw4lnjuz@c0507xxxx##MYSQL\\\\\\",\\\\n \\\\\\"label\\\\\\": \\\\\\"mysql-pod:3306(cart_db)\\\\\\"\\\\n }\\\\n ],\\\\n \\\\\\"edges\\\\\\": [\\\\n {\\\\n \\\\\\"data\\\\\\": {\\\\n \\\\\\"duration\\\\\\": 0.03333333333333333,\\\\n \\\\\\"requests\\\\\\": 600,\\\\n \\\\\\"type\\\\\\": \\\\\\"UNKNOWN\\\\\\",\\\\n \\\\\\"errors\\\\\\": 0\\\\n },\\\\n \\\\\\"id\\\\\\": \\\\\\"1974097372\\\\\\",\\\\n \\\\\\"source\\\\\\": \\\\\\"ggxw4lnjuz@456xxxxx\\\\\\",\\\\n \\\\\\"target\\\\\\": \\\\\\"ggxw4lnjuz@c0507xxxx\\\\\\"\\\\n }\\\\n ]\\\\n }\\"\\n}","type":"json"}]', + 'title' => 'QueryAppTopology', + ], + 'GetAppApiByPage' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'docRequired' => true, + 'maximum' => '9223372036854775806', + 'minimum' => '0', + 'example' => '1600063200000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'docRequired' => true, + 'maximum' => '9223372036854775806', + 'minimum' => '0', + 'example' => '1600066800000', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => true, + 'maximum' => '2147483647', + 'minimum' => '1', + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page. This parameter is no longer supported. The number of entries to return on each page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2147483647', + 'minimum' => '1', + 'example' => '10', + 'default' => '10', + ], + ], + [ + 'name' => 'IntervalMills', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time interval between the data shards to be queried. Unit: milliseconds. Minimum value: 60000. Maximum value: 2147483647.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2147483647', + 'minimum' => '0', + 'example' => '60000', + 'default' => '0', + ], + ], + [ + 'name' => 'PId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application. For information about how to obtain a PID, see [Obtain the PID of an application](https://www.alibabacloud.com/help/zh/doc-detail/186100.htm?spm=a2cdw.13409063.0.0.7a72281f0bkTfx#title-imy-7gj-qhr).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'a2n80plglh@745eddxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned for the request. Valid values:'."\n" + ."\n" + .'* 2XX: The request was successful.'."\n" + .'* 3XX: A redirection message was returned.'."\n" + .'* 4XX: The request was invalid.'."\n" + .'* 5XX: A server error occurred.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'B6A00968-82A8-4F14-9D1B-B53827DB****', + ], + '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', + ], + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'Total' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Page' => [ + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Completed' => [ + 'description' => 'Is completed.', + 'type' => 'boolean', + 'example' => 'false', + ], + 'Items' => [ + 'description' => 'The data entries.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data entries returned.'."\n", + 'type' => 'object', + 'example' => '[]', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => 'The specified region is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'RetcodeDailyCustomLimit', + 'errorMessage' => 'Usage today has exceeded the custom limit. The current operation is prohibited.', + ], + [ + 'errorCode' => 'RetcodeDailyFreeLimit', + 'errorMessage' => 'Usage today has exceeded the Essential Edition limit. The current operation is prohibited.', + ], + ], + [ + [ + 'errorCode' => 'AppNotExist', + 'errorMessage' => 'The application does not exist.', + ], + [ + 'errorCode' => 'RunningTaskNotExist', + 'errorMessage' => 'Application data collection task does not exist or has been stopped.', + ], + ], + 429 => [ + [ + 'errorCode' => 'OperationIsThrottled', + 'errorMessage' => 'The backend service cannot fully process the current request. The returned result may be incomplete. Adjust the operation conditions and try again.', + ], + ], + 452 => [ + [ + 'errorCode' => 'OperationTimeOut', + 'errorMessage' => 'The system timed out when processing the current request. The request may involve too many resources and the system cannot complete the processing within the limited time. Please adjust the relevant conditions and try again.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"RequestId\\": \\"B6A00968-82A8-4F14-9D1B-B53827DB****\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"PageSize\\": 10,\\n \\"Total\\": \\"2\\",\\n \\"Page\\": 1,\\n \\"Completed\\": false,\\n \\"Items\\": [\\n []\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetAppApiByPageResponse>\\n<Message>message</Message>\\n<RequestId>B6A00968-82A8-4F14-9D1B-B53827DB****</RequestId>\\n<Data>\\n <PageSize>10</PageSize>\\n <Total>0</Total>\\n <Page>1</Page>\\n <Items>[]</Items>\\n</Data>\\n<Code>200</Code>\\n<Success>true</Success>\\n</GetAppApiByPageResponse>","errorExample":""}]', + 'title' => 'GetAppApiByPage', + 'summary' => 'Queries the API operations of application monitoring by page.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'GetTrace' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'TraceID', + 'in' => 'query', + 'schema' => [ + 'description' => 'The trace ID. You can log on to the ARMS console and obtain the trace ID on the **Trace Query** page or **Interface Snapshot** tab.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'ac14001a15954493811405707d****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '当所传入的traceId非ARMS自动生成traceId时必须填写该字段', + 'description' => 'The beginning of the time range to query. Unit: milliseconds.'."\n" + ."\n" + .'> If the ID of the trace is 30 characters in length, this parameter is optional. Otherwise, this parameter is required.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1623827602000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '当所传入的traceId非ARMS自动生成traceId时必须填写该字段', + 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n" + ."\n" + .'> If the ID of the trace is 30 characters in length, this parameter is optional. Otherwise, this parameter is required.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1623827603000', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries on each page. Maximum value: 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '6A9AEA84-7186-4D8D-B498-4585C6A2****', + ], + 'Spans' => [ + 'description' => 'The details of the trace.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SpanId' => [ + 'description' => 'The span ID.'."\n", + 'type' => 'string', + 'example' => '1234', + ], + 'OperationName' => [ + 'description' => 'The name of the traced span.'."\n", + 'type' => 'string', + 'example' => '/api/demo', + ], + 'ResultCode' => [ + 'description' => 'The status code.'."\n", + 'type' => 'string', + 'example' => '222', + ], + 'Timestamp' => [ + 'description' => 'The timestamp generated when the span was generated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1590388651', + ], + 'RpcType' => [ + 'description' => 'The type of the remote procedure call (RPC) mode.'."\n" + ."\n" + .'* 0: HTTP entry'."\n" + .'* 25: HTTP call'."\n" + .'* 1: High-speed Service Framework (HSF) call'."\n" + .'* 2: HSF provision'."\n" + .'* 40: on-premises API call'."\n" + .'* 60: MySQL call'."\n" + .'* 62: Oracle call'."\n" + .'* 63: PostgreSQL call'."\n" + .'* 70: Redis call'."\n" + .'* 4: Taobao Distributed Data Layer (TDDL) call'."\n" + .'* 5: Tair call'."\n" + .'* 13: MetaQ message sending'."\n" + .'* 252: MetaQ message receiving'."\n" + .'* 3: notification sending'."\n" + .'* 254: notification receiving'."\n" + .'* 7: Apache Dubbo call'."\n" + .'* 8: Apache Dubbo provision'."\n" + .'* 19: SOFARPC call'."\n" + .'* 18: SOFARPC provision'."\n" + .'* 11: Distributed Service Framework (DSF) call'."\n" + .'* 12: DSF provision'."\n" + .'* \\-1: unknown call'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'ServiceIp' => [ + 'description' => 'The IP address of the host where the application resides.'."\n", + 'type' => 'string', + 'example' => '172.20.XX.XX', + ], + 'HaveStack' => [ + 'description' => 'Indicates whether a method stack was provided.'."\n" + ."\n" + .'* `true`: A method stack was provided.'."\n" + .'* `false`: No method stack was provided.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'ParentSpanId' => [ + 'description' => 'The ID of the parent span.'."\n", + 'type' => 'string', + 'example' => '18', + ], + 'Duration' => [ + 'description' => 'The amount of time consumed by the trace. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'RpcId' => [ + 'description' => 'The ID of the RPC mode.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'ServiceName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'arms-demo', + ], + 'TraceID' => [ + 'description' => 'The trace ID.'."\n", + 'type' => 'string', + 'example' => 'ac14001a15954493811405707d****', + ], + 'TagEntryList' => [ + 'description' => 'The tags of the trace.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'example' => 'http.status.code', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + 'description' => '', + ], + ], + 'LogEventList' => [ + 'description' => 'The log events in the trace.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'description' => 'The timestamp when the log event was generated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1590388651', + ], + 'TagEntryList' => [ + 'description' => 'The tags of the trace.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'example' => 'http.status.code', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'Children' => [ + 'description' => 'The child spans of the current span.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the child span.'."\n", + 'type' => 'object', + 'example' => '[ { "ParentSpanId":"c33603355032xxxx", "ServiceIp":"10.208.xxx.xxx", "OperationName":"/product/toy/8ac7ddeb-1c3c-4911-850c-665a5a0xxxx", "RpcType":0, "Duration":2, "TagEntryList":[ { "Value":"10.208.0.xxx", "Key":"source.ip" } ], "Timestamp":1652669026201, "HaveStack":true, "LogEventList":[ ], "ServiceName":"xxxxxx", "RpcId":"0.2", "TraceID":"ea1ad000a1165266902619685xxxxx", "Children":[ ], "ResultCode":"0", "SpanId":"7069ab30d7cbxxxx" } ]', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"6A9AEA84-7186-4D8D-B498-4585C6A2****\\",\\n \\"Spans\\": [\\n {\\n \\"SpanId\\": \\"1234\\",\\n \\"OperationName\\": \\"/api/demo\\",\\n \\"ResultCode\\": \\"222\\",\\n \\"Timestamp\\": 1590388651,\\n \\"RpcType\\": 1,\\n \\"ServiceIp\\": \\"172.20.XX.XX\\",\\n \\"HaveStack\\": false,\\n \\"ParentSpanId\\": \\"18\\",\\n \\"Duration\\": 1000,\\n \\"RpcId\\": \\"0\\",\\n \\"ServiceName\\": \\"arms-demo\\",\\n \\"TraceID\\": \\"ac14001a15954493811405707d****\\",\\n \\"TagEntryList\\": [\\n {\\n \\"Key\\": \\"http.status.code\\",\\n \\"Value\\": \\"200\\"\\n }\\n ],\\n \\"LogEventList\\": [\\n {\\n \\"Timestamp\\": 1590388651,\\n \\"TagEntryList\\": [\\n {\\n \\"Key\\": \\"http.status.code\\",\\n \\"Value\\": \\"200\\"\\n }\\n ]\\n }\\n ],\\n \\"Children\\": [\\n [\\n {\\n \\"ParentSpanId\\": \\"c33603355032xxxx\\",\\n \\"ServiceIp\\": \\"10.208.xxx.xxx\\",\\n \\"OperationName\\": \\"/product/toy/8ac7ddeb-1c3c-4911-850c-665a5a0xxxx\\",\\n \\"RpcType\\": 0,\\n \\"Duration\\": 2,\\n \\"TagEntryList\\": [\\n {\\n \\"Value\\": \\"10.208.0.xxx\\",\\n \\"Key\\": \\"source.ip\\"\\n }\\n ],\\n \\"Timestamp\\": 1652669026201,\\n \\"HaveStack\\": true,\\n \\"LogEventList\\": [],\\n \\"ServiceName\\": \\"xxxxxx\\",\\n \\"RpcId\\": \\"0.2\\",\\n \\"TraceID\\": \\"ea1ad000a1165266902619685xxxxx\\",\\n \\"Children\\": [],\\n \\"ResultCode\\": \\"0\\",\\n \\"SpanId\\": \\"7069ab30d7cbxxxx\\"\\n }\\n ]\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<GetTraceResponse>\\n <RequestId>6A9AEA84-7186-4D8D-B498-4585C6A2****</RequestId>\\n <Spans>\\n <SpanId>1234</SpanId>\\n <OperationName>/api/demo</OperationName>\\n <ResultCode>222</ResultCode>\\n <Timestamp>1590388651</Timestamp>\\n <RpcType>1</RpcType>\\n <ServiceIp>172.20.XX.XX</ServiceIp>\\n <HaveStack>false</HaveStack>\\n <ParentSpanId>18</ParentSpanId>\\n <Duration>1000</Duration>\\n <RpcId>0</RpcId>\\n <ServiceName>arms-demo</ServiceName>\\n <TraceID>ac14001a15954493811405707d****</TraceID>\\n <TagEntryList>\\n <Key>http.status.code</Key>\\n <Value>200</Value>\\n </TagEntryList>\\n <LogEventList>\\n <Timestamp>1590388651</Timestamp>\\n <TagEntryList>\\n <Key>http.status.code</Key>\\n <Value>200</Value>\\n </TagEntryList>\\n </LogEventList>\\n <Children/>\\n </Spans>\\n</GetTraceResponse>","errorExample":""}]', + 'title' => 'GetTrace', + 'summary' => 'Queries the details of a trace.', + 'description' => '> You must use Application Real-Time Monitoring Service (ARMS) SDK for Java V2.7.24.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'GetStack' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'TraceID', + 'in' => 'query', + 'schema' => [ + 'description' => 'The trace ID. It is displayed on the **Trace Explorer** page in the Application Real-Time Monitoring Service (ARMS) console.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '0a5800611641470044457853******', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'RpcID', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the remote procedure call (RPC) mode. You can obtain the ID by calling the **GetTrace** operation.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '0.1', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application. For more information about how to obtain the PID, see [Obtain the PID of an application](https://www.alibabacloud.com/help/zh/doc-detail/186100.htm?spm=a2cdw.13409063.0.0.7a72281f0bkTfx#title-imy-7gj-qhr).'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'eb4zdose6v@36bab313a******', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The entry timestamp of the method call. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1653555396', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The exit timestamp of the method call. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1653641800', + ], + ], + [ + 'name' => 'SpanID', + 'in' => 'query', + 'schema' => [ + 'description' => 'The span ID of the trace. It is displayed on the Trace Explorer page in the ARMS console.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '88c32dfa4b******', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B34C3A43-A901-5F94-9DAD-758CE4******', + ], + 'StackInfo' => [ + 'description' => 'The method stack details.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The start time of the call method.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1653555396', + ], + 'Exception' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'java.lang.NullPointerException', + ], + 'Api' => [ + 'description' => 'The name of the operation.'."\n", + 'type' => 'string', + 'example' => 'Tomcat Servlet Process', + ], + 'Line' => [ + 'description' => 'The number of rows in the method stack information.'."\n", + 'type' => 'string', + 'example' => '34', + ], + 'Duration' => [ + 'description' => 'The duration. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '32', + ], + 'RpcId' => [ + 'description' => 'The ID of the RPC mode.'."\n", + 'type' => 'string', + 'example' => '0.1', + ], + 'ServiceName' => [ + 'description' => 'The name of the service.'."\n", + 'type' => 'string', + 'example' => '/com/test', + ], + 'CallCount' => [ + 'description' => 'The number of times the method is called.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'ExtInfo' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the custom parameter.'."\n", + 'type' => 'string', + 'example' => '41', + ], + 'Info' => [ + 'description' => 'The content of the custom parameter.'."\n", + 'type' => 'string', + 'example' => 'input=254275&', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B34C3A43-A901-5F94-9DAD-758CE4******\\",\\n \\"StackInfo\\": [\\n {\\n \\"StartTime\\": 1653555396,\\n \\"Exception\\": \\"java.lang.NullPointerException\\",\\n \\"Api\\": \\"Tomcat Servlet Process\\",\\n \\"Line\\": \\"34\\",\\n \\"Duration\\": 32,\\n \\"RpcId\\": \\"0.1\\",\\n \\"ServiceName\\": \\"/com/test\\",\\n \\"CallCount\\": \\"1\\",\\n \\"ExtInfo\\": {\\n \\"Type\\": \\"41\\",\\n \\"Info\\": \\"input=254275&\\"\\n }\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<GetStackResponse>\\n <RequestId>B34C3A43-A901-5F94-9DAD-758CE4******</RequestId>\\n <StackInfo>\\n <StartTime>1641780817536</StartTime>\\n <Exception>java.lang.NullPointerException</Exception>\\n <Api>Tomcat Servlet Process</Api>\\n <Line>34</Line>\\n <Duration>32</Duration>\\n <RpcId>0</RpcId>\\n <ServiceName>/com/test</ServiceName>\\n <ExtInfo>\\n <Type>41</Type>\\n <Info>input=254275&</Info>\\n </ExtInfo>\\n </StackInfo>\\n</GetStackResponse>","errorExample":""}]', + 'title' => 'GetStack', + 'summary' => 'Queries the information of a method stack.', + ], + 'GetMultipleTrace' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TraceIDs', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The trace IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The trace ID. You can specify one to nine trace IDs. You can log on to the Application Real-Time Monitoring Service (ARMS) console and obtain the trace ID on the **Trace Query** page.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ac1400a115951745017447033d****', + ], + 'required' => true, + 'example' => 'ac1400a115951745017447033d****', + 'maxItems' => 10, + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '当所传入的traceId非ARMS自动生成traceId时必须填写该字段', + 'description' => 'The start time of the trace. The value is a timestamp. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1657692507000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '当所传入的traceId非ARMS自动生成traceId时必须填写该字段', + 'description' => 'The time when the trace ends. The value is a timestamp. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1663999380000', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return. Default value: `1`.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return per page, the maximum value is 1000.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2983BEF7-4A0D-47A2-94A2-8E9C5E63****', + ], + 'MultiCallChainInfos' => [ + 'description' => 'The details of traces.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TraceID' => [ + 'description' => 'The trace ID.'."\n", + 'type' => 'string', + 'example' => 'ac1400a115951745017447033d****', + ], + 'Spans' => [ + 'description' => 'The details of the trace.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SpanId' => [ + 'description' => 'The span ID.'."\n", + 'type' => 'string', + 'example' => '1234', + ], + 'OperationName' => [ + 'description' => 'The name of the traced span.'."\n", + 'type' => 'string', + 'example' => '/demo/queryNotExistDB/11', + ], + 'ResultCode' => [ + 'description' => 'The status code returned.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'Timestamp' => [ + 'description' => 'The timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1595174501747', + ], + 'RpcType' => [ + 'description' => 'The type of the remote procedure call (RPC) mode.'."\n" + ."\n" + .'* 0: HTTP entry'."\n" + .'* 25: HTTP call'."\n" + .'* 1: High-speed Service Framework (HSF) call'."\n" + .'* 2: HSF provision'."\n" + .'* 40: on-premises API call'."\n" + .'* 60: MySQL call'."\n" + .'* 62: Oracle call'."\n" + .'* 63: PostgreSQL call'."\n" + .'* 70: Redis call'."\n" + .'* 4: Taobao Distributed Data Layer (TDDL) call'."\n" + .'* 5: Tair call'."\n" + .'* 13: MetaQ message sending'."\n" + .'* 252: MetaQ message receiving'."\n" + .'* 3: notification sending'."\n" + .'* 254: notification receiving'."\n" + .'* 7: Apache Dubbo call'."\n" + .'* 8: Apache Dubbo provision'."\n" + .'* 19: SOFARPC call'."\n" + .'* 18: SOFARPC provision'."\n" + .'* 11: Distributed Service Framework (DSF) call'."\n" + .'* 12: DSF provision'."\n" + .'* \\-1: unknown call'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'ServiceIp' => [ + 'description' => 'The IP address of the host where the application resides.'."\n", + 'type' => 'string', + 'example' => '172.20.XX.XX', + ], + 'HaveStack' => [ + 'description' => 'Indicates whether a method stack was provided.'."\n" + ."\n" + .'* `true`: A method stack was provided.'."\n" + .'* `false`: No method stack was provided.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'ParentSpanId' => [ + 'description' => 'The ID of the parent span.'."\n", + 'type' => 'string', + 'example' => '18', + ], + 'Duration' => [ + 'description' => 'The amount of time consumed by the trace. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '11', + ], + 'RpcId' => [ + 'description' => 'RPC ID'."\n", + 'type' => 'string', + 'example' => '0.1', + ], + 'ServiceName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'arms-k8s-demo-subcomponent', + ], + 'TraceID' => [ + 'description' => 'The trace ID.'."\n", + 'type' => 'string', + 'example' => 'ac1400a115951745017447033d****', + ], + 'TagEntryList' => [ + 'description' => 'The tags of the trace.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'example' => 'http.status.code', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + 'description' => '', + ], + ], + 'LogEventList' => [ + 'description' => 'The log events in the trace.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'description' => 'The time when the log was generated. The value is a timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1595174501747', + ], + 'TagEntryList' => [ + 'description' => 'The tags of the trace.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'example' => 'http.status.code', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => '200', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2983BEF7-4A0D-47A2-94A2-8E9C5E63****\\",\\n \\"MultiCallChainInfos\\": [\\n {\\n \\"TraceID\\": \\"ac1400a115951745017447033d****\\",\\n \\"Spans\\": [\\n {\\n \\"SpanId\\": \\"1234\\",\\n \\"OperationName\\": \\"/demo/queryNotExistDB/11\\",\\n \\"ResultCode\\": \\"1\\",\\n \\"Timestamp\\": 1595174501747,\\n \\"RpcType\\": 0,\\n \\"ServiceIp\\": \\"172.20.XX.XX\\",\\n \\"HaveStack\\": true,\\n \\"ParentSpanId\\": \\"18\\",\\n \\"Duration\\": 11,\\n \\"RpcId\\": \\"0.1\\",\\n \\"ServiceName\\": \\"arms-k8s-demo-subcomponent\\",\\n \\"TraceID\\": \\"ac1400a115951745017447033d****\\",\\n \\"TagEntryList\\": [\\n {\\n \\"Key\\": \\"http.status.code\\",\\n \\"Value\\": \\"200\\"\\n }\\n ],\\n \\"LogEventList\\": [\\n {\\n \\"Timestamp\\": 1595174501747,\\n \\"TagEntryList\\": [\\n {\\n \\"Key\\": \\"http.status.code\\",\\n \\"Value\\": \\"200\\"\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<GetMultipleTraceResponse>\\n\\t<RequestId>2983BEF7-4A0D-47A2-94A2-8E9C5E63****</RequestId>\\n\\t<MultiCallChainInfos>\\n\\t\\t<TraceID>ac1400a115951745017447033d****</TraceID>\\n\\t\\t<Spans>\\n\\t\\t\\t<HaveStack>true</HaveStack>\\n\\t\\t\\t<ServiceIp>172.20.XX.XX</ServiceIp>\\n\\t\\t\\t<OperationName>/demo/queryNotExistDB/11</OperationName>\\n\\t\\t\\t<ServiceName>arms-k8s-demo-subcomponent</ServiceName>\\n\\t\\t\\t<RpcId>0.1</RpcId>\\n\\t\\t\\t<RpcType>0</RpcType>\\n\\t\\t\\t<TraceID>ac1400a115951745017447033d****</TraceID>\\n\\t\\t\\t<Duration>11</Duration>\\n\\t\\t\\t<TagEntryList>\\n\\t\\t\\t\\t<Value>200</Value>\\n\\t\\t\\t\\t<Key>http.status.code</Key>\\n\\t\\t\\t</TagEntryList>\\n\\t\\t\\t<TagEntryList>\\n\\t\\t\\t\\t<Value>172.20.XX.XX</Value>\\n\\t\\t\\t\\t<Key>source.ip</Key>\\n\\t\\t\\t</TagEntryList>\\n\\t\\t\\t<Timestamp>1595174501747</Timestamp>\\n\\t\\t\\t<ResultCode>1</ResultCode>\\n\\t\\t</Spans>\\n\\t</MultiCallChainInfos>\\n\\t<MultiCallChainInfos>\\n\\t\\t<TraceID>ac1400a115951745017577035d****</TraceID>\\n\\t\\t<Spans>\\n\\t\\t\\t<HaveStack>true</HaveStack>\\n\\t\\t\\t<ServiceIp>172.20.XX.XX</ServiceIp>\\n\\t\\t\\t<OperationName>/demo/queryException/12</OperationName>\\n\\t\\t\\t<ServiceName>arms-k8s-demo-subcomponent</ServiceName>\\n\\t\\t\\t<RpcId>0.1</RpcId>\\n\\t\\t\\t<RpcType>0</RpcType>\\n\\t\\t\\t<TraceID>ac1400a115951745017577035d****</TraceID>\\n\\t\\t\\t<Duration>2</Duration>\\n\\t\\t\\t<TagEntryList>\\n\\t\\t\\t\\t<Value>500</Value>\\n\\t\\t\\t\\t<Key>http.status.code</Key>\\n\\t\\t\\t</TagEntryList>\\n\\t\\t\\t<TagEntryList>\\n\\t\\t\\t\\t<Value>172.20.XX.XX</Value>\\n\\t\\t\\t\\t<Key>source.ip</Key>\\n\\t\\t\\t</TagEntryList>\\n\\t\\t\\t<Timestamp>1595174501761</Timestamp>\\n\\t\\t\\t<ResultCode>1</ResultCode>\\n\\t\\t</Spans>\\n\\t</MultiCallChainInfos>\\n</GetMultipleTraceResponse>","errorExample":""}]', + 'title' => 'GetMultipleTrace', + 'summary' => 'Queries the details of one or more traces.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ConfigApp' => [ + 'summary' => 'Turns on or off the main switch of an ARMS agent, or queries the status of the main switch.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'AppIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application. Separate multiple PIDs with commas (,).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'iioe7jcnuk@582846f37******,atc889zkcf@d8deedfa9bf******', + ], + ], + [ + 'name' => 'Enable', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to turn on or off the main switch of the ARMS agent. The monitoring stops after the switch is turned off. If you do not specify this parameter, the main switch status of the ARMS agent is queried.'."\n" + ."\n" + .'* `true`: turns on the switch'."\n" + .'* `false`: turns off the switch'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the application. Set the value to **TRACE**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TRACE', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The result of turning on or off the main switch of the agent or the main switch status of the agent. Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* success'."\n" + .'* failed'."\n" + ."\n" + .'The main switch status of the agent. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'abc@def success\\nghi@jkl success\\n', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '16AF921B-8187-489F-9913-43C808B4****', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => '必选参数不能为空', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"abc@def success\\\\\\\\nghi@jkl success\\\\\\\\n\\",\\n \\"RequestId\\": \\"16AF921B-8187-489F-9913-43C808B4****\\"\\n}","errorExample":""},{"type":"xml","example":"<ConfigAppResponse>\\n <RequestId>16AF921B-8187-489F-9913-43C808B4****</RequestId>\\n <Data>abc@def success\\\\nghi@jkl success\\\\n</Data>\\n</ConfigAppResponse>","errorExample":""}]', + 'title' => 'ConfigApp', + 'description' => '****', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SaveTraceAppConfig' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process ID (PID) of the application.'."\n" + ."\n" + .'Log on to the ARMS console. In the left-side navigation pane, choose **Application Monitoring** > **Application List**. On the Application List page, click the name of an application. The URL in the address bar contains the PID of the application. The PID is indicated in the pid=xxx format. The PID is usually percent encoded as xxx%40xxx. You must modify this value to remove the percent encoding. For example, if the PID in the URL is xxx%4074xxx, you must replace %40 with an at sign (@) to obtain xxx@74xxx.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'a2n80plglh@745eddxxx', + ], + ], + [ + 'name' => 'Settings', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The settings of Application Monitoring.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the settings that you want to modify. For more information about the supported settings, see the following sections.'."\n" + ."\n" + .'* Trace sampling settings'."\n" + .'* Agent switch settings'."\n" + .'* Threshold settings'."\n" + .'* Advanced settings'."\n" + .'* Thread settings'."\n" + .'* Memory snapshot settings'."\n" + .'* URL convergence settings'."\n" + .'* Business log association settings'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'sampling.enable', + ], + 'Value' => [ + 'description' => 'The value of the settings that you want to modify. For more information about the supported settings, see the following sections.'."\n" + ."\n" + .'* Trace sampling settings'."\n" + .'* Agent switch settings'."\n" + .'* Threshold settings'."\n" + .'* Advanced settings'."\n" + .'* Thread settings'."\n" + .'* Memory snapshot settings'."\n" + .'* URL convergence settings'."\n" + .'* Business log association settings'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 256, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Indicates whether the call was successful.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 2XX indicates that the request was successful. 3XX indicates that the request was redirected. 4XX indicates that a request error occurred. 5XX indicates that a server error occurred.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ParameterTraceAppSettingKeyIllegal', + 'errorMessage' => 'The application configuration key is invalid.', + ], + [ + 'errorCode' => 'ParameterTraceAppSettingValueIllegal', + 'errorMessage' => 'The application configuration value is invalid.', + ], + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'InterPlease try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + 404 => [ + [ + 'errorCode' => 'AppNotExist', + 'errorMessage' => 'The application does not exist.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"success\\",\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<SaveTraceAppConfigResponse>\\n <RequestId>78901766-3806-4E96-8E47-CFEF59E4****</RequestId>\\n <Data>success</Data>\\n</SaveTraceAppConfigResponse>","errorExample":""}]', + 'title' => 'SaveTraceAppConfig', + 'summary' => 'Modifies the settings of Application Monitoring, such as trace sampling and agent switch settings.', + 'requestParamsDescription' => '**Trace sampling settings**'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|sampling.enable|Specifies whether to turn on the sampling switch.|Valid values:\\- `true`: turns on the sampling switch\\- `false`: turns off the sampling switch|'."\n" + .'|sampling.rate|The sampling rate.|Valid values: 0 to 100. Default value: 10.|'."\n" + ."\n" + .'**Agent switch settings**'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|enable|Specifies whether to turn on the agent switch.|Valid values:\\- `true`: turns on the agent switch\\- `false`: turns off the agent switch|'."\n" + ."\n" + .'**Threshold settings**'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|thresholds.limit|The throttling threshold.|Default value: 100.|'."\n" + .'|thresholds.interface|The threshold of response time for API calls.|Default value: 500. Unit: ms.|'."\n" + .'|thresholds.sql|The threshold of the amount of time consumed by slow SQL queries.|Default value: 500. Unit: ms.|'."\n" + ."\n" + .'**Advanced settings**'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|defined.excludeurl|The invalid API calls that you want to exclude.|Separate multiple API calls with commas (,).Default value: /\\*\\*/\\*.jpg,/\\*\\*/\\*.png,/\\*\\*/\\*.js,/\\*\\*/\\*.jpeg.Example: /service/taobao,/service/status.|'."\n" + .'|callstack.maxLength|The maximum length of method stacks.|Default value: 128. Maximum value: 400.|'."\n" + .'|exception.stacktrace|The stack depth based on which the system identifies the same type of exceptions.|Default value: 2. The system identifies the same type of exceptions based on the specified stack depth. If you change the value, unexpected statistics may occur. **Proceed with caution**.|'."\n" + .'|callsql.maxLength|The maximum length of collected SQL statements.|A collected SQL statement must be 256 to 4096 characters in length. Default value: 1024.|'."\n" + .'|jdbc.tracesqlbindvalue|Specifies whether to capture variables bound to the PrepareStatement parameter.|Valid values:\\-`true`: turns on the switch of capturing variables bound to the PrepareStatement parameter\\- `false`: turns off the switch of capturing variables bound to the PrepareStatement parameter|'."\n" + .'|jdbc.tracesqlraw|Specifies whether to capture raw SQL statements.|Valid values:\\- `true`: turns on the switch of capturing raw SQL statements\\- `false`: turns off the switch of capturing raw SQL statements|'."\n" + .'|exception.whitelist|The exceptions that you want to exclude.|The value must be a regular expression that specifies the name of an exception category. Separate multiple exception categories with commas (,). Example: java.lang.InterrupetedException,java.lang.IndexOutOfBoundsException. The exceptions of the categories that you specify are not displayed in the charts on the Application Details and Exceptions Diagnosis pages.|'."\n" + .'|error.skip|The errors that you want to exclude.|By default, all HTTP status codes greater than 400 are counted as errors. To ignore specific HTTP status codes greater than 400, you can specify them as the value of this key. This way, they are not counted as errors. Separate multiple HTTP status codes with commas (,). Examples: 429 and 429,512. This key is supported by agent version 2.5.7.2 or later.|'."\n" + .'|compress.enable|Specifies whether to turn on the trace compression switch.|Valid values:\\- `true`: turns on the trace compression switch\\- `false`: turns off the trace compression switch|'."\n" + .'|param.maxLength|The maximum length of request parameters.|Default value: 512. If the value is higher than the default value, additional system resources are consumed. **Exercise caution when you configure this key**.|'."\n" + .'|quantile.enable|Specifies whether to turn on the quantile statistics switch.|Valid values:\\- `true`: turns on the quantile statistics switch\\- `false`: turns off the quantile statistics switch|'."\n" + .'|threadpoolmonitor.enable|Specifies whether to enable thread pool and connection pool monitoring.|**The configuration of this key takes effect after the application is restarted**.Valid values:\\- `true`: enables thread pool and connection pool monitoring\\- `false`: disables thread pool and connection pool monitoring|'."\n" + .'|async.autoTransmit|Specifies whether to turn on the automatic asynchronous propagation switch.|**This key is valid only when the agent version is 2.8.3 or later**.**The configuration of this key takes effect after the application is restarted**. This feature encapsulates the Runnable and Callable tasks that are submitted to the thread pool to propagate the context. Potential risks may arise. **Exercise caution when you configure this key**.Valid values:\\-`true`: turns on the automatic asynchronous propagation switch\\- `false`: turns off the automatic asynchronous propagation switch|'."\n" + .'|thread.match.package|The name of the package for asynchronous propagation.|**This key is valid only when the agent version is 2.7.1.3 or later**.**The configuration of this key takes effect after the application is restarted**. When a Runnable, Callable, Supplier under the specified package is created, the trace context is automatically captured and propagated to the new thread. Separate multiple package names with commas (,).|'."\n" + .'|responseInject.enable|Specifies whether to turn on the switch of returning the trace ID in the request.|Valid values:\\- `true`: turns on the switch\\- `false`: turns off the switch|'."\n" + ."\n" + .'**Thread settings**'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|tprof.enableThreadProfiler|Specifies whether to turn on the main switch of thread profiling.|Valid values:\\- `true`: turns on the switch\\- `false`: turns off the switchIf you turn on this switch, the native method stacks of slow API calls are automatically saved.|'."\n" + .'|tprof.threadProfilerSlowInteractionRt|The threshold of the amount of time consumed by slow API calls.|Default value: 2000. If the amount of time consumed by slow API calls exceeds the threshold, thread profiling is enabled. We recommend that you set the value to the 99th percentile of the amount of time consumed. If you set a value smaller than 2000, the CPU consumption is increased. We recommend that you set a value greater than or equal to 500.|'."\n" + .'|tprof.enableThreadStackRecorder|Specifies whether to enable thread profiling for method stacks.|Valid values:\\- `true`: enables thread profiling for method stacks\\- `false`: disables thread profiling for method stacksIf you enable thread profiling, method stacks are collected every 5 minutes.|'."\n" + ."\n" + .'**Business log association settings**'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|logging.enable|Specifies whether to turn on the switch to associate trace IDs with business logs.|Valid values:\\- `true`: turns on the switch\\- `false`: turns off the switchIf you turn on this switch, trace IDs are automatically generated in the business logs of an application. This setting takes effect after you restart the application. Logging utilities such as Log4j, Log4j2, and Logback are supported. You must add %X{EagleEye-TraceID} to the log layout to generate trace IDs.|'."\n" + .'|SLS.project|The Simple Log Service project that stores the business logs generated in the current region.|You can specify the name of a Simple Log Service project that stores the business logs generated in the current region.|'."\n" + .'|SLS.logStore|The Simple Log Service Logstore that stores the business logs generated in the current region.|You can specify the name of a Simple Log Service Logstore that stores the business logs generated in the current region.|'."\n" + .'|SLS.index|The type of indexes of business logs generated in the current region.|Valid values:\\- If you want to use full-text indexes, do not set this key.\\- If you want to use a field-specific index, set the value to the field name. Example: **SLS.index: tag**.For more information about the differences between field-specific indexes and full-text indexes, see [Configure indexes](~~90732~~).|'."\n" + ."\n" + .'**URL convergence settings**'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|convergence.enable|Specifies whether to enable the URL convergence feature.|Valid values:\\- `true`: enables the URL convergence feature\\- `false`: disables the URL convergence feature|'."\n" + .'|convergence.minServerSize|The convergence threshold.|If the threshold is exceeded, convergence is performed.|'."\n" + .'|convergence.pattern|The regular expression of convergence rules.|You can use regular expressions to configure convergence rules. Separate multiple regular expressions with commas (,). Enter a URL in the original text to indicate that the URL is not converged. Example: /service/(.\\*?)/demo.|'."\n" + ."\n" + .'**Arthas diagnostics settings**'."\n" + ."\n" + .'****Note: The Arthas diagnostics settings take effect only when the agent version is 2.7.1.3 or later. For more information about other prerequisites, see [Arthas diagnostics](~~300078~~).****'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|arthas.enable|Specifies whether to turn on the Arthas switch.|Valid values:\\- `true`: turns on the Arthas switch\\- `false`: turns off the Arthas switch|'."\n" + .'|arthas.enableIps|The IP addresses for which the Arthas diagnostics feature is enabled.|If you configure this key, the Arthas diagnostics feature takes effect only on the specified IP addresses. If you do not configure this key, the Arthas diagnostics feature takes effect on all IP addresses by default. Separate multiple IP addresses with commas (,).|'."\n" + ."\n" + .'**Continuous profiling settings**'."\n" + ."\n" + .'****Note: The continuous profiling settings take effect only when the agent version is 2.7.3.5 or later. For more information about other prerequisites, see [Continuous profiling](~~473143~~).****'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|cp.enable|Specifies whether to turn on the continuous profiling switch.|Valid values:\\- `true`: turns on the continuous profiling switch\\- `false`: turns off the continuous profiling switch\\* If you turn on this switch, you must configure the IP addresses on which the switch takes effect. Otherwise, the switch does not take effect. You can configure the IP addresses in the following two modes.|'."\n" + ."\n" + .'|||||'."\n" + .'|---|---|---|---|'."\n" + .'|Mode|Key|Description|Value|'."\n" + .'|IP address whitelist|cp.allowIPs|IP address whitelist|The IP addresses of the instances for which continuous profiling is enabled. Separate multiple IP addresses with commas (,).Example: 192.168.0.1,192.168.0.2|'."\n" + .'|cp.allowNetwork|CIDR block|Specify an empty string. Otherwise, continuous profiling does not work properly.|'."\n" + .'|CIDR block|cp.allowIPs|IP address whitelist|Specify an empty string. Otherwise, continuous profiling does not work properly.|'."\n" + .'|cp.allowNetwork|CIDR block|The CIDR block of the instances for which continuous profiling is enabled.Example: 192.168.2.0/24/24|'."\n" + ."\n" + .'**Data masking settings** ****Note: The data masking settings take effect only when the agent version is 2.9.0 or later.****'."\n" + ."\n" + .'|Key|Description|Value|'."\n" + .'|---|---|---|'."\n" + .'|sanitizer.enable|Specifies whether to turn on the data masking switch.|Valid values:\\- `true`: turns on the data masking switch\\- `false`: turns off the data masking switch|'."\n" + .'|sanitizer.keys|The data masking rules.|You can specify rules for data masking, as shown in the example. The specified rules are used as keys for exact matching. For example, if you specify password, the rule is equivalent to the regular expression .\\*password.\\*. The keys are not case-sensitive. Separate multiple rules with commas (,).Example: password,secret,key,token, and credentials|', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'GetTraceAppConfig' => [ + 'summary' => 'Queries all custom settings of an application monitored by Application Monitoring, such as trace sampling settings and agent switches. This operation is applicable only to applications that are monitored by Application Monitoring. It is not applicable to applications that are monitored by Managed Service for OpenTelemetry.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process ID (PID) of the application.'."\n" + ."\n" + .'You can use one of the following methods to obtain the PID:'."\n" + ."\n" + .'* API: Call the [ListTraceApps](~~2588008~~) operation'."\n" + .'* Console: Log on to the Application Real-Time Monitoring Service (ARMS) console. In the left-side navigation pane, choose **Application Monitoring** > **Application List**. On the Application List page, click the name of your application. The URL in the address bar contains the PID of the application. The PID is indicated in the pid=xxx format. The PID is usually percent encoded as xxx%40xxx. You must modify this value to remove the percent encoding. For example, if the PID in the URL is xxx%4074xxx, you must replace %40 with an at sign (@) to obtain xxx@74xxx.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* To obtain the PID in the console, your application must be monitored by Application Monitoring rather than Managed Service for OpenTelemetry.'."\n" + ."\n" + .'* The GetTraceAppConfig operation can query only the custom settings of applications that are monitored by Application Monitoring.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'a2n80plglh@745eddxxx'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****'."\n", + ], + 'Data' => [ + 'description' => 'The custom settings of the application, which is a JSON string. For more information, see **Additional description of response parameters**.'."\n", + 'type' => 'string', + 'example' => '{"profiler":{"enable":true}}', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Code' => [ + 'description' => 'The HTTP status code.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 2xx: The request was successful.'."\n" + .'* 3xx: The request was redirected.'."\n" + .'* 4xx: A request error occurred.'."\n" + .'* 5xx: A server error occurred.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'enumValueTitles' => [ + '2xx' => '', + '3xx' => '', + '4xx' => '', + '5xx' => '', + ], + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterPidMissing', + 'errorMessage' => 'You must specify pid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'AppNotExist', + 'errorMessage' => 'The application does not exist.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\\\n\\",\\n \\"Data\\": \\"{\\\\\\"profiler\\\\\\":{\\\\\\"enable\\\\\\":true}}\\",\\n \\"Message\\": \\"查询应用配置成功\\",\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetTraceAppConfig', + 'responseParamsDescription' => 'The following tables describe the JSONPath parameter corresponding to each custom setting. Note: **Some custom settings may not be returned in the response** because they are modified at different points in time. In this case, the default values take effect.'."\n" + ."\n" + .'**Sampling settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Sampling policy|profiler.sampling.useSamplingStrategyV2|boolean|Valid values:<br />\\- `true`: adaptive sampling<br />\\- `false`: fixed-rate sampling|false|'."\n" + .'|Sampling rate|profiler.sampling.rate|double|0% to 100%<br />This setting takes effect for fixed-rate sampling.|10|'."\n" + .'|API endpoint for full collection|profiler.sampling.v2config.spanNames4FullSampleStr|String|The API endpoint whose trace data is collected. Separate multiple values with commas (,).|""|'."\n" + .'|API endpoint prefix for full collection|profiler.sampling.v2config.spanNamePrefixes4FullSampleStr|String|The prefix of the API endpoint whose trace data is collected.|""|'."\n" + .'|API endpoint suffix for full collection|profiler.sampling.v2config.spanNameSuffixes4FullSampleStr|String|The suffix of the API endpoint whose trace data is collected.|""|'."\n" + ."\n" + .'**Agent switch settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Application Monitoring switch|profiler.enable|boolean|Valid values:<br />\\- `true`: enables Application Monitoring<br />\\- `false`: disables Application Monitoring|true|'."\n" + .'|Dubbo plug-in switch|profiler.dubbo.enable|boolean|Valid values:<br />\\- `true`: enables the Dubbo plug-in<br />\\- `false`: disables the Dubbo plug-in|true|'."\n" + .'|MongoDB plug-in switch|profiler.mongodb.enable|boolean|Valid values:<br />\\- `true`: enables the MongoDB plug-in<br />\\- `false`: disables the MongoDB plug-in|true|'."\n" + .'|HSF plug-in switch|profiler.hsf.enable|boolean|Valid values:<br />\\- `true`: enables the HSF plug-in<br />\\- `false`: disables the HSF plug-in|true|'."\n" + .'|HttpClient 3 plug-in switch|profiler.httpclient3.enable|boolean|Valid values:<br />\\- `true`: enables the HttpClient 3 plug-in<br />\\- `false`: disables the HttpClient 3 plug-in|true|'."\n" + .'|HttpClient 4 plug-in switch|profiler.httpclient4.enable|boolean|Valid values:<br />\\- `true`: enables the HttpClient 4 plug-in<br />\\- `false`: disables the HttpClient 4 plug-in|true|'."\n" + .'|JDK HTTP plug-in switch|profiler.jdkhttp.enable|boolean|Valid values:<br />\\- `true`: enables the JDK HTTP plug-in<br />\\- `false`: disables the JDK HTTP plug-in|true|'."\n" + .'|Jetty plug-in switch|profiler.jetty.enable|boolean|Valid values:<br />\\- `true`: enables the Jetty plug-in<br />\\- `false`: disables the Jetty plug-in|true|'."\n" + .'|MyBatis plug-in switch|profiler.mybatis.enable|boolean|Valid values:<br />\\- `true`: enables the MyBatis plug-in<br />\\- `false`: disables the MyBatis plug-in|true|'."\n" + .'|MySQL plug-in switch|profiler.mysql.enable|boolean|Valid values:<br />\\- `true`: enables the MySQL plug-in<br />\\- `false`: disables the MySQL plug-in|true|'."\n" + .'|OkHttp plug-in switch|profiler.okhttp.enable|boolean|Valid values:<br />\\- `true`: enables the OkHttp plug-in<br />\\- `false`: disables the OkHttp plug-in|true|'."\n" + .'|Oracle plug-in switch|profiler.oracle.enable|boolean|Valid values:<br />\\- `true`: enables the Oracle plug-in<br />\\- `false`: disables the Oracle plug-in|true|'."\n" + .'|PostgreSQL plug-in switch|profiler.postgresql.enable|boolean|Valid values:<br />\\- `true`: enables the PostgreSQL plug-in<br />\\- `false`: disables the PostgreSQL plug-in|true|'."\n" + .'|Redis plug-in switch|profiler.redis.enable|boolean|Valid values:<br />\\- `true`: enables the Redis plug-in<br />\\- `false`: disables the Redis plug-in|true|'."\n" + .'|Spring plug-in switch|profiler.spring.enable|boolean|Valid values:<br />\\- `true`: enables the Spring plug-in<br />\\- `false`: disables the Spring plug-in|true|'."\n" + .'|Spring Boot plug-in switch|profiler.springboot.enable|boolean|Valid values:<br />\\- `true`: enables the Spring Boot plug-in<br />\\- `false`: disables the Spring Boot plug-in|true|'."\n" + .'|Tomcat plug-in switch|profiler.tomcat.enable|boolean|Valid values:<br />\\- `true`: enables the Tomcat plug-in<br />\\- `false`: disables the Tomcat plug-in|true|'."\n" + .'|Lettuce plug-in switch|profiler.lettuce.enable|boolean|Valid values:<br />\\- `true`: enables the Lettuce plug-in<br />\\- `false`: disables the Lettuce plug-in|true|'."\n" + .'|gRPC plug-in switch|profiler.grpc.enable|boolean|Valid values:<br />\\- `true`: enables the gRPC plug-in<br />\\- `false`: disables the gRPC plug-in|true|'."\n" + .'|Thrift plug-in switch|profiler.thrift.enable|boolean|Valid values:<br />\\- `true`: enables the Thrift plug-in<br />\\- `false`: disables the Thrift plug-in|true|'."\n" + .'|Hystrix plug-in switch|profiler.hystrix.enable|boolean|Valid values:<br />\\- `true`: enables the Hystrix plug-in<br />\\- `false`: disables the Hystrix plug-in|true|'."\n" + .'|RxJava plug-in switch|profiler.rxjava.enable|boolean|Valid values:<br />\\- `true`: enables the RxJava plug-in<br />\\- `false`: disables the RxJava plug-in|true|'."\n" + .'|Memcached plug-in switch|profiler.memcached.enable|boolean|Valid values:<br />\\- `true`: enables the Memcached plug-in<br />\\- `false`: disables the Memcached plug-in|true|'."\n" + .'|Druid plug-in switch|profiler.jdbc.druid.enable|boolean|Valid values:<br />\\- `true`: enables the Druid plug-in<br />\\- `false`: disables the Druid plug-in|true|'."\n" + .'|WebLogic plug-in switch|profiler.weblogic.enable|boolean|Valid values:<br />\\- `true`: enables the WebLogic plug-in<br />\\- `false`: disables the WebLogic plug-in|true|'."\n" + .'|ElasticJob plug-in switch|profiler.elasticjob.enable|boolean|Valid values:<br />\\- `true`: enables the ElasticJob plug-in<br />\\- `false`: disables the ElasticJob plug-in|true|'."\n" + .'|Elasticsearch plug-in switch|profiler.elasticsearch.enable|boolean|Valid values:<br />\\- `true`: enables the Elasticsearch plug-in<br />\\- `false`: disables the Elasticsearch plug-in|true|'."\n" + .'|HikariCP plug-in switch|profiler.jdbc.hikaricp.enable|boolean|Valid values:<br />\\- `true`: enables the HikariCP plug-in<br />\\- `false`: disables the HikariCP plug-in|true|'."\n" + .'|InfluxDB plug-in switch|profiler.influxdb.enable|boolean|Valid values:<br />\\- `true`: enables the InfluxDB plug-in<br />\\- `false`: disables the InfluxDB plug-in|true|'."\n" + .'|Kafka plug-in switch|profiler.kafka.enable|boolean|Valid values:<br />\\- `true`: enables the Kafka plug-in<br />\\- `false`: disables the Kafka plug-in|true|'."\n" + .'|Netty plug-in switch|profiler.netty.enable|boolean|Valid values:<br />\\- `true`: enables the Netty plug-in<br />\\- `false`: disables the Netty plug-in|true|'."\n" + .'|Play plug-in switch|profiler.play.enable|boolean|Valid values:<br />\\- `true`: enables the Play plug-in<br />\\- `false`: disables the Play plug-in|true|'."\n" + .'|Reactor plug-in switch|profiler.reactor.enable|boolean|Valid values:<br />\\- `true`: enables the Reactor plug-in<br />\\- `false`: disables the Reactor plug-in|true|'."\n" + .'|Redisson plug-in switch|profiler.redis.redisson.enable|boolean|Valid values:<br />\\- `true`: enables the Redisson plug-in<br />\\- `false`: disables the Redisson plug-in|true|'."\n" + .'|RabbitMQ plug-in switch|profiler.rabbitmq.client.enable|boolean|Valid values:<br />\\- `true`: enables the RabbitMQ plug-in<br />\\- `false`: disables the RabbitMQ plug-in|true|'."\n" + .'|SchedulerX plug-in switch|profiler.schedulerx.enable|boolean|Valid values:<br />\\- `true`: enables the SchedulerX plug-in<br />\\- `false`: disables the SchedulerX plug-in|true|'."\n" + .'|Undertow plug-in switch|profiler.undertow.enable|boolean|Valid values:<br />\\- `true`: enables the Undertow plug-in<br />\\- `false`: disables the Undertow plug-in|true|'."\n" + .'|Vert.x plug-in switch|profiler.vertx.enable|boolean|Valid values:<br />\\- `true`: enables the Vert.x plug-in<br />\\- `false`: disables the Vert.x plug-in|true|'."\n" + .'|XXL-JOB plug-in switch|profiler.xxljob.enable|boolean|Valid values:<br />\\- `true`: enables the XXL-JOB plug-in<br />\\- `false`: disables the XXL-JOB plug-in|true|'."\n" + .'|ONS Client plug-in switch|profiler.onsclient.enable|boolean|Valid values:<br />\\- `true`: enables the ONS Client plug-in<br />\\- `false`: disables the ONS Client plug-in|true|'."\n" + .'|Quartz plug-in switch|profiler.quartz.enable|boolean|Valid values:<br />\\- `true`: enables the Quartz plug-in<br />\\- `false`: disables the Quartz plug-in|true|'."\n" + .'|Servlet plug-in switch|profiler.servlet.enable|boolean|Valid values:<br />\\- `true`: enables the Servlet plug-in<br />\\- `false`: disables the Servlet plug-in|true|'."\n" + .'|Liberty plug-in switch|profiler.liberty.enable|boolean|Valid values:<br />\\- `true`: enables the Liberty plug-in<br />\\- `false`: disables the Liberty plug-in|true|'."\n" + .'|Akka plug-in switch|profiler.akka.enable|boolean|Valid values:<br />\\- `true`: enables the Akka plug-in<br />\\- `false`: disables the Akka plug-in|true|'."\n" + .'|Cassandra plug-in switch|profiler.cassandra.enable|boolean|Valid values:<br />\\- `true`: enables the Cassandra plug-in<br />\\- `false`: disables the Cassandra plug-in|true|'."\n" + .'|OpenTelemetry plug-in switch|profiler.opentelemetry.enable|boolean|Valid values:<br />\\- `true`: enables the OpenTelemetry plug-in<br />\\- `false`: disables the OpenTelemetry plug-in|true|'."\n" + .'|Google HTTP Client plug-in switch|profiler.googlehttpclient.enable|boolean|Valid values:<br />\\- `true`: enables the Google HTTP Client plug-in<br />\\- `false`: disables the Google HTTP Client plug-in|true|'."\n" + .'|Ning plug-in switch|profiler.ning.asynchttpclient.enable|boolean|Valid values:<br />\\- `true`: enables the Ning plug-in<br />\\- `false`: disables the Ning plug-in|true|'."\n" + ."\n" + .'**Thread profiling settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Thread profiling switch|profiler.tprof.enableJvmThreadStatistic|boolean|Valid values:<br />\\- `true`: enables thread profiling<br />\\- `false`: disables thread profiling|true|'."\n" + .'|Switch for periodically saving local method stacks|profiler.tprof.enableThreadStackRecorder|boolean|Valid values:<br />\\- `true`: enables periodic storage of local method stacks<br />\\- `false`: disables periodic storage of local method stacks|false|'."\n" + .'|Threshold for time-consuming calls|profiler.tprof. threadProfilerSlowInteractionRt|int|Unit: ms. If the duration exceeds the threshold, the local method stack is automatically saved.|2000|'."\n" + ."\n" + .'**Application log association settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Log source|profiler.logSource|String|Valid values:<br />\\- `sls`: Simple Log Service|sls|'."\n" + .'|Switch for automatically associating business logs with trace IDs|profiler.logging.enable|boolean|Valid values:<br />\\- `true`: enables the association of business logs with trace IDs<br />\\- `false`: disables the association of business logs with trace IDs|true|'."\n" + .'|Switch for automatically filling in trace IDs in logs|profiler.logging.injectTraceId2Log.enable|boolean|Valid values:<br />\\- `true`: enables the automatic filling of span IDs in logs<br />\\- `false`: disables the automatic filling of span IDs in logs<br />This setting takes effect for ARMS agents V4.1.6 or later.|true|'."\n" + .'|Switch for automatically filling in span IDs in logs|profiler.logging.injectSpanId2Log.enable|boolean|Valid values:<br />\\- `true`: enables the automatic filling of span IDs in logs<br />\\- `false`: disables the automatic filling of span IDs in logs<br />This setting takes effect for ARMS agents V4.1.6 or later.|true|'."\n" + .'|Associate Simple Log Service - Region|profiler.SLS.regionId|String|The region where the associated log source resides.|""|'."\n" + .'|Associate Simple Log Service - Project|profiler.SLS.project|String|The project to which the associated log source belongs.|""|'."\n" + .'|Associate Simple Log Service - Logstore|profiler.SLS.logStore|String|The Logstore to which the associated log source belongs.|""|'."\n" + .'|Associate Simple Log Service - Associated index|profiler.SLS.index|String|The index of the associated log source.|""|'."\n" + ."\n" + .'**URL convergence settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Convergence URL|profiler.convergence.enable|boolean|Valid values:<br />\\- `true`: enables the URL convergence feature<br />\\- `false`: disables the URL convergence feature|true|'."\n" + .'|Convergence threshold|profiler.convergence.minServerSize|long|URLs are converged when the threshold is reached.|1000|'."\n" + .'|Convergence rule|profiler.convergence.pattern|String|Each rule is a regular expression.<br />Example: `/service/(.*?)/demo`.<br />Separate multiple rules with commas (,).|""|'."\n" + ."\n" + .'**Arthas settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Arthas switch|profiler.arthas.enable|boolean|Valid values:<br />\\- `true`: enables the Arthas diagnostics feature<br />\\- `false`: disables the Arthas diagnostics feature|false|'."\n" + .'|IP address effective in real time|profiler.arthas.enableIps|string|The IP addresses for which the Arthas diagnostics feature is enabled. Separate multiple IP addresses with commas (,).<br />**An empty string indicates that the Arthas diagnostics feature is enabled for all IP addresses.**|""|'."\n" + ."\n" + .'**Continuous profiling settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Switch|profiler.cp.enable|boolean|Valid values:<br />\\- `true`: enables the continuous profiling feature<br />\\- `false`: disables the continuous profiling feature<br />\\* After the switch is turned on, two configuration modes are available, as shown in the following table.|false|'."\n" + .'|CPU hotspot|profiler.cp.cpuEnable|boolean|Valid values:<br />\\- `true`: enables the CPU hotspot feature<br />\\- `false`: disables the CPU hotspot feature|false|'."\n" + .'|Memory hotspot|profiler.cp.allocEnable|boolean|Valid values:<br />\\- `true`: enables the memory hotspot feature<br />\\- `false`: disables the memory hotspot feature|false|'."\n" + .'|Code hotspot|profiler.cp.wallClockEnable|boolean|Valid values:<br />\\- `true`: enables the code hotspot feature<br />\\- `false`: disables the code hotspot feature|false|'."\n" + ."\n" + .'|||||'."\n" + .'|---|---|---|---|'."\n" + .'|Mode|Key|Field|Value|'."\n" + .'|IP address whitelist|cp.allowIPs|IP address whitelist|The IP address of the instances for which continuous profiling is enabled. Separate multiple values with commas (,).<br />Example: 192.168.0.1,192.168.0.2|'."\n" + .'|cp.allowNetwork|CIDR block|Specify an empty string. Otherwise, this feature does not work properly.|'."\n" + .'|CIDR block|cp.allowIPs|IP address whitelist|Specify an empty string. Otherwise, this feature does not work properly.|'."\n" + .'|cp.allowNetwork|CIDR block|The CIDR block of the instances for which continuous profiling is enabled.<br />Example: 192.168.2.0/24/24|'."\n" + ."\n" + .'**Data masking settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Data masking switch|profiler.sanitizer.enable|boolean|Valid values:<br />\\- `true`: enables the data masking feature<br />\\- `false`: disables the data masking feature|true|'."\n" + .'|Data masking rule|profiler.sanitizer.keys|String|Case-insensitive matching of sensitive keys containing specified terms. Separate multiple IP addresses with commas (,).|true|'."\n" + ."\n" + .'**Operation call settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Slow request threshold|profiler.thresholds.interface|long|Unit: ms. If the response time is longer than this threshold, the request is marked as slow.|500|'."\n" + .'|Exception whitelist|profiler.exception.whitelist|String|Specify regular expressions for exception names, where matching exceptions are excluded from statistical charts. Separate multiple rules with commas (,).|""|'."\n" + .'|Exception filtering through parent class inheritance|profiler.exception.filterByParentClass|boolean|Valid values:<br />\\- `true`: enables the feature<br />\\- `false`: disables the feature<br />After the feature is enabled, you can configure parent exceptions in exception filtering.<br />This setting takes effect for ARMS agents V4.1.6 or later.|true|'."\n" + .'|HTTP status code whitelist|profiler.error.skip|String|The HTTP status codes you want to ignore. Separate multiple values with commas (,).|""|'."\n" + .'|Filtering of invalid API calls|profiler.defined.excludeurl|String|The API calls that are ignored. Each rule is a regular expression. Separate multiple values with commas (,).|/\\*\\*/\\*.jpg,/\\*\\*/\\*.png,/\\*\\*/\\*.js,<br />/\\*\\*/\\*.jpeg,/\\*\\*/\\*.pdf,/\\*\\*/\\*.xlsx,<br />/\\*\\*/\\*.txt,/\\*\\*/\\*.docs,/\\*\\*/\\*.gif,<br />/\\*\\*/\\*.csv|'."\n" + ."\n" + .'**Database call settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Slow SQL query threshold|profiler.thresholds.sql|long|Unit: ms. If the duration of an SQL query exceeds the threshold, the query is marked as slow.|500|'."\n" + .'|Maximum SQL capture retention length|profiler.callsql.maxLength|long|If the value of an SQL statement exceeds the threshold, the SQL statement is truncated.|1024|'."\n" + .'|Switch for displaying bound variables in SQL statements|profiler.jdbc.tracesqlbindvalue|boolean|Valid values:<br />\\- `true`: enables the feature<br />\\- `false`: disables the feature<br />If you turn on this switch, the variable values bound to the PrepareStatement parameter are captured and displayed on the page. **Only MySQL is supported.**|false|'."\n" + .'|Switch for displaying constants in SQL statements|profiler.jdbc. tracesqlraw|boolean|Valid values:<br />\\- `true`: enables the feature<br />\\- `false`: disables the feature<br />After the feature is enabled, raw SQL statements are captured.|false|'."\n" + ."\n" + .'**Tracing protocol settings**'."\n" + ."\n" + .'****Note: The context propagation protocol settings take effect only for ARMS agents V4.1.x or later.****'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Context propagation protocol|profiler.trace.protocol.name|String|Valid values:<br />\\- `Unset`: not set<br />\\- `W3C`: OpenTelemetry W3C<br />\\- `SkyWalking`<br />\\- `Zipkin`: Zipkin B3<br />\\- `Jaeger`<br />\\- `EagleEye`|Unset|'."\n" + .'|Context propagation mode|profiler.trace.protocol. strategy|String|Valid values:<br />\\- `PriorityUse`<br />\\- `ForceUse`|PriorityUse|'."\n" + ."\n" + .'**Advanced settings**'."\n" + ."\n" + .'|Setting|JSONPath|Type|Description|Default value|'."\n" + .'|---|---|---|---|---|'."\n" + .'|Maximum number of traces collected by the agent per second|profiler.thresholds.limit|int|A protective measure to ensure business operations are not impacted by trace collection in high traffic.|100|'."\n" + .'|Method stack retention limit|profiler.callstack.maxLength|int|If the length of a method stack exceeds the threshold, the method stack is truncated during collection.<br />This setting is deprecated for ARMS agents **V4.0.0 or later**.|128|'."\n" + .'|Stack depth for same-type exceptions|profiler.exception.stacktrace|int|The stack depth based on which the system identifies the same type of exceptions.|2|'."\n" + .'|Maximum display length of request parameters|profiler.param.maxLength|int|The maximum display length of request parameters.|512|'."\n" + .'|Custom RabbitMQ consumer|profiler.rabbitmq.client.consumer.classes|String|The fully qualified class names of RabbitMQ consumers. Separate multiple consumers with commas (,).<br />This setting is deprecated for ARMS agents **V4.0.0 or later**.|""|'."\n" + .'|Custom Kafka consumption method|profiler.kafka.consumer.entryPoint|String|The consumption method of the Kafka consumer.<br />This setting is deprecated for ARMS agents **V4.0.0 or later**.|""|'."\n" + .'|Switch for automatically propagating context when Kafka sends messages|profiler.kafka.enableInjectKafkaHeaders|boolean|Specifies whether to automatically inject tracing headers to Kafka messages to associate the sending trace with the consumption trace.<br />This setting is deprecated for ARMS agents **V4.0.0 or later**.|false|'."\n" + .'|Package name for asynchronous propagation|profiler.thread.match.package|String|When a Runnable, Callable, Supplier under the specified package is created, the trace context is automatically captured and propagated to the new thread. Separate multiple package names with commas (,).<br />This setting is deprecated for ARMS agents **V4.0.0 or later**.|""|'."\n" + .'|Inclusion of trace IDs in an HTTP response|profiler.responseInject.enable|boolean|Valid values:<br />\\- `true`: enables the feature<br />\\- `false`: disables the feature|false|', + ], + 'DeleteTraceApp' => [ + 'summary' => 'Deletes an application based on a specified process identifier (PID) and application type.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the application that you want to delete. You can call the SearchTraceAppByName operation to query the application ID. For more information, see [SearchTraceAppByName](~~130676~~).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => false, + 'example' => '5406**', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region in which the application is located.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the application that you want to delete. You can call the SearchTraceAppByName operation to query the application type. For more information, see [SearchTraceAppByName](~~130676~~). Valid values:'."\n" + ."\n" + .'* `TRACE`: Application Monitoring'."\n" + .'* `RETCODE`: frontend monitoring'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'TRACE', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The PID of the application. For more information about how to query the PID, see [QueryMetricByPage](https://www.alibabacloud.com/help/zh/doc-detail/186100.htm?spm=a2cdw.13409063.0.0.7a72281f0bkTfx#title-imy-7gj-qhr).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '9w0sc5gxxz@edcsd447c2f****', + ], + ], + [ + 'name' => 'DeleteReason', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The reason(s) to delete application.', + 'type' => 'object', + 'properties' => [ + 'Remark' => [ + 'description' => 'Additional remarks when none of the reasons for removal provided are met.', + 'type' => 'string', + 'required' => false, + 'example' => 'The business scenario cannot be satisfied.', + ], + 'ReasonIds' => [ + 'description' => 'Reasons Ids.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the reason for deletion.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'Name' => [ + 'description' => 'A description of the reason for removal.', + 'type' => 'string', + 'required' => false, + 'example' => 'The function is not perfect, and the root cause of the problem cannot be located.', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The response in JSON format, including the HTTP status code, error code, response message, and trace ID.'."\n", + 'type' => 'string', + 'example' => '"{\\\\"code\\\\":200,\\\\"data\\\\":\\\\"{\\\\\\\\\\"code\\\\\\\\\\":200,\\\\\\\\\\"data\\\\\\\\\\":true,\\\\\\\\\\"errorCode\\\\\\\\\\":\\\\\\\\\\"The application is deleted\\\\\\\\\\",\\\\\\\\\\"message\\\\\\\\\\":\\\\\\\\\\"The application is deleted\\\\\\\\\\",\\\\\\\\\\"success\\\\\\\\\\":true,\\\\\\\\\\"traceId\\\\\\\\\\":\\\\\\\\\\"0bc0594d15954826692915817e\\*\\*\\*\\*\\\\\\\\\\"}\\\\",\\\\"errorCode\\\\":\\\\"The application is deleted\\\\",\\\\"message\\\\":\\\\"The application is deleted\\\\",\\\\"success\\\\":true,\\\\"traceId\\\\":\\\\"0ab2646915954826692568137d\\*\\*\\*\\*\\\\"}'."\n", + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '46355DD8-FC56-40C5-BFC6-269DE4F9****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'true: The request was successful.'."\n" + ."\n" + .'false: The request failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => 'Illegal user access.', + ], + ], + 406 => [ + [ + 'errorCode' => 'AgentNotUninstalled', + 'errorMessage' => 'agent not uninstalled.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"{\\\\\\\\\\\\\\"code\\\\\\\\\\\\\\":200,\\\\\\\\\\\\\\"data\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"code\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":200,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"data\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"errorCode\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"删除应用成功\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"message\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"删除应用成功\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"success\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"traceId\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"0bc0594d15954826692915817e****\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"errorCode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"删除应用成功\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"message\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"删除应用成功\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"success\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"traceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0ab2646915954826692568137d****\\\\\\\\\\\\\\"}\\",\\n \\"RequestId\\": \\"46355DD8-FC56-40C5-BFC6-269DE4F9****\\",\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteTraceAppResponse>\\n\\t<RequestId>46355DD8-FC56-40C5-BFC6-269DE4F9****</RequestId>\\n\\t<Data>{\\"code\\":200,\\"data\\":\\"{\\\\\\"code\\\\\\":200,\\\\\\"data\\\\\\":true,\\\\\\"errorCode\\\\\\":\\\\\\"删除应用成功\\\\\\",\\\\\\"message\\\\\\":\\\\\\"删除应用成功\\\\\\",\\\\\\"success\\\\\\":true,\\\\\\"traceId\\\\\\":\\\\\\"0bc0594d15954826692915817e****\\\\\\"}\\",\\"errorCode\\":\\"删除应用成功\\",\\"message\\":\\"删除应用成功\\",\\"success\\":true,\\"traceId\\":\\"0ab2646915954826692568137d****\\"}</Data>\\n</DeleteTraceAppResponse>","errorExample":""}]', + 'title' => 'DeleteTraceApp', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'QueryReleaseMetric' => [ + 'summary' => 'Queries the metrics that are provided for different versions of a specified Enterprise Distributed Application Service (EDAS) or Kubernetes application.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Enterprise Distributed Application Service (EDAS) or Kubernetes application.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '8b46d03f-5947-449d-90fd-3a96c2******', + ], + ], + [ + 'name' => 'ChangeOrderId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the change order.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'a341a2f2-ed07-4257-aae9-dfb1be******', + ], + ], + [ + 'name' => 'ReleaseStartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time of the version release.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1632798686692', + ], + ], + [ + 'name' => 'ReleaseEndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time of the version release.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1632798718632', + ], + ], + [ + 'name' => 'CreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time when the change order was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1634005438000', + ], + ], + [ + 'name' => 'Service', + 'in' => 'query', + 'schema' => [ + 'description' => 'The service that you want to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'clothservice', + ], + ], + [ + 'name' => 'MetricType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the metric that you want to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SystemContrast', + ], + ], + [ + 'name' => 'ProxyUserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter is not in use.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'null', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The returned metric data.'."\n", + 'type' => 'string', + 'example' => '{"data":{"SystemCpuUser":{"all":[{"date":1632798718000,"val":4.3277,"dim":"SystemCpuUser"},{"date":1632798733000,"val":8.1091,"dim":"SystemCpuUser"}]},"SystemMemUtil":{"all":[{"date":1632798718000,"val":73.4227,"dim":"SystemMemUtil"},{"date":1632798733000,"val":93.0977,"dim":"SystemMemUtil"}]}},"success":true}', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '46355DD8-FC56-40C5-BFC6-269DE4F9****', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"{\\\\\\"data\\\\\\":{\\\\\\"SystemCpuUser\\\\\\":{\\\\\\"all\\\\\\":[{\\\\\\"date\\\\\\":1632798718000,\\\\\\"val\\\\\\":4.3277,\\\\\\"dim\\\\\\":\\\\\\"SystemCpuUser\\\\\\"},{\\\\\\"date\\\\\\":1632798733000,\\\\\\"val\\\\\\":8.1091,\\\\\\"dim\\\\\\":\\\\\\"SystemCpuUser\\\\\\"}]},\\\\\\"SystemMemUtil\\\\\\":{\\\\\\"all\\\\\\":[{\\\\\\"date\\\\\\":1632798718000,\\\\\\"val\\\\\\":73.4227,\\\\\\"dim\\\\\\":\\\\\\"SystemMemUtil\\\\\\"},{\\\\\\"date\\\\\\":1632798733000,\\\\\\"val\\\\\\":93.0977,\\\\\\"dim\\\\\\":\\\\\\"SystemMemUtil\\\\\\"}]}},\\\\\\"success\\\\\\":true}\\",\\n \\"RequestId\\": \\"46355DD8-FC56-40C5-BFC6-269DE4F9****\\"\\n}","type":"json"}]', + 'title' => 'QueryReleaseMetric', + ], + 'ListTraceApps' => [ + 'summary' => 'Queries all Application Monitoring tasks in a specified region.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shenzhen', + ], + ], + [ + 'name' => 'AppType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the application that is associated with the alert rule. Valid values:'."\n" + ."\n" + .'- TRACE: Application Monitoring'."\n" + .'- EBPF: Application Monitoring eBPF Edition', + 'type' => 'string', + 'required' => false, + 'example' => 'TRACE', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned for the request. Valid values:'."\n" + ."\n" + .'* `2XX`: The request is successful.'."\n" + .'* `3XX`: A redirection message is returned.'."\n" + .'* `4XX`: The request is invalid.'."\n" + .'* `5XX`: A server error occurs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message returned if the request parameters are invalid.'."\n", + 'type' => 'string', + 'example' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '40B10E04-81E8-4643-970D-F1B38F2E****', + ], + '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', + ], + 'TraceApps' => [ + 'description' => 'The list of Application Monitoring tasks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the monitoring task. Valid values:'."\n" + ."\n" + .'* `TRACE`: Application Monitoring'."\n" + .'* `RETCODE`: Browser Monitoring'."\n", + 'type' => 'string', + 'example' => 'TRACE', + ], + 'AppName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'test-app', + ], + 'UpdateTime' => [ + 'description' => 'The time when the monitoring task was updated. The value is a timestamp. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1529667762000', + ], + 'Show' => [ + 'description' => 'Indicates whether the application is displayed in the Application Real-Time Monitoring Service (ARMS) console. Valid values:'."\n" + ."\n" + .'* `true`: yes'."\n" + .'* `false`: no'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'CreateTime' => [ + 'description' => 'The time when the monitoring task was created. The value is a timestamp. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1529667762000', + ], + 'Pid' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'example' => 'a5f9bdeb-2627-4dbe-9247-****', + ], + 'AppId' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Labels' => [ + 'description' => 'The labels of the application.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The value of the application label.'."\n", + 'type' => 'string', + 'example' => 'prod', + ], + ], + 'Tags' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'TestValue', + ], + ], + 'description' => '', + ], + ], + 'ResourceGroupId' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'example' => 'Resource group'."\n", + ], + 'Source' => [ + 'description' => 'The application source.'."\n", + 'type' => 'string', + 'example' => 'ACK', + ], + 'WorkloadName' => [ + 'description' => 'The name of the workload.', + 'type' => 'string', + 'example' => 'nginx-deployment ', + ], + 'WorkloadKind' => [ + 'description' => 'The type of the workload.', + 'type' => 'string', + 'example' => 'Deployment', + ], + 'Namespace' => [ + 'description' => 'The namespace.', + 'type' => 'string', + 'example' => 'default', + ], + 'ClusterId' => [ + 'description' => 'The cluster ID.', + 'type' => 'string', + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + 'Language' => [ + 'description' => 'The language.', + 'type' => 'string', + 'example' => 'PHP', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => '必选参数不能为空', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.\\",\\n \\"RequestId\\": \\"40B10E04-81E8-4643-970D-F1B38F2E****\\",\\n \\"Success\\": true,\\n \\"TraceApps\\": [\\n {\\n \\"Type\\": \\"TRACE\\",\\n \\"AppName\\": \\"test-app\\",\\n \\"UpdateTime\\": 1529667762000,\\n \\"Show\\": true,\\n \\"CreateTime\\": 1529667762000,\\n \\"Pid\\": \\"a5f9bdeb-2627-4dbe-9247-****\\",\\n \\"AppId\\": 123,\\n \\"UserId\\": \\"113197164949****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Labels\\": [\\n \\"prod\\"\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ],\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\",\\n \\"Source\\": \\"ACK\\",\\n \\"WorkloadName\\": \\"nginx-deployment \\",\\n \\"WorkloadKind\\": \\"Deployment\\",\\n \\"Namespace\\": \\"default\\",\\n \\"ClusterId\\": \\"cc7a37ee31aea4ed1a059eff8034b****\\",\\n \\"Language\\": \\"PHP\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListTraceAppsResponse>\\n\\t<TraceApps>\\n\\t\\t<Type>TRACE</Type>\\n\\t\\t<AppId>123</AppId>\\n\\t\\t<UserId>113197164949****</UserId>\\n\\t\\t<CreateTime>1571865746000</CreateTime>\\n\\t\\t<UpdateTime>1571865746000</UpdateTime>\\n\\t\\t<Pid>a5f9bdeb-2627-4dbe-9247-****</Pid>\\n\\t\\t<Show>true</Show>\\n\\t\\t<RegionId>cn-hangzhou</RegionId>\\n\\t\\t<AppName>test-app</AppName>\\n\\t</TraceApps>\\n\\t<TraceApps>\\n\\t\\t<Type>TRACE</Type>\\n\\t\\t<AppId>234</AppId>\\n\\t\\t<UserId>113197164949****</UserId>\\n\\t\\t<CreateTime>1572401289000</CreateTime>\\n\\t\\t<UpdateTime>1572401289000</UpdateTime>\\n\\t\\t<Pid>be1f9a33-9c8e-445e-9115-****</Pid>\\n\\t\\t<Show>true</Show>\\n\\t\\t<RegionId>cn-hangzhou</RegionId>\\n\\t\\t<AppName>test-app2</AppName>\\n\\t</TraceApps>\\n\\t<TraceApps>\\n\\t\\t<Type>TRACE</Type>\\n\\t\\t<AppId>345</AppId>\\n\\t\\t<UserId>113197164949****</UserId>\\n\\t\\t<CreateTime>1576338375000</CreateTime>\\n\\t\\t<UpdateTime>1576338375000</UpdateTime>\\n\\t\\t<Pid>e04391e2-a7e0-4fbe-9987****</Pid>\\n\\t\\t<Show>true</Show>\\n\\t\\t<RegionId>cn-hangzhou</RegionId>\\n\\t\\t<AppName>test-app3</AppName>\\n\\t</TraceApps>\\n\\t<RequestId>40B10E04-81E8-4643-970D-F1B38F2E****</RequestId>\\n\\t<Code>200</Code>\\n\\t<Success>true</Success>\\n</ListTraceAppsResponse>","errorExample":""}]', + 'title' => 'ListTraceApps', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SearchTraceAppByName' => [ + 'summary' => 'Queries Application Monitoring tasks by application name.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'TraceAppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application.'."\n" + ."\n" + .'> If you do not specify this parameter, all application monitoring tasks in the specified region are queried.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'test-app', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'F7781D4A-2818-41E7-B7BB-79D809E9****', + ], + 'TraceApps' => [ + 'description' => 'The information about the monitoring task.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the monitoring task. Valid values:'."\n" + ."\n" + .'* `TRACE`: Application Monitoring'."\n" + .'* `RETCODE`: Browser Monitoring'."\n", + 'type' => 'string', + 'example' => 'TRACE', + ], + 'AppName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'test-app', + ], + 'UpdateTime' => [ + 'description' => 'The timestamp generated when the task information was updated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1593486786000', + ], + 'Show' => [ + 'description' => 'Indicates whether the application is displayed in the Application Real-Time Monitoring Service (ARMS) console. Valid values:'."\n" + ."\n" + .'* `true`: yes'."\n" + .'* `false`: no'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'CreateTime' => [ + 'description' => 'The timestamp generated when the task was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1593486786000', + ], + 'Pid' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'example' => 'a5f9bdeb-2627-4dbe-9247-****', + ], + 'AppId' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Labels' => [ + 'description' => 'The aliases of the application.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The alias of the application.'."\n", + 'type' => 'string', + 'example' => 'prod', + ], + ], + 'Tags' => [ + 'description' => 'A list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'TestValue', + ], + ], + ], + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmxyexli2****', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F7781D4A-2818-41E7-B7BB-79D809E9****\\",\\n \\"TraceApps\\": [\\n {\\n \\"Type\\": \\"TRACE\\",\\n \\"AppName\\": \\"test-app\\",\\n \\"UpdateTime\\": 1593486786000,\\n \\"Show\\": true,\\n \\"CreateTime\\": 1593486786000,\\n \\"Pid\\": \\"a5f9bdeb-2627-4dbe-9247-****\\",\\n \\"AppId\\": 123,\\n \\"UserId\\": \\"113197164949****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Labels\\": [\\n \\"prod\\"\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ],\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'SearchTraceAppByName', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SearchTraceAppByPage' => [ + 'summary' => 'Queries Application Monitoring tasks by page.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'TraceAppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'test-app', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return. Default value: `1`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => true, + '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, + 'docRequired' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'A list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4B446DF2-3DDD-4B5B-8E3F-D5225120****', + ], + 'PageBean' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + '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', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + 'TraceApps' => [ + 'description' => 'The information about the monitoring task.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the monitoring task. Valid values:'."\n" + ."\n" + .'* `TRACE`: Application Monitoring'."\n" + .'* `RETCODE`: Browser Monitoring'."\n", + 'type' => 'string', + 'example' => 'TRACE', + ], + 'AppName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'test-app', + ], + 'UpdateTime' => [ + 'description' => 'The timestamp generated when the task information was updated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1531291867000', + ], + 'Show' => [ + 'description' => 'Indicates whether the application is displayed in the Application Real-Time Monitoring Service (ARMS) console. Valid values:'."\n" + ."\n" + .'* `true`: yes'."\n" + .'* `false`: no'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'CreateTime' => [ + 'description' => 'The timestamp generated when the task was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1531291867000', + ], + 'Pid' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + 'AppId' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Labels' => [ + 'description' => 'The aliases of the application.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The alias of the application.'."\n", + 'type' => 'string', + 'example' => 'prod', + ], + ], + 'Tags' => [ + 'description' => 'A list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'TestValue', + ], + ], + ], + ], + 'ResourceGroupId' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmxyexli2****', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4B446DF2-3DDD-4B5B-8E3F-D5225120****\\",\\n \\"PageBean\\": {\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 3,\\n \\"TraceApps\\": [\\n {\\n \\"Type\\": \\"TRACE\\",\\n \\"AppName\\": \\"test-app\\",\\n \\"UpdateTime\\": 1531291867000,\\n \\"Show\\": true,\\n \\"CreateTime\\": 1531291867000,\\n \\"Pid\\": \\"atc889zkcf@d8deedfa9bf****\\",\\n \\"AppId\\": 123,\\n \\"UserId\\": \\"113197164949****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Labels\\": [\\n \\"prod\\"\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ],\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<SearchTraceAppByPageResponse>\\n\\t<PageBean>\\n\\t\\t<TotalCount>3</TotalCount>\\n\\t\\t<TraceApps>\\n\\t\\t\\t<Type>TRACE</Type>\\n\\t\\t\\t<AppId>123</AppId>\\n\\t\\t\\t<UserId>113197164949****</UserId>\\n\\t\\t\\t<CreateTime>1571865746000</CreateTime>\\n\\t\\t\\t<UpdateTime>1571865746000</UpdateTime>\\n\\t\\t\\t<Pid>b590lhguqs@50e2179afeb****</Pid>\\n\\t\\t\\t<Show>true</Show>\\n\\t\\t\\t<RegionId>cn-hangzhou</RegionId>\\n\\t\\t\\t<AppName>test-app</AppName>\\n\\t\\t</TraceApps>\\n\\t\\t<TraceApps>\\n\\t\\t\\t<Type>TRACE</Type>\\n\\t\\t\\t<AppId>234</AppId>\\n\\t\\t\\t<UserId>113197164949****</UserId>\\n\\t\\t\\t<CreateTime>1572401289000</CreateTime>\\n\\t\\t\\t<UpdateTime>1572401289000</UpdateTime>\\n\\t\\t\\t<Pid>b590lhguqs@b0175fb5bda****</Pid>\\n\\t\\t\\t<Show>true</Show>\\n\\t\\t\\t<RegionId>cn-hangzhou</RegionId>\\n\\t\\t\\t<AppName>test-app2</AppName>\\n\\t\\t</TraceApps>\\n\\t\\t<TraceApps>\\n\\t\\t\\t<Type>TRACE</Type>\\n\\t\\t\\t<AppId>345</AppId>\\n\\t\\t\\t<UserId>113197164949****</UserId>\\n\\t\\t\\t<CreateTime>1576338375000</CreateTime>\\n\\t\\t\\t<UpdateTime>1576338375000</UpdateTime>\\n\\t\\t\\t<Pid>b590lhguqs@3afb9343a31****</Pid>\\n\\t\\t\\t<Show>true</Show>\\n\\t\\t\\t<RegionId>cn-hangzhou</RegionId>\\n\\t\\t\\t<AppName>test-app3</AppName>\\n\\t\\t</TraceApps>\\n\\t\\t<PageSize>10</PageSize>\\n\\t\\t<PageNumber>1</PageNumber>\\n\\t</PageBean>\\n\\t<RequestId>4B446DF2-3DDD-4B5B-8E3F-D5225120****</RequestId>\\n</SearchTraceAppByPageResponse>","errorExample":""}]', + 'title' => 'SearchTraceAppByPage', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SearchTraces' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '1595174400000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '1595210400000', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ServiceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'arms-k8s-demo-subcomponent', + ], + ], + [ + 'name' => 'OperationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the traced span.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '/demo/queryNotExistDB/11', + ], + ], + [ + 'name' => 'MinDuration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The minimum amount of time consumed by traces. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2', + ], + ], + [ + 'name' => 'Reverse', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the query results in chronological order or reverse chronological order. Default value: `false`.'."\n" + ."\n" + .'* `true`: sorts the query results in reverse chronological order.'."\n" + .'* `false`: sorts the query results in chronological order.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ServiceIp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP address of the host where the application resides.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '172.20.XX.XX', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'b590lhguqs@9781be0f44dXXXX', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key. The following system preset fields are provided:'."\n" + ."\n" + .'* serverApp: the name of the server application.'."\n" + .'* clientApp: the name of the client application.'."\n" + .'* service: the name of the operation.'."\n" + .'* rpc: the type of the call.'."\n" + .'* msOfSpan: the duration exceeds a specific value.'."\n" + .'* clientIp: the IP address of the client.'."\n" + .'* serverIp: the IP address of the server.'."\n" + .'* isError: specifies whether the call is abnormal.'."\n" + .'* hasTprof: contains only thread profiling.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http.status_code', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '200', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + 'maxItems' => 5, + ], + ], + [ + 'name' => 'ExclusionFilters', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The filter conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key that is used to filter the query results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http.status_code', + ], + 'Value' => [ + 'description' => 'The value of the key that is used to filter the query results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '404', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + 'maxItems' => 5, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4C518054-852F-4023-ABC1-4AF95FF7****', + ], + 'TraceInfos' => [ + 'description' => 'The details of the returned traces.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'OperationName' => [ + 'description' => 'The name of the traced span.'."\n", + 'type' => 'string', + 'example' => 'get***', + ], + 'ServiceIp' => [ + 'description' => 'The IP address of the host where the application resides.'."\n", + 'type' => 'string', + 'example' => '172.20.**.**', + ], + 'Duration' => [ + 'description' => 'The amount of time consumed by the trace. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '6', + ], + 'Timestamp' => [ + 'description' => 'The timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1595174436993', + ], + 'ServiceName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'arms-k8s-demo-subcomponent', + ], + 'TraceID' => [ + 'description' => 'The trace ID.'."\n", + 'type' => 'string', + 'example' => 'ac1400a115951744369937024d****', + ], + 'SpanID' => [ + 'description' => 'Span ID. You can get it from the **Trace Explorer** page of the ARMS console.', + 'type' => 'string', + 'example' => 'be3d6dcf5750e***', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4C518054-852F-4023-ABC1-4AF95FF7****\\",\\n \\"TraceInfos\\": [\\n {\\n \\"OperationName\\": \\"get***\\",\\n \\"ServiceIp\\": \\"172.20.**.**\\",\\n \\"Duration\\": 6,\\n \\"Timestamp\\": 1595174436993,\\n \\"ServiceName\\": \\"arms-k8s-demo-subcomponent\\",\\n \\"TraceID\\": \\"ac1400a115951744369937024d****\\",\\n \\"SpanID\\": \\"be3d6dcf5750e***\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<SearchTracesResponse>\\n <RequestId>4C518054-852F-4023-ABC1-4AF95FF7****</RequestId>\\n <TraceInfos>\\n <OperationName>get***</OperationName>\\n <ServiceIp>172.20.**.**</ServiceIp>\\n <Duration>6</Duration>\\n <Timestamp>1595174436993</Timestamp>\\n <ServiceName>arms-k8s-demo-subcomponent</ServiceName>\\n <TraceID>ac1400a115951744369937024d****</TraceID>\\n </TraceInfos>\\n</SearchTracesResponse>","errorExample":""}]', + 'title' => 'SearchTraces', + 'summary' => 'Queries traces by time, application name, IP address, span name, and tag.', + 'description' => '> A maximum of 100 data entries can be returned each time this operation is called. If you want to query all existing traces, we recommend that you call the SearchTracesByPage operation. For more information, see [SearchTracesByPage](~~175866~~).'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SearchTracesByPage' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '1595174400000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '1595210400000', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ServiceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'arms-k8s-demo-subcomponent', + ], + ], + [ + 'name' => 'OperationName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the traced span.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '/demo/queryNotExistDB/11', + ], + ], + [ + 'name' => 'MinDuration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The minimum amount of time consumed by traces. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2', + ], + ], + [ + 'name' => 'Reverse', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the query results in chronological order or reverse chronological order. Default value: `false`.'."\n" + ."\n" + .'* `true`: sorts the query results in reverse chronological order.'."\n" + .'* `false`: sorts the query results in chronological order.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ServiceIp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP address of the host where the application resides.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '172.20.XX.XX', + ], + ], + [ + '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. Maximum value: 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'b590lhguqs@9781be0f44dXXXX', + ], + ], + [ + 'name' => 'ExclusionFilters', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The filter conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key that is used to filter the query results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http.status_code', + ], + 'Value' => [ + 'description' => 'The value of the key that is used to filter the query results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '404', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 5, + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag. The following system preset fields are provided:'."\n" + ."\n" + .'* traceId: the ID of the trace.'."\n" + .'* serverApp: the name of the server application.'."\n" + .'* clientApp: the name of the client application.'."\n" + .'* service: the name of the interface.'."\n" + .'* rpc: the type of the call.'."\n" + .'* msOfSpan: the duration exceeds a specific value.'."\n" + .'* clientIp: the IP address of the client.'."\n" + .'* serverIp: the IP address of the server.'."\n" + .'* isError: specifies whether the call is abnormal.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http.status_code', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '200', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 5, + ], + ], + [ + 'name' => 'IsError', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to include the traces of abnormal calls.'."\n" + ."\n" + .'* `true`: No'."\n" + .'* `false` (default): Yes'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4C518054-852F-4023-ABC1-4AF95FF7****', + ], + 'PageBean' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + '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' => '5', + ], + 'Total' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1601', + ], + 'TraceInfos' => [ + 'description' => 'The details of the returned traces.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'OperationName' => [ + 'description' => 'The name of the traced span.'."\n", + 'type' => 'string', + 'example' => '/demo/queryException/12', + ], + 'ServiceIp' => [ + 'description' => 'The IP address of the host where the application resides.'."\n", + 'type' => 'string', + 'example' => '172.20.XX.XX', + ], + 'Duration' => [ + 'description' => 'The amount of time consumed by the trace. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '679', + ], + 'Timestamp' => [ + 'description' => 'The timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1595174436994', + ], + 'ServiceName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'arms-k8s-demo-subcomponent', + ], + 'TraceID' => [ + 'description' => 'The trace ID.'."\n", + 'type' => 'string', + 'example' => 'ac1400a115951744369947025d****', + ], + 'SpanID' => [ + 'description' => 'The span ID of the trace.'."\n", + 'type' => 'string', + 'example' => 'be3d6dcf5750e***', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4C518054-852F-4023-ABC1-4AF95FF7****\\",\\n \\"PageBean\\": {\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 5,\\n \\"Total\\": 1601,\\n \\"TraceInfos\\": [\\n {\\n \\"OperationName\\": \\"/demo/queryException/12\\",\\n \\"ServiceIp\\": \\"172.20.XX.XX\\",\\n \\"Duration\\": 679,\\n \\"Timestamp\\": 1595174436994,\\n \\"ServiceName\\": \\"arms-k8s-demo-subcomponent\\",\\n \\"TraceID\\": \\"ac1400a115951744369947025d****\\",\\n \\"SpanID\\": \\"be3d6dcf5750e***\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<SearchTracesByPageResponse>\\n <RequestId>4C518054-852F-4023-ABC1-4AF95FF7****</RequestId>\\n <PageBean>\\n <PageNumber>1</PageNumber>\\n <PageSize>5</PageSize>\\n <Total>1601</Total>\\n <TraceInfos>\\n <OperationName>/demo/queryException/12</OperationName>\\n <ServiceIp>172.20.XX.XX</ServiceIp>\\n <Duration>679</Duration>\\n <Timestamp>1595174436994</Timestamp>\\n <ServiceName>arms-k8s-demo-subcomponent</ServiceName>\\n <TraceID>ac1400a115951744369947025d****</TraceID>\\n </TraceInfos>\\n </PageBean>\\n</SearchTracesByPageResponse>","errorExample":""}]', + 'title' => 'SearchTracesByPage', + 'summary' => 'Queries traces by page. You can query traces by time range, application name, IP address, span name, or tag.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'GetAgentDownloadUrlV2' => [ + 'summary' => 'Obtains the URL for downloading an agent.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AgentType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The agent type.\\'."\n" + .'**Valid values:**'."\n" + ."\n" + .'* **JavaAgent**'."\n" + .'* **Instgo**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'JavaAgent', + ], + ], + [ + 'name' => 'OsType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The operating system of the environment where the agent is installed.\\'."\n" + .'This parameter is required and valid only when **AgentType** is set to **Instgo**.\\'."\n" + .'**Valid values:**'."\n" + ."\n" + .'* **linux**'."\n" + .'* **darwin**'."\n" + .'* **windows**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'linux', + ], + ], + [ + 'name' => 'ArchType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The architecture type of the environment where the agent is installed.\\'."\n" + .'This parameter is required and valid only when **AgentType** is set to **Instgo**.\\'."\n" + .'**Valid values:**'."\n" + ."\n" + .'* **amd64**'."\n" + .'* **arm64**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'amd64', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'Data' => [ + 'description' => 'The version number and download URL of the agent.'."\n", + 'type' => 'object', + 'properties' => [ + 'Version' => [ + 'description' => 'The version number of the agent.'."\n", + 'type' => 'string', + 'example' => '3.2.9', + ], + 'Url' => [ + 'description' => 'The download URL of the agent.'."\n", + 'type' => 'string', + 'example' => 'http://arms-apm-cn-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/3.2.9/ArmsAgent.zip', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Code' => [ + 'description' => 'The HTTP status code.\\'."\n" + .'**Valid values:**'."\n" + ."\n" + .'* 2xx: The request was successful.'."\n" + .'* 3xx: The request was redirected.'."\n" + .'* 4xx: The request was invalid.'."\n" + .'* 5xx: A server error occurred.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.\\'."\n" + .'**Valid values:**'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'AppNotExist', + 'errorMessage' => 'The application does not exist.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Data\\": {\\n \\"Version\\": \\"3.2.9\\",\\n \\"Url\\": \\"http://arms-apm-cn-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/3.2.9/ArmsAgent.zip\\"\\n },\\n \\"Message\\": \\"探针类型错误\\",\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetAgentDownloadUrlV2', + ], + 'GetAgentDownloadUrl' => [ + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ArmsAgentDownloadUrl' => [ + 'description' => 'The download URL of the ARMS agent.'."\n", + 'type' => 'string', + 'example' => 'http://arms-apm-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/2.7.1.1/', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '14043452-D486-4EA1-80C9-BA73FB81****', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ArmsAgentDownloadUrl\\": \\"http://arms-apm-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/2.7.1.1/\\",\\n \\"RequestId\\": \\"14043452-D486-4EA1-80C9-BA73FB81****\\"\\n}","errorExample":""},{"type":"xml","example":"<GetAgentDownloadUrlResponse>\\n<ArmsAgentDownloadUrl>http://arms-apm-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/2.7.1.1/</ArmsAgentDownloadUrl>\\n<RequestId>14043452-D486-4EA1-80C9-BA73FB81****</RequestId>\\n</GetAgentDownloadUrlResponse>","errorExample":""}]', + 'title' => 'GetAgentDownloadUrl', + 'summary' => 'Obtains the URL for downloading an agent.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeTraceLicenseKey' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'LicenseKey' => [ + 'description' => 'The license key for the application.'."\n", + 'type' => 'string', + 'example' => 'b590lhguqs@3a75d95f218****', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '29053944-6FE5-4240-8927-10095ECE****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"LicenseKey\\": \\"b590lhguqs@3a75d95f218****\\",\\n \\"RequestId\\": \\"29053944-6FE5-4240-8927-10095ECE****\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeTraceLicenseKeyResponse>\\n <LicenseKey>b590lhguqs@3a75d95f218****</LicenseKey>\\n <RequestId>29053944-6FE5-4240-8927-10095ECE****</RequestId>\\n</DescribeTraceLicenseKeyResponse>","errorExample":""}]', + 'title' => 'DescribeTraceLicenseKey', + 'summary' => 'Queries the license key.', + ], + 'ListInsightsEvents' => [ + 'summary' => 'Queries the abnormal Insights events within a specified period of time.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'title' => '地域', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aokcdqn3ly@a195c6d6421****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range to query. The value is a timestamp.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1595174400000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The value is a timestamp.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1480607940000', + ], + ], + [ + 'name' => 'InsightsTypes', + 'in' => 'query', + 'schema' => [ + 'description' => 'The types of the events that you want to query. Separate multiple event types with commas (,). If you do not specify this parameter, all events are queried.'."\n" + ."\n" + .'* errorIncrease: API error-rate spike events. Examples: HTTP API error-rate spike events and Dubbo API error-rate spike events.'."\n" + .'* topErrorIncrease: the top five API error-rate spike events with the highest traffic.'."\n" + .'* topRtIncrease: API response-time spike events. Examples: HTTP API response-time spike events and Dubbo API response-time spike events.'."\n" + .'* rtIncrease: the top five API response-time spike events with the highest traffic.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'errorIncrease,topErrorIncrease,topExceptionIncrease,topRtIncrease,rtIncrease', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '6F1174DC-6085-5353-AAE7-D4ADCD******', + ], + 'InsightsEvents' => [ + 'description' => 'The details of the event.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Title' => [ + 'description' => 'The title of the event.'."\n", + 'type' => 'string', + 'example' => 'Average response-time spikes of application services'."\n", + ], + 'Desc' => [ + 'description' => 'The description of the alert event.'."\n", + 'type' => 'string', + 'example' => 'The overall response time of the \\[HTTP] service of the application \\[sd] spikes at \\[2022-07-27 10:57:00]'."\n", + ], + 'Type' => [ + 'description' => 'The type of the event.'."\n", + 'type' => 'string', + 'example' => 'rtIncrease', + ], + 'Pid' => [ + 'description' => 'The ID of the application associated with the event.'."\n", + 'type' => 'string', + 'example' => 'dsv9zcel92@7da413b******', + ], + 'Level' => [ + 'description' => 'The severity of the event.'."\n", + 'type' => 'string', + 'example' => 'P3', + ], + 'Date' => [ + 'description' => 'The time when the event occurred. The value is a timestamp.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1658890560', + ], + 'ProblemId' => [ + 'description' => 'The problem identifier.'."\n", + 'type' => 'string', + 'example' => 'erep3o9zue@01ebe697ab70566|@1499161100890550|@cn-hangzhou|@1701841800000|@1701842040000|@daa6c51a-3c44-4d57-9548-4e212c******', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6F1174DC-6085-5353-AAE7-D4ADCD******\\",\\n \\"InsightsEvents\\": [\\n {\\n \\"Title\\": \\"应用服务整体平均响应时间突增\\",\\n \\"Desc\\": \\"应用【sd】【HTTP】服务整体的响应时间在【2022-07-27 10:57:00】出现突增\\",\\n \\"Type\\": \\"rtIncrease\\",\\n \\"Pid\\": \\"dsv9zcel92@7da413b******\\",\\n \\"Level\\": \\"P3\\",\\n \\"Date\\": 1658890560,\\n \\"ProblemId\\": \\"erep3o9zue@01ebe697ab70566|@1499161100890550|@cn-hangzhou|@1701841800000|@1701842040000|@daa6c51a-3c44-4d57-9548-4e212c******\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListInsightsEvents', + ], + 'QueryAppMetadata' => [ + 'summary' => 'Queries the encoding mapping content based on the metadata IDs and metadata type.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'MetaIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The metadata IDs. Separate multiple IDs with commas (,).'."\n" + ."\n" + .'You can obtain the exception ID on the **Exception Analysis** page of your application in the ARMS console.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '4c9dd447,3c76c565', + ], + ], + [ + 'name' => 'MetaType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The metadata type. Valid values:'."\n" + ."\n" + .'* sql: obtains an SQL statement based on sqlId.'."\n" + .'* exception: obtains the exception stack based on exceptionId.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'exception' => 'exception', + 'sql' => 'sql', + ], + 'example' => 'sql', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application. You can obtain the PID of an application by calling the **ListTraceApps** operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ggxw4lnjuz@54364d85b97dc56', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'StartTimeMs', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + [ + 'name' => 'EndTimeMs', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '51877BAC-330C-5845-BDFD-C7859AD33FB7', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'example' => '{\'408d5533\': \'SELECT * FROM user_base_info\'}', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned for the request. Valid values:'."\n" + ."\n" + .'* 2XX: The request is successful.'."\n" + .'* 3XX: A redirection message is returned.'."\n" + .'* 4XX: The request is invalid.'."\n" + .'* 5XX: A server error occurs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + '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', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"51877BAC-330C-5845-BDFD-C7859AD33FB7\\",\\n \\"Data\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Code\\": 200,\\n \\"HttpStatusCode\\": 200,\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'QueryAppMetadata', + ], + 'DeleteAppList' => [ + 'summary' => 'Deletes multiple applications at a time based on the process IDs (PIDs).', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Pids', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of PIDs for the applications monitored by Application Monitoring.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The PID of an application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '["atc889zkcf@d8deedfa9bfxxxx", "acd129bfcf@d5daebfa6cdxxxx"]', + ], + 'required' => true, + 'docRequired' => true, + 'maxItems' => 800, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4B446DF2-3DDD-4B5B-8E3F-D5225120****', + ], + 'Data' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => '"{\\"code\\":200,\\"data\\":\\"{\\\\\\"code\\\\\\":200,\\\\\\"data\\\\\\":true,\\\\\\"errorCode\\\\ \\":\\\\\\"Deletion of application successful\\\\\\",\\\\\\"Message\\\\\\":\\\\\\"Deletion of application successful\\\\\\",\\\\\\"Successful\\\\\\":true,\\ \\\\"traceId\\\\\\":\\\\\\"0bc1667516940677164677396d0088\\\\\\"}\\",\\"errorCode\\":\\"Batch deletion of applications successful\\",\\"message\\":\\"Batch deletion of applications successful\\ ",\\"Success\\":true,\\"traceId\\":\\"210f470416940677161213505e0e7a\\"}"', + ], + 'Message' => [ + 'description' => 'The error message returned for invalid request parameters.'."\n", + 'type' => 'string', + 'example' => '"Deletion of application successful"', + ], + 'Success' => [ + 'description' => 'Indicates whether the specified applications are deleted. Valid values:'."\n" + ."\n" + .'* `true`: The applications are deleted.'."\n" + .'* `false`: The applications failed to be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 2XX indicates that the request was successful. 3XX indicates that the request was redirected. 4XX indicates that a request error occurred. 5XX indicates that a server error occurred.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterUserIdIsNull', + 'errorMessage' => 'User ID is null.', + ], + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + [ + 'errorCode' => 'ParameterResourceIdIsNull', + 'errorMessage' => 'Resource ID is null.', + ], + ], + 403 => [ + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => 'The current user is not authorized to access the interface.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4B446DF2-3DDD-4B5B-8E3F-D5225120****\\",\\n \\"Data\\": \\"\\\\\\"{\\\\\\\\\\\\\\"code\\\\\\\\\\\\\\":200,\\\\\\\\\\\\\\"data\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"code\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":200,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"data\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"errorCode\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"删除应用成功\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"message\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"删除应用成功\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"success\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"traceId\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"0bc1667516940677164677396d0088\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"errorCode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"批量删除应用成功\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"message\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"批量删除应用成功\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"success\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"traceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"210f470416940677161213505e0e7a\\\\\\\\\\\\\\"}\\\\\\"\\",\\n \\"Message\\": \\"“批量删除应用成功”\\",\\n \\"Success\\": true,\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'DeleteAppList', + ], + 'DoInsightsAction' => [ + 'summary' => 'Performs actions based on the specified module type.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '227392', + 'abilityTreeNodes' => [ + 'FEATUREarmsXHEL9X', + ], + ], + 'parameters' => [ + [ + 'name' => 'Module', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The module type.'."\n" + ."\n" + .'* QueryTopo'."\n" + ."\n" + .' Queries topologies. A topology consists of edges and nodes, where each edge has a corresponding type and each node corresponds to an entity, which also has its type. By setting filter parameters such as the type of edges, the type of nodes, and the query time range, you can filter out the required topology data.'."\n" + ."\n" + .'* QueryTopoRed'."\n" + ."\n" + .' Queries topology RED metrics (number of requests, duration, number of errors). When querying a topology with the metric query option enabled, it might not be possible to retrieve all metric data due to the topology being too large. This module allows users to actively query for metric data of specified nodes and edges.'."\n" + ."\n" + .'Note: The aforementioned modules are currently in a canary release phase and are not enabled by default. If you need to enable them, please contact the ARMS on-duty number.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* QueryTopoRed'."\n" + .'* QueryTopo'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'enumValueTitles' => [ + 'QueryTopoRed' => '', + 'QueryTopo' => '', + ], + 'example' => 'QueryTopo', + ], + ], + [ + 'name' => 'Data', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The query parameters. Different module types correspond to different query parameters.'."\n" + ."\n" + .'* QueryTopo'."\n" + ."\n" + .'<!---->'."\n" + ."\n" + .' {'."\n" + .' "regionId": string, # The region ID.'."\n" + .' "startTime": string, #. The start time. Format: yyyy-MM-dd HH:mm:ss.'."\n" + .' "endTime": string, # The end time. Format: yyyy-MM-dd HH:mm:ss.'."\n" + .' "edgeFilter": { # The edge filter condition.'."\n" + .' "includeTypes": [enum], # The edge types to be included.'."\n" + .' "excludeTypes": [enum], # The edge types to be excluded.'."\n" + .' "fromNodeFilter": { # The source node filter condition.'."\n" + .' "includeEntityTypes": [enum] # The entity types to be included.'."\n" + .' "excludeEntityTypes": [enum] #The entity types to be excluded.'."\n" + .' },'."\n" + .' "toNodeFilter": { #The target node filter condition.'."\n" + .' "includeEntityTypes": [enum] # The entity types to be included.'."\n" + .' "excludeEntityTypes": [enum] #The entity types to be excluded.'."\n" + .' }'."\n" + .' },'."\n" + .' "includeIsolatedNodes": boolean, #Specifies whether to include isolated nodes.'."\n" + .' "isolatedNodeFilter": { # The isolated node filter condition.'."\n" + .' "includeEntityTypes": [enum] # The entity types to be included.'."\n" + .' "excludeEntityTypes": [enum] #The entity types to be excluded.'."\n" + .' },'."\n" + .' "queryMetrics": boolean, # Specifies whether to query RED metrics along with metrics.'."\n" + .' "timeoutSecs": int, # The timeout period of metric query.'."\n" + .' "redOption": { # The metric query option.'."\n" + .' "skipRt": boolean, # Specifies whether to skip querying the response time.'."\n" + .' "skipCount": boolean, # Specifies whether to skip querying the number of requests.'."\n" + .' "skipError": boolean # Specifies whether to skip querying the number of errors.'."\n" + .' }'."\n" + .' }'."\n" + ."\n" + .'* QueryTopoRed'."\n" + ."\n" + .'<!---->'."\n" + ."\n" + .' {'."\n" + .' "regionId": string, # The region ID.'."\n" + .' "startTime": string, #. The start time. Format: yyyy-MM-dd HH:mm:ss.'."\n" + .' "endTime": string, # The end time. Format: yyyy-MM-dd HH:mm:ss.'."\n" + .' "edgeIds": [string] # The edge ID to be queried.'."\n" + .' "nodeIds": [string] # The node ID to be queried.'."\n" + .' "redOption": { # The metric query option.'."\n" + .' "skipRt": boolean, # Specifies whether to skip querying the response time.'."\n" + .' "skipRt": boolean, # Specifies whether to skip querying the number of requests.'."\n" + .' "skipError": boolean # Specifies whether to skip querying the number of errors.'."\n" + .' }'."\n" + .' }'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '- QueryTopo'."\n" + ."\n\n" + .' {'."\n" + .' "regionId": "cn-hangzhou",'."\n" + .' "startTime": "2024-07-23 19:16:00", '."\n" + .' "endTime": "2024-07-23 20:16:00", # Limit the topology query range to 2024-07-23 19:16:00 to 2024-07-23 20:16:00'."\n" + .' "edgeFilter": {'."\n" + .' "includeTypes": ['."\n" + .' "CALLS" # The resulting topology only contains edges of call relationships.'."\n" + .' ],'."\n" + .' "fromNodeFilter": {'."\n" + .' "includeEntityTypes": [ # The source node type of the call edge must be application type'."\n" + .' "APPLICATION" '."\n" + .' ]'."\n" + .' },'."\n" + .' "toNodeFilter": {'."\n" + .' "includeEntityTypes": [ # The target node of the call edge must be an application type or an external service type.'."\n" + .' "APPLICATION",'."\n" + .' "EXTERNAL_SERVICE"'."\n" + .' ]'."\n" + .' }'."\n" + .' },'."\n" + .' "includeIsolatedNodes": false, # The resulting topology does not contain isolated nodes'."\n" + .' "queryMetrics": true, # Synchronously query the RED indicator'."\n" + .' "timeoutSecs": 20, #It takes up to 20 seconds to query indicator data'."\n" + .' "redOption": { # The query indicators include time consumption, request volume, and query skip errors.'."\n" + .' "skipRt": false,'."\n" + .' "skipCount": false,'."\n" + .' "skipError": true'."\n" + .' }'."\n" + .' }'."\n" + ."\n\n" + ."\n" + .'- QueryTopoRed'."\n" + ."\n\n" + .' {'."\n" + .' "regionId": "cn-hangzhou",'."\n" + .' "startTime": "2024-07-23 10:00:00",'."\n" + .' "endTime": "2024-07-23 14:00:00",'."\n" + .' "edgeIds": ['."\n" + .' "097843bd50b06fbe2c6c1d8b761a7e8b"'."\n" + .' ],'."\n" + .' "nodeIds": ['."\n" + .' "23d973261c6923da1b5b7a571ec1aa8b"'."\n" + .' ],'."\n" + .' "redOption": { # The query indicators include time consumption, request volume, and query skip errors.'."\n" + .' "skipCount": false,'."\n" + .' "skipError": true,'."\n" + .' "skipRt": false'."\n" + .' }'."\n" + .' }'."\n", + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '626037F5-FDEB-45B0-804C-B3C92797A64E', + ], + 'Code' => [ + 'description' => 'The response code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the call was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The response parameters vary with the value of module.'."\n" + ."\n" + .'* QueryTopo'."\n" + ."\n" + .' {'."\n" + .' "nodes": [Object] # The nodes. For more information, see node details in the supplementary notes of response parameters.'."\n" + .' "edges": [Object] # The edges. For more information, see edge details in the supplementary notes of response parameters.'."\n" + .' }'."\n" + ."\n" + .'* QueryTopoRed'."\n" + ."\n" + .' {'."\n" + .' "nodeRed": {'."\n" + .' "nodeId": {'."\n" + .' "count": double, # The total number of requests in the specified time range.'."\n" + .' "error": double, # The total number of errors in the specified time range.'."\n" + .' "rt": double, # The average response time in the specified time range. Unit: milliseconds.'."\n" + .' }'."\n" + .' },'."\n" + .' "edgeRed": {'."\n" + .' "edgeId": {'."\n" + .' "count": double, # The total number of requests in the specified time range.'."\n" + .' "error": double, # The total number of errors in the specified time range.'."\n" + .' "rt": double, # The average response time in the specified time range. Unit: milliseconds.'."\n" + .' }'."\n" + .' }'."\n" + ."\n" + .'}'."\n" + ."\n" + .'```'."\n" + .'```'."\n", + 'type' => 'string', + 'example' => '- QueryTopo'."\n" + ."\n\n" + .' {'."\n" + .' "nodes": ['."\n" + .' {'."\n" + .' "nodeId": "3bfe1a747389273388182760406c079d",'."\n" + .' "entity": {'."\n" + .' "regionId": "cn-hangzhou",'."\n" + .' "appType": "TRACE",'."\n" + .' "appId": "xxxxxxxxxxxxxxxx",'."\n" + .' "name": "prometheus-pop-cn-hangzhou",'."\n" + .' "entityId": "3bfe1a747389273388182760406c079d",'."\n" + .' "firstSeenTms": 1721733226981,'."\n" + .' "lastSeenTms": 1721789171614,'."\n" + .' "type": "APPLICATION"'."\n" + .' },'."\n" + .' "attrs": {'."\n" + .' "RED": {'."\n" + .' "count": 643848.0,'."\n" + .' "error": 0.0,'."\n" + .' "rt": 172.31701892372112'."\n" + .' }'."\n" + .' }'."\n" + .' }'."\n" + .' ],'."\n" + .' "edges": ['."\n" + .' {'."\n" + .' "from": "98b4184b22e588cf86e9a29aa4179606",'."\n" + .' "to": "98b4184b22e588cf86e9a29aa4179606",'."\n" + .' "type": "CALLS",'."\n" + .' "attrs": {'."\n" + .' "RED": {'."\n" + .' "count": 4.0,'."\n" + .' "error": 0.0,'."\n" + .' "rt": 37.0'."\n" + .' }'."\n" + .' },'."\n" + .' "edgeId": "5d611597e4b0013d0947615c9eca4de6",'."\n" + .' "firstSeenTms": 1721783795125,'."\n" + .' "lastSeenTms": 1721787371614'."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + ."\n\n" + .'- QueryTopoRed'."\n" + ."\n" + .' {'."\n" + .' "nodeRed": {'."\n" + .' "361d9f32e58cef316bf2355f3ff05575": {'."\n" + .' "count": 3258110.0,'."\n" + .' "error": 74.0,'."\n" + .' "rt": 167.39844355494878'."\n" + .' }'."\n" + .' },'."\n" + .' "edgeRed": {}'."\n" + .' }'."\n" + ."\n", + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"626037F5-FDEB-45B0-804C-B3C92797A64E\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": \\"- QueryTopo\\\\n\\\\n\\\\n\\\\t{\\\\n\\\\t\\\\t\\\\\\"nodes\\\\\\": [\\\\n\\\\t\\\\t\\\\t{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"nodeId\\\\\\": \\\\\\"3bfe1a747389273388182760406c079d\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"entity\\\\\\": {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"regionId\\\\\\": \\\\\\"cn-hangzhou\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"appType\\\\\\": \\\\\\"TRACE\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"appId\\\\\\": \\\\\\"xxxxxxxxxxxxxxxx\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"name\\\\\\": \\\\\\"prometheus-pop-cn-hangzhou\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"entityId\\\\\\": \\\\\\"3bfe1a747389273388182760406c079d\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"firstSeenTms\\\\\\": 1721733226981,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"lastSeenTms\\\\\\": 1721789171614,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"type\\\\\\": \\\\\\"APPLICATION\\\\\\"\\\\n\\\\t\\\\t\\\\t\\\\t},\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"attrs\\\\\\": {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"RED\\\\\\": {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"count\\\\\\": 643848.0,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"error\\\\\\": 0.0,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"rt\\\\\\": 172.31701892372112\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t],\\\\n\\\\t\\\\t\\\\\\"edges\\\\\\": [\\\\n\\\\t\\\\t\\\\t{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"from\\\\\\": \\\\\\"98b4184b22e588cf86e9a29aa4179606\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"to\\\\\\": \\\\\\"98b4184b22e588cf86e9a29aa4179606\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"type\\\\\\": \\\\\\"CALLS\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"attrs\\\\\\": {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"RED\\\\\\": {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"count\\\\\\": 4.0,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"error\\\\\\": 0.0,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"rt\\\\\\": 37.0\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t},\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"edgeId\\\\\\": \\\\\\"5d611597e4b0013d0947615c9eca4de6\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"firstSeenTms\\\\\\": 1721783795125,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"lastSeenTms\\\\\\": 1721787371614\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t]\\\\n\\\\t}\\\\n\\\\n\\\\n- QueryTopoRed\\\\n\\\\n\\\\t{\\\\n\\\\t\\\\t\\\\\\"nodeRed\\\\\\": {\\\\n\\\\t\\\\t\\\\t\\\\\\"361d9f32e58cef316bf2355f3ff05575\\\\\\": {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"count\\\\\\": 3258110.0,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"error\\\\\\": 74.0,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\\\"rt\\\\\\": 167.39844355494878\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t},\\\\n\\\\t\\\\t\\\\\\"edgeRed\\\\\\": {}\\\\n\\\\t}\\\\n\\\\n\\"\\n}","type":"json"}]', + 'title' => 'DoInsightsAction', + 'requestParamsDescription' => 'A topology consists of edges and nodes, where each edge has a corresponding type and each node corresponds to an entity, which also has its type. By setting filter parameters such as the type of edges, the type of nodes, and the query time range, you can filter out the required topology data.'."\n" + ."\n" + .'* Isolated node'."\n" + ."\n" + .' An isolated node is not related with other nodes.'."\n" + ."\n" + .'The field type "enum" indicates that the field comes from an enumeration. For more information about enumeration, see supplementary notes.'."\n", + 'responseParamsDescription' => '* Node details'."\n" + ."\n" + .' {'."\n" + .' "nodeId": string, # The node ID.'."\n" + .' "entity": Object, # The entity information. The fields vary with the specified type. For more information, see the "Entity types" section of this topic. '."\n" + .' "attrs": { # The attributes.'."\n" + .' "RED": { # The red metrics.'."\n" + .' "count": double, # The total number of requests in the specified time range.'."\n" + .' "error": double, # The total number of errors in the specified time range.'."\n" + .' "rt": double, # The average response time in the specified time range. Unit: milliseconds.'."\n" + .' }'."\n" + .' }'."\n" + .' }'."\n" + ."\n" + .'* Edge details'."\n" + ."\n" + .' {'."\n" + .' "from": string, # The ID of the source node.'."\n" + .' "to": string, # The ID of the target node.'."\n" + .' "type": enum, # The edge type. For more information, see the supplementary notes.'."\n" + .' "attrs": { # The attributes.'."\n" + .' "RED": { # The red metrics.'."\n" + .' "count": double, # The total number of requests in the specified time range.'."\n" + .' "error": double, # The total number of errors in the specified time range.'."\n" + .' "rt": double, # The average response time in the specified time range. Unit: milliseconds.'."\n" + .' }'."\n" + .' },'."\n" + .' "edgeId": string, # The edge ID.'."\n" + .' "firstSeenTms": long, # The time when the edge was first identified. Unit: milliseconds. Format: a UNIX timestamp.'."\n" + .' "lastSeenTms": long, # The time when the edge was last identified. Unit: milliseconds. Format: a UNIX timestamp.'."\n" + .' }'."\n", + ], + 'Upload' => [ + 'summary' => 'Uploads a SourceMap file to ARMS Browser Monitoring.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region to which the SourceMap file is uploaded.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n" + ."\n" + .'Log on to the **ARMS console**. In the left-side navigation pane, choose **Browser Monitoring** > **Browser Monitoring**. On the Browser Monitoring page, click the name of an application. The URL in the address bar contains the process ID (PID) of the application. The PID is indicated in the pid=xxx format. The PID is usually percent encoded as xxx%40xxx. You must modify this value to remove the percent encoding. For example, if the PID in the URL is eb4zdose6v%409781be0f44d\\*\\*\\*\\*, you must replace %40 with @ to obtain eb4zdose6v@9781be0f44d\\*\\*\\*\\*.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'b590lhguqs@8cc3f6354******', + ], + ], + [ + 'name' => 'FileName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the SourceMap file.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test.js.map', + ], + ], + [ + 'name' => 'Version', + 'in' => 'query', + 'schema' => [ + 'description' => 'We recommend that you do not specify this parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'null', + ], + ], + [ + 'name' => 'File', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The string of the SourceMap file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test file content', + ], + ], + [ + 'name' => 'Edition', + 'in' => 'query', + 'schema' => [ + 'description' => 'The version of the SourceMap file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0.0.0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'UploadResult' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Fid' => [ + 'description' => 'The ID of the SourceMap file.'."\n", + 'type' => 'string', + 'example' => '123', + ], + 'FileName' => [ + 'description' => 'The name of the SourceMap file.'."\n", + 'type' => 'string', + 'example' => 'test.js.map', + ], + 'UploadTime' => [ + 'description' => 'The time when the file was uploaded.'."\n", + 'type' => 'string', + 'example' => '1650272251', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterRegionIdMissing', + 'errorMessage' => 'You must specify regionId.', + ], + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + 403 => [ + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => 'The current user is not authorized to access the interface.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"UploadResult\\": {\\n \\"Fid\\": \\"123\\",\\n \\"FileName\\": \\"test.js.map\\",\\n \\"UploadTime\\": \\"1650272251\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<UploadResponse>\\n <RequestId>xxxx</RequestId>\\n <Fid>1.0</Fid>\\n <FileName>test.txt</FileName>\\n <Version>0.0.0</Version>\\n <UploadTime>xxx</UploadTime>\\n</UploadResponse>","errorExample":""}]', + 'title' => 'Upload', + ], + 'DeleteSourceMap' => [ + 'summary' => 'Deletes the SourceMap files uploaded in Browser Monitoring.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'FidList', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The IDs of the SourceMap files.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IDs of the SourceMap files.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'atc889zkcf@d8deedfa9bf****/0.0.0/test.sourcemap.js', + ], + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Data' => [ + 'description' => 'Indicates whether the SourceMap files are deleted. Valid values:'."\n" + ."\n" + .'* success: The SourceMap files are deleted.'."\n" + .'* false: The SourceMap files fail to be deleted.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DeleteSourceMap', + ], + 'GetSourceMapInfo' => [ + 'summary' => 'Obtains the details of the SourceMap file uploaded in Browser Monitoring.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ID', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the SourceMap file.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'atc889zkcf@d8deedfa9bf****/0.0.0/test.sourcemap.js', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keyword in the file name. The files are searched by keyword.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'OrderField', + 'in' => 'query', + 'schema' => [ + 'description' => 'The criterion by which the files are sorted. Valid values:'."\n" + ."\n" + .'* version: The files are sorted by version.'."\n" + .'* uploadTime: The files are sorted by upload time.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'version', + ], + ], + [ + 'name' => 'AscendingSequence', + 'in' => 'query', + 'schema' => [ + 'description' => 'The order in which the files are sorted. Valid values:'."\n" + ."\n" + .'* true: ascending order'."\n" + .'* false: descending order'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Edition', + 'in' => 'query', + 'schema' => [ + 'description' => 'The version of the SourceMap file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0.0.0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'SourceMapList' => [ + 'description' => 'The details of the SourceMap file.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Fid' => [ + 'description' => 'The ID of the SourceMap file.'."\n", + 'type' => 'string', + 'example' => 'atc889zkcf@d8deedfa9bf****/0.0.0/test.sourcemap.js', + ], + 'FileName' => [ + 'description' => 'The name of the SourceMap file.'."\n", + 'type' => 'string', + 'example' => 'test.sourcemap.js', + ], + 'Size' => [ + 'description' => 'The size of the file. Unit: KB.'."\n", + 'type' => 'string', + 'example' => '201223', + ], + 'UploadTime' => [ + 'description' => 'The timestamp that indicates when the file was uploaded.'."\n", + 'type' => 'string', + 'example' => '1590657842000', + ], + 'Version' => [ + 'description' => 'The version of the file.'."\n", + 'type' => 'string', + 'example' => '0.0.0', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"SourceMapList\\": [\\n {\\n \\"Fid\\": \\"atc889zkcf@d8deedfa9bf****/0.0.0/test.sourcemap.js\\",\\n \\"FileName\\": \\"test.sourcemap.js\\",\\n \\"Size\\": \\"201223\\",\\n \\"UploadTime\\": \\"1590657842000\\",\\n \\"Version\\": \\"0.0.0\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetSourceMapInfo', + ], + 'CreateRetcodeApp' => [ + 'summary' => 'Creates a Browser Monitoring task for an application.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RetcodeAppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'SdkTest', + ], + ], + [ + 'name' => 'RetcodeAppType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the application. Valid values:'."\n" + ."\n" + .'* `web`: web application'."\n" + .'* `weex`: Weex mobile app'."\n" + .'* `mini_dd`: DingTalk mini program'."\n" + .'* `mini_alipay`: Alipay mini program'."\n" + .'* `mini_wx`: WeChat mini program'."\n" + .'* `mini_common`: mini program on other platforms'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'mini_dd', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group. You can obtain the resource group ID in the **Resource Management** console.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tags that you want to add to the task.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C647A', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. If another status code is returned, the request failed.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The response parameters.', + 'type' => 'string', + 'example' => 'bdidt76ehx@d5cf1cd3f7df411', + ], + 'Success' => [ + 'description' => 'Indicates whether the call was successful. Valid values:'."\n" + ."\n" + .'- true: The call was successful.'."\n" + .'- false: The call failed.', + 'type' => 'boolean', + 'example' => 'True', + ], + 'Message' => [ + 'description' => 'The message returned.', + 'type' => 'string', + 'example' => 'success', + ], + 'RetcodeAppDataBean' => [ + 'description' => 'The information of the Browser Monitoring task.'."\n", + 'type' => 'object', + 'properties' => [ + 'Pid' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'example' => 'aokcdqn3ly@a195c6d6421****', + ], + 'AppId' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '135143', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmxyexli2****', + ], + 'Tags' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Tags' => [ + 'description' => 'The tags of the task.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'TestValue', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C647A\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"bdidt76ehx@d5cf1cd3f7df411\\",\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\",\\n \\"RetcodeAppDataBean\\": {\\n \\"Pid\\": \\"aokcdqn3ly@a195c6d6421****\\",\\n \\"AppId\\": 135143,\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\",\\n \\"Tags\\": {\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateRetcodeAppResponse>\\n <RequestId>A5EC8221-08F2-4C95-9AF1-49FD998C647A</RequestId>\\n <RetcodeAppDataBean>\\n <AppId>135143</AppId>\\n <Pid>aokcdqn3ly@a195c6d6421****</Pid>\\n </RetcodeAppDataBean>\\n</CreateRetcodeAppResponse>","errorExample":""}]', + 'title' => 'CreateRetcodeApp', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'GetRetcodeShareUrl' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The project ID (PID) of the application.'."\n" + ."\n" + .'To obtain the application PID, log on to the Application Real-Time Monitoring Service (ARMS) console. In the left-side navigation pane, choose **Browser Monitoring**>**Browser Monitoring**. Then, click the name of the application. The URL in the address bar contains the application PID, in the xxx format. As the browser is encoded, you must modify the PID. For example, if the PID in the URL is xxx%4074xxx, you must replace %40 with an at sign (@) to obtain xxx@74xxx.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'iioe7jcnuk@582846f37******', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Url' => [ + 'description' => 'The share URL of the application monitored by Browser Monitoring.'."\n", + 'type' => 'string', + 'example' => 'http://arms-daily.console.aliyun.com:8080/shareapi/retcode.json?login_arms_t3h_token=XXXxxx&action=RetcodeAction&eventSubmitDoGetData=1', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '01FF8DD9-A09C-47A1-895A-B6E321******', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Url\\": \\"http://arms-daily.console.aliyun.com:8080/shareapi/retcode.json?login_arms_t3h_token=XXXxxx&action=RetcodeAction&eventSubmitDoGetData=1\\",\\n \\"RequestId\\": \\"01FF8DD9-A09C-47A1-895A-B6E321BE77B6\\"\\n}","errorExample":""},{"type":"xml","example":"<GetRetcodeShareUrlResponse>\\n <requestId>01FF8DD9-A09C-47A1-895A-B6E321BE77B6</requestId>\\n <url>http://arms-daily.console.aliyun.com:8080/shareapi/retcode.json?login_arms_t3h_token=XXXxxx&action=RetcodeAction&eventSubmitDoGetData=1</url>\\n</GetRetcodeShareUrlResponse>","errorExample":""}]', + 'title' => 'GetRetcodeShareUrl', + 'summary' => 'Queries the share URL of an application monitored by Browser Monitoring.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteRetcodeApp' => [ + 'summary' => 'Deletes a Browser Monitoring task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => '1231', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-app', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aokcdqn3ly@741623b4e91****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Indicates whether the Browser Monitoring task was deleted. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '01FF8DD9-A09C-47A1-895A-B6E321BE77B6', + ], + 'Code' => [ + 'description' => 'Status code. 200 means success, other status codes are exceptions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Whether the operation was successful:'."\n" + .'- `true`: The operation was successful'."\n" + .'- `false`: The operation failed', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'Additional information. The value description is as follows:'."\n" + .'- If the request is normal, return success.'."\n" + .'- If the request is abnormal, return specific abnormal information.', + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"true\\",\\n \\"RequestId\\": \\"01FF8DD9-A09C-47A1-895A-B6E321BE77B6\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteRetcodeAppResponse>\\r\\n <data>true</data>\\r\\n <requestId>01FF8DD9-A09C-47A1-895A-B6E321BE77B6</requestId>\\r\\n</DeleteRetcodeAppResponse>","errorExample":""}]', + 'title' => 'DeleteRetcodeApp', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SetRetcodeShareStatus' => [ + 'summary' => 'Turns on or turns off logon-free sharing for an application monitored by Browser Monitoring.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application. '."\n" + ."\n" + .'Log on to the **ARMS console**. In the left-side navigation pane, choose **Browser Monitoring** > **Browser Monitoring**. On the Browser Monitoring page, click the name of an application. The URL in the address bar contains the process ID (PID) of the application. The PID is indicated in the `pid=xxx` format. The PID is usually percent encoded as `xxx%40xxx`. You must modify this value to remove the percent encoding. For example, if the PID in the URL is `eb4zdose6v%409781be0f44d****`, you must replace `%40` with @ to obtain `eb4zdose6v@9781be0f44d****`.', + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to turn on or turn off the logon-free sharing switch. Valid values:'."\n" + ."\n" + .'* `true`: Turn on the switch.'."\n" + .'* `false`: Turn off the switch.'."\n", + 'type' => 'boolean', + 'required' => true, + 'docRequired' => true, + 'example' => 'true', + ], + ], + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application that is monitored by Browser Monitoring.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-app', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsSuccess' => [ + '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', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '40B10E04-81E8-4643-970D-F1B38F2E****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsSuccess\\": true,\\n \\"RequestId\\": \\"40B10E04-81E8-4643-970D-F1B38F2E****\\"\\n}","errorExample":""},{"type":"xml","example":"<SetRetcodeShareStatusResponse>\\n <IsSuccess>true</IsSuccess>\\n <RequestId>40B10E04-81E8-4643-970D-F1B38F2E****</RequestId>\\n</SetRetcodeShareStatusResponse>","errorExample":""}]', + 'title' => 'SetRetcodeShareStatus', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ListRetcodeApps' => [ + 'summary' => 'Queries the Browser Monitoring tasks in a region.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group. You can obtain the resource group ID in the **Resource Management** console.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tags that you want to add to the task.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '99A663CB-8D7B-4B0D-A006-03C8EE38E7BB', + ], + 'RetcodeApps' => [ + 'description' => 'The list of applications monitored by Browser Monitoring.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AppName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'A1', + ], + 'RetcodeAppType' => [ + 'description' => 'The type of the application. Valid values:'."\n" + ."\n" + .'* `web`: web application'."\n" + .'* `weex`: Weex mobile app'."\n" + .'* `mini_dd`: DingTalk mini program'."\n" + .'* `mini_alipay`: Alipay mini program'."\n" + .'* `mini_wx`: WeChat mini program'."\n" + .'* `mini_common`: mini program on other platforms'."\n", + 'type' => 'string', + 'example' => 'web', + ], + 'AppId' => [ + 'description' => 'The ID of the application. The parameter is an auto-increment parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '16064', + ], + 'Pid' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + 'NickName' => [ + 'description' => 'The alias of the application monitored by Browser Monitoring.'."\n", + 'type' => 'string', + 'example' => 'B1', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmxyexli2****', + ], + 'Tags' => [ + 'description' => 'The tags of the task.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'TestValue', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"99A663CB-8D7B-4B0D-A006-03C8EE38E7BB\\",\\n \\"RetcodeApps\\": [\\n {\\n \\"AppName\\": \\"A1\\",\\n \\"RetcodeAppType\\": \\"web\\",\\n \\"AppId\\": 16064,\\n \\"Pid\\": \\"atc889zkcf@d8deedfa9bf****\\",\\n \\"NickName\\": \\"B1\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListRetcodeAppsResponse>\\n<RequestId>99A663CB-8D7B-4B0D-A006-03C8EE38E7BB</RequestId>\\n<RetcodeApps>\\n <RetcodeAppType>web</RetcodeAppType>\\n <AppId>16064</AppId>\\n <Pid>atc889zkcf@d8deedfa9bf****</Pid>\\n <AppName>A1</AppName>\\n</RetcodeApps>\\n</ListRetcodeAppsResponse>","errorExample":""}]', + 'title' => 'ListRetcodeApps', + 'description' => '****', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SearchRetcodeAppByPage' => [ + 'summary' => 'Queries Browser Monitoring tasks by page.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'RetcodeAppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'App1', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => true, + 'example' => '5', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group. You can obtain the resource group ID in the **Resource Management** console.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'RetcodeAppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n" + ."\n" + .'Log on to the **ARMS console**. In the left-side navigation pane, choose **Browser Monitoring** > **Browser Monitoring**. On the Browser Monitoring page, click the name of an application. The URL in the browser address bar contains the pid of this application in the format of `pid=xxx`. The PID is usually percent encoded as xxx%40xxx. You must modify this value to remove the percent encoding. For example, if the PID in the URL is `xxx%4074xxx`, you must replace **%40** with the at sign (@). The actual PID is `xxx@74xxx`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'eb4zdose6v@9781be0f44d****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tag.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '626037F5-FDEB-45B0-804C-B3C92797A64E', + ], + 'PageBean' => [ + 'description' => 'The returned page information.'."\n", + 'type' => 'object', + 'properties' => [ + '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' => '2', + ], + 'TotalCount' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + ], + 'RetcodeApps' => [ + 'description' => 'The browser monitoring tasks that are returned.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the monitoring task. Valid values:'."\n" + ."\n" + .'* `TRACE`: Application Monitoring'."\n" + .'* `RETCODE`: Browser Monitoring'."\n", + 'type' => 'string', + 'example' => 'RETCODE', + ], + 'AppName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => 'a3', + ], + 'RetcodeAppType' => [ + 'description' => 'The type of the application. Valid values:'."\n" + ."\n" + .'* `web`: web application'."\n" + .'* `weex`: Weex mobile app'."\n" + .'* `mini_dd`: DingTalk mini program'."\n" + .'* `mini_alipay`: Alipay mini program'."\n" + .'* `mini_wx`: WeChat mini program'."\n" + .'* `mini_common`: mini program on other platforms'."\n", + 'type' => 'string', + 'example' => 'web', + ], + 'UpdateTime' => [ + 'description' => 'The time when the task was updated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1545363321000', + ], + 'CreateTime' => [ + 'description' => 'The time when the task was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1545363321000', + ], + 'Pid' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'example' => 'eb4zdose6v@9781be0f44d****', + ], + 'AppId' => [ + 'description' => 'The ID of the application. The parameter is an auto-increment parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '16064', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '12341234', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'NickName' => [ + 'description' => 'The alias of the application.'."\n", + 'type' => 'string', + 'example' => 'c1', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmxyexli2****', + ], + 'Tags' => [ + 'description' => 'The tag.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'TestValue', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"626037F5-FDEB-45B0-804C-B3C92797A64E\\",\\n \\"PageBean\\": {\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 2,\\n \\"TotalCount\\": 8,\\n \\"RetcodeApps\\": [\\n {\\n \\"Type\\": \\"RETCODE\\",\\n \\"AppName\\": \\"a3\\",\\n \\"RetcodeAppType\\": \\"web\\",\\n \\"UpdateTime\\": 1545363321000,\\n \\"CreateTime\\": 1545363321000,\\n \\"Pid\\": \\"eb4zdose6v@9781be0f44d****\\",\\n \\"AppId\\": 16064,\\n \\"UserId\\": \\"12341234\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"NickName\\": \\"c1\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ]\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<SearchRetcodeAppByPageResponse>\\n<PageBean>\\n <TotalCount>8</TotalCount>\\n <PageSize>2</PageSize>\\n <PageNumber>1</PageNumber>\\n <RetcodeApps>\\n <Type>RETCODE</Type>\\n <AppId>16064</AppId>\\n <UserId>12341234</UserId>\\n <CreateTime>1545363321000</CreateTime>\\n <UpdateTime>1545363321000</UpdateTime>\\n <Pid>aokcdqn3ly@741623b4e91****</Pid>\\n <RegionId>cn-hangzhou</RegionId>\\n <AppName>a3</AppName>\\n </RetcodeApps>\\n</PageBean>\\n<RequestId>626037F5-FDEB-45B0-804C-B3C92797A64E</RequestId>\\n</SearchRetcodeAppByPageResponse>","errorExample":""}]', + 'title' => 'SearchRetcodeAppByPage', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'GetRetcodeLogstore' => [ + 'summary' => 'Queries the Log Service project and Logstore that correspond to an application of browser monitoring.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application. To obtain the PID of the application, perform the following steps: Log on to the Application Real-Time Monitoring Service (ARMS) console. In the left-side navigation pane, choose **Browser Monitoring** > **Browser Monitoring**. On the Browser Monitoring page, click the name of the application. The URL in the address bar contains the PID of the application. The PID is in the pid=xxx format. The PID is usually percent encoded as xxx%40xxx. You must modify this value to remove the percent encoding. For example, if the PID in the URL is xxx%4074xxx, you must replace %40 with the at sign (@) to obtain xxx@74xxx.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'The status of the request.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The content of the log.'."\n", + 'type' => 'string', + 'example' => 'retcode app or task can not be found!', + ], + 'RetcodeSLSConfig' => [ + 'description' => 'The information about Log Service.'."\n", + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Project' => [ + 'description' => 'The Log Service project.'."\n", + 'type' => 'string', + 'example' => 'test-project', + ], + 'Logstore' => [ + 'description' => 'The Log Service Logstore.'."\n", + 'type' => 'string', + 'example' => 'log-test-220431', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Data\\": {\\n \\"Status\\": \\"true\\",\\n \\"Message\\": \\"retcode app or task can not be found!\\",\\n \\"RetcodeSLSConfig\\": {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Project\\": \\"test-project\\",\\n \\"Logstore\\": \\"log-test-220431\\"\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetRetcodeLogstore', + ], + 'GetRetcodeDataByQuery' => [ + 'summary' => 'Queries the Browser Monitoring data based on a query statement of Log Service.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the application.'."\n" + ."\n" + .'Log on to the **ARMS console**. In the left-side navigation pane, choose **Browser Monitoring** > **Browser Monitoring**. On the Browser Monitoring page, click the name of an application. The URL in the address bar contains the process ID (PID) of the application. The PID is indicated in the pid=xxx format. The PID is usually percent encoded as xxx%40xxx. You must modify this value to remove the percent encoding. For example, if the PID in the URL is eb4zdose6v%409781be0f44d\\*\\*\\*\\*, you must replace %40 with an at sign (@) to obtain eb4zdose6v@9781be0f44d\\*\\*\\*\\*.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'Query', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query statement that conforms to the query syntax of a Log Service Logstore.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 't : pv|select sum(times) as pv , approx_distinct(uid) as uv , (date-date%3600000) as date group by date', + ], + ], + [ + 'name' => 'From', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. This value is a UNIX timestamp representing the number of seconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1668687302', + ], + ], + [ + 'name' => 'To', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. This value is a UNIX timestamp representing the number of seconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1668688000', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2A0CEDF1-06FE-44AC-8E21-21A5BE65****', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned for the request. Valid values:'."\n" + ."\n" + .'* 2XX: The request was successful.'."\n" + .'* 3XX: A redirection message was returned.'."\n" + .'* 4XX: The request was invalid.'."\n" + .'* 5XX: A server error occurred.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message returned if the call fails.'."\n", + 'type' => 'string', + 'example' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The Browser Monitoring data returned.'."\n", + 'type' => 'string', + 'example' => '{"total":0,"auth":false,"pageSize":20,"completed":true,"page":1,"items":[]}', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2A0CEDF1-06FE-44AC-8E21-21A5BE65****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"-\\",\\n \\"Success\\": true,\\n \\"Data\\": \\"{\\\\n \\\\\\"total\\\\\\": 1,\\\\n \\\\\\"auth\\\\\\": false,\\\\n \\\\\\"pageSize\\\\\\": 20,\\\\n \\\\\\"completed\\\\\\": true,\\\\n \\\\\\"page\\\\\\": 1,\\\\n \\\\\\"items\\\\\\": [\\\\n {\\\\n \\\\\\"date\\\\\\": \\\\\\"1701820800000\\\\\\",\\\\n \\\\\\"__time__\\\\\\": 1701410567,\\\\n \\\\\\"uv\\\\\\": \\\\\\"64\\\\\\",\\\\n \\\\\\"__source__\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"pv\\\\\\": \\\\\\"890\\\\\\"\\\\n }\\\\n ]\\\\n\\\\t}\\"\\n}","type":"json"}]', + 'title' => 'GetRetcodeDataByQuery', + ], + 'GetRetcodeAppByPid' => [ + 'summary' => 'Queries the objects of a Browser Monitoring application by process identifier (PID).', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The PID of the application. To obtain the PID of the application, perform the following steps: Log on to the Application Real-Time Monitoring Service (ARMS) console. In the left-side navigation pane, choose **Browser Monitoring** > **Browser Monitoring**. On the Browser Monitoring page, click the name of the application. The URL in the address bar contains the PID of the application. The PID is in the pid=xxx format. The PID is usually percent encoded as xxx%40xxx. You must modify this value to remove the percent encoding. For example, if the PID in the URL is xxx%4074xxx, you must replace %40 with the at sign (@) to obtain xxx@74xxx.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'b590lhguqs@9781be0f44dXXXX', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'type' => 'string', + 'required' => false, + 'description' => 'The tag key.'."\n", + 'example' => 'TestKey', + ], + 'Value' => [ + 'type' => 'string', + 'required' => false, + 'description' => 'The tag value.'."\n", + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + 'description' => 'The list of tags.'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '2983BEF7-4A0D-47A2-94A2-8E9C5E63****', + ], + 'RetcodeApp' => [ + 'description' => 'The returned application data.'."\n", + 'type' => 'object', + 'properties' => [ + 'AppName' => [ + 'description' => 'The name of the application that is monitored by Browser Monitoring.'."\n", + 'type' => 'string', + 'example' => 'testRetcodeAppXXXX', + ], + 'RetcodeAppType' => [ + 'description' => 'The type of the application that is monitored by Browser Monitoring. Valid values:'."\n" + ."\n" + .'* `web`: web application'."\n" + .'* `weex`: Weex mobile app'."\n" + .'* `mini_dd`: DingTalk mini program'."\n" + .'* `mini_alipay`: Alipay mini program'."\n" + .'* `mini_wx`: WeChat mini program'."\n" + .'* `mini_common`: mini program on other platforms'."\n", + 'type' => 'string', + 'example' => 'web', + ], + 'AppId' => [ + 'description' => 'The ID of the application. The parameter is an auto-increment parameter.'."\n", + 'type' => 'string', + 'example' => '2787XXXX', + ], + 'Pid' => [ + 'description' => 'The process identifier (PID) of the application.'."\n", + 'type' => 'string', + 'example' => 'b590lhguqs@9781be0f44dXXXX', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group. You can obtain the resource group ID in the **Resource Management** console.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmxidtzXXXX', + ], + 'Tags' => [ + 'description' => 'The tags that are attached to the instance.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'example' => 'testKey', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => 'testValue', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2983BEF7-4A0D-47A2-94A2-8E9C5E63****\\",\\n \\"RetcodeApp\\": {\\n \\"AppName\\": \\"testRetcodeAppXXXX\\",\\n \\"RetcodeAppType\\": \\"web\\",\\n \\"AppId\\": \\"2787XXXX\\",\\n \\"Pid\\": \\"b590lhguqs@9781be0f44dXXXX\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxidtzXXXX\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"testKey\\",\\n \\"Value\\": \\"testValue\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetRetcodeAppByPid', + ], + 'UpdateRumFileStatus' => [ + 'summary' => 'Updates the status of a Real User Monitoring (RUM) file. You can call this operation after the RUM file is uploaded.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'atc8xxxx'."\n" + .'cf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'VersionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The version number of the file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1.0.0', + ], + ], + [ + 'name' => 'Uuid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The unique ID of the file. If you do not set this parameter, the system automatically sets a UUID for you.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MS4wLjAtbWFpbi4wZjM0NzRlOSxxxxxx', + ], + ], + [ + 'name' => 'FileName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test.js.map', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'description' => 'The size of the file. Unit: bytes.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the file. Valid values: SUCCESS and INIT.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SUCCESS', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '626037F5-FDEB-45B0-804C-B3C92797****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"626037F5-FDEB-45B0-804C-B3C92797****\\"\\n}","type":"json"}]', + 'title' => 'UpdateRumFileStatus', + 'description' => 'Real User Monitoring (RUM) is available only in the China (Hangzhou), Singapore, and US (Silicon Valley) regions. Select the correct endpoint.'."\n", + ], + 'GetRumUploadFiles' => [ + 'summary' => 'Queries Real User Monitoring (RUM)-related files, such as symbol tables and SourceMap.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AppType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file type. Valid values: source-map: SourceMap files. mapping: symbol table files for Android. dsym: dSYM files for iOS.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'source-map', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process ID (PID) of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aoxxxxxly@741623b4e91****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'VersionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The version number of the files. If you do not specify this parameter, all versions of the files are returned by default.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1.0.0', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'FileName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'Workspace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'ServiceId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2983BEF7-4A0D-47A2-94A2-8E9C5E63****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\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', + ], + 'Data' => [ + 'description' => 'The queried files.'."\n", + 'type' => 'object', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'FileName' => [ + 'name' => 'FileName', + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'example' => 'test.js.map', + 'backendName' => 'fileName', + ], + 'Uuid' => [ + 'name' => 'Uuid', + 'description' => 'The file ID.'."\n", + 'type' => 'string', + 'example' => 'cxxxerfewrfwerfwerffvrt', + 'backendName' => 'uuid', + ], + 'Size' => [ + 'name' => 'Size', + 'description' => 'The size of the file. Unit: bytes.'."\n", + 'type' => 'string', + 'example' => '1000', + 'backendName' => 'size', + ], + 'LastModifiedTime' => [ + 'name' => 'LastModifiedTime', + 'description' => 'The time when the file was last modified. The value is a timestamp.'."\n", + 'type' => 'any', + 'example' => '1682863151000', + 'backendName' => 'updateTime', + ], + 'VersionId' => [ + 'name' => 'VersionId', + 'description' => 'The version number of the file.'."\n", + 'type' => 'string', + 'example' => '1.0.0', + 'backendName' => 'versionId', + ], + ], + 'extendType' => 'true', + ], + 'properties' => [ + 'FileList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'VersionId' => [ + 'type' => 'string', + ], + 'Uuid' => [ + 'type' => 'string', + ], + 'Size' => [ + 'type' => 'string', + ], + 'FileName' => [ + 'type' => 'string', + ], + 'LastModifiedTime' => [ + 'type' => 'any', + ], + ], + ], + ], + 'NextToken' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2983BEF7-4A0D-47A2-94A2-8E9C5E63****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"内部错误,请联系管理员。\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"FileList\\": [\\n {\\n \\"VersionId\\": \\"\\",\\n \\"Uuid\\": \\"\\",\\n \\"Size\\": \\"\\",\\n \\"FileName\\": \\"\\",\\n \\"LastModifiedTime\\": \\"\\"\\n }\\n ],\\n \\"NextToken\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetRumUploadFiles', + 'description' => 'Real User Monitoring (RUM) is available only in the China (Hangzhou), Singapore, and US (Silicon Valley) regions. Select the correct endpoint.'."\n", + ], + 'GetRumDataForPage' => [ + 'summary' => 'Queries Real User Monitoring (RUM) data by page.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '197708', + 'abilityTreeNodes' => [ + 'FEATUREarmsH2Y9JL', + ], + ], + 'parameters' => [ + [ + 'name' => 'Query', + 'in' => 'query', + 'schema' => [ + 'description' => 'A query statement that complies with the query syntax of Simple Log Service Logstore. For more information, see the parameters corresponding to this operation on the console page.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '* and app.id: xxxx@586810fbxxxx19f '."\n", + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'iixxxjcnuk@582846f37******', + ], + ], + [ + 'name' => 'AppGroup', + 'in' => 'query', + 'schema' => [ + 'description' => 'The group to which the application belongs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. The time is accurate to seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1713687833', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. The time is accurate to seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1713774233', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'Code' => [ + 'description' => 'The responses code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'StartTime is mandatory for this action.', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The result of the operation.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'string', + 'example' => '7', + ], + 'Page' => [ + 'description' => 'The page number.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'string', + 'example' => '20', + ], + 'Authentication' => [ + 'description' => 'A reserved parameter. Ignore this parameter.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Completion' => [ + 'description' => 'Indicates whether the query ends. Valid values: true and false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Preference' => [ + 'description' => 'A reserved parameter. Ignore this parameter.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Items' => [ + 'description' => 'The queried data.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the queried data, in the JSON Map format.'."\n", + 'type' => 'object', + 'example' => 'null', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\",\\n \\"Message\\": \\"内部错误,请联系管理员。\\\\n\\",\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"Data\\": {\\n \\"Total\\": \\"7\\",\\n \\"Page\\": \\"1\\",\\n \\"PageSize\\": \\"20\\",\\n \\"Authentication\\": \\"保留字段,请忽略。\\",\\n \\"Completion\\": \\"true\\",\\n \\"Preference\\": \\"保留字段,请忽略。\\\\n\\\\n\\",\\n \\"Items\\": [\\n {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetRumDataForPage', + 'description' => 'Real User Monitoring (RUM) is available only in the China (Hangzhou), Singapore, and US (Silicon Valley) regions. Select the correct endpoint.'."\n", + ], + 'CreateRumUploadFileUrl' => [ + 'summary' => 'Creates a file upload URL to upload SourceMap files, symbol table files, or dSYM files.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process ID (PID) of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'iioe7jcnuk@582846f37******', + ], + ], + [ + 'name' => 'VersionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The version number of the file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1.0.0', + ], + ], + [ + 'name' => 'Uuid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '125bdb39-a415-4503-bd96-e293925fc64c', + ], + ], + [ + 'name' => 'FileName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test.js.map', + ], + ], + [ + 'name' => 'ContentType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the file. You can set this parameter to "application/zip", "text/plain", or an empty string.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'text/plain', + ], + ], + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-app', + ], + ], + [ + 'name' => 'SourcemapType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file type. Valid values: source-map: SourceMap files. mapping: symbol table files for Android. dsym: dSYM files for iOS.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'source-map', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Workspace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'ServiceId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'Code' => [ + 'description' => 'The response code. 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', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The file upload URL.'."\n", + 'type' => 'string', + 'example' => 'http://arms-rum-v2.oss-cn-hangzhou.aliyuncs.com/113197164xxxxx28/b590lhguqs%40f93xxxxxbf31d3/1.0.0-robots.txt?Expires=1713847079&OSSAccessKeyId=STS.NT6XvoxkyqA&Signature=6ptYX4OTjLMrsleTlA2t97', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"内部错误,请联系管理员。\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Data\\": \\"http://arms-rum-v2.oss-cn-hangzhou.aliyuncs.com/113197164xxxxx28/b590lhguqs%40f93xxxxxbf31d3/1.0.0-robots.txt?Expires=1713847079&OSSAccessKeyId=STS.NT6XvoxkyqA&Signature=6ptYX4OTjLMrsleTlA2t97\\"\\n}","type":"json"}]', + 'title' => 'CreateRumUploadFileUrl', + 'description' => 'This operation returns a URL. You can upload files to the URL. For more information, see [Upload local files with signed URLs](~~2579659~~).'."\n", + ], + 'DeleteRumUploadFile' => [ + 'summary' => 'Deletes a file such as a symbol table or SourceMap.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'VersionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The version number of the file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1.0.0', + ], + ], + [ + 'name' => 'Uuid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MS4wLjAtbWFpbi4wZjM0NzRlOSxxxxxx', + ], + ], + [ + 'name' => 'FileName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file name, with the extension.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test.js.map', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'BatchItems', + 'in' => 'query', + 'schema' => [ + 'description' => 'Information of files to be deleted in JSON array format. If a single file needs to be deleted, this field should be left empty. If multiple files need to be deleted, just fill in this field.', + 'type' => 'string', + 'required' => false, + 'example' => '[{'."\n" + .' "fileName" : "test.js.map",'."\n" + .' "version" : "1.0.0"'."\n" + .' },'."\n" + .' {'."\n" + .' "fileName" : "test.dSYM",'."\n" + .' "version" : "1.20.1",'."\n" + .' "uuid" : "xxxx-xxxx-xxxx-xxxx"'."\n" + .' }]', + ], + ], + [ + 'name' => 'Workspace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'ServiceId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '40B10E04-81E8-4643-970D-F1B38F2E****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'Internal error, please contact the administrator.', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'Indicates whether the file is deleted. If the file is deleted, "success" is returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"40B10E04-81E8-4643-970D-F1B38F2E****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"内部错误,请联系管理员。\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DeleteRumUploadFile', + 'description' => 'Real User Monitoring (RUM) is available only in the China (Hangzhou), Singapore, and US (Silicon Valley) regions. Select the correct endpoint.'."\n", + ], + 'GetRumAppInfo' => [ + 'summary' => 'Obtains the information about a single application in Browser Monitoring.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '197299', + 'abilityTreeNodes' => [ + 'FEATUREarmsRY7LT8', + ], + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process ID (PID) of the application.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'AppGroup', + 'in' => 'query', + 'schema' => [ + 'description' => 'The group to which the application belongs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 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', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'StartTime is mandatory for this action.', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The application details.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'description' => 'The time when the application was created. The value is a timestamp. Unit: milliseconds.'."\n", + 'type' => 'string', + 'example' => '1683353594000', + ], + 'Name' => [ + 'description' => 'The application name.'."\n", + 'type' => 'string', + 'example' => 'tomcat-demo-test', + ], + 'Pid' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'example' => 'avccccefy0@24cccccbf384dc6', + ], + 'Type' => [ + 'description' => 'The type of the application. Valid value: RUM.'."\n", + 'type' => 'string', + 'example' => 'RUM', + ], + 'NickName' => [ + 'description' => 'The alias of the application.'."\n", + 'type' => 'string', + 'example' => 'nickname', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'AppType' => [ + 'description' => 'The application type. Valid values: web, miniapp, ios, and android.'."\n", + 'type' => 'string', + 'example' => 'web', + ], + 'Status' => [ + 'description' => 'The status of the application. Valid values: created, running, and stopped.'."\n", + 'type' => 'string', + 'example' => 'running', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-aek2vezare****', + ], + 'IsSubscription' => [ + 'description' => 'Indicates whether the application is subscribed. Valid values: true and false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Description' => [ + 'description' => 'The description of the application.'."\n", + 'type' => 'string', + 'example' => 'Portal home page.', + ], + 'PackageName' => [ + 'description' => 'The name of the application package.'."\n", + 'type' => 'string', + 'example' => 'com.alibaba.rum', + ], + 'Endpoint' => [ + 'description' => 'The endpoint that is used to report application data.'."\n", + 'type' => 'string', + 'example' => 'xxxxxxxx-default-cn.rum.aliyuncs.com', + ], + 'SlsProject' => [ + 'description' => 'The name of the Simple Log Service project that stores application data.'."\n", + 'type' => 'string', + 'example' => 'proj-xtrace-xxxxxxxxxxxxxxxxxxxxxxx-cn-hangzhou', + ], + 'Tags' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'Label', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'Value', + ], + ], + ], + ], + 'SlsLogstore' => [ + 'description' => 'The name of the Simple Log Service Logstore that stores application data.'."\n", + 'type' => 'string', + 'example' => 'logstore-rum', + ], + 'ServiceDomainConfigs' => [ + 'description' => 'The list of service domain configurations. Only mobile applications are supported.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'A service domain configuration of the queried list.'."\n", + 'type' => 'object', + 'properties' => [ + 'Domain' => [ + 'description' => 'The domain name or IP address.'."\n", + 'type' => 'string', + 'example' => 'example.com', + ], + 'Description' => [ + 'description' => 'The description.'."\n", + 'type' => 'string', + 'example' => 'Test'."\n", + ], + 'Tracing' => [ + 'description' => 'Indicates whether the tracing analysis feature is enabled. To enable the tracing analysis feature, you must activate Managed Service for OpenTelemetry. Valid values:'."\n" + ."\n" + .'* `true`: enables the tracing analysis feature. If you enable the tracing analysis feature, related headers are inserted into requests for the domain name.'."\n" + .'* `false`: disables the tracing analysis feature.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'PropagatorTypes' => [ + 'description' => 'The trace propagation protocols. This parameter is required if the tracing analysis feature is enabled.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The trace propagation protocol. Valid values: sw6 and sw8. sw6 indicates SkyWalking V2 and sw8 indicates SkyWalking V3.'."\n", + 'type' => 'string', + 'example' => 'sw8', + ], + ], + 'SamplingRate' => [ + 'description' => 'The sampling rate of a trace. Valid values: (0, 100].'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + ], + ], + ], + 'CdnDomain' => [ + 'description' => 'The domain name of the SDK.'."\n", + 'type' => 'string', + 'example' => 'b59xxxxxxxx-sdk.rum.aliyuncs.com/v2/browser-sdk.js', + ], + 'BonreeSDKConfig' => [ + 'description' => 'The collection configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'moduleConfig' => [ + 'description' => 'The module configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'enable' => [ + 'description' => 'Indicates whether the configuration is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'defaultConfig' => [ + 'description' => 'The default configuration of the application.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'enable' => [ + 'type' => 'boolean', + 'description' => 'Indicates whether the configuration is enabled.'."\n", + 'example' => 'true', + ], + ], + 'description' => 'The module configuration.'."\n", + ], + ], + 'versionConfigs' => [ + 'description' => 'The version configurations of the application.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'useCustom' => [ + 'type' => 'boolean', + 'example' => 'true', + 'description' => 'Indicates whether the custom configuration is used.'."\n", + ], + 'customConfig' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'enable' => [ + 'type' => 'boolean', + 'description' => 'Indicates whether the configuration is enabled.'."\n", + 'example' => 'true', + ], + ], + 'description' => 'The module configuration.'."\n", + ], + 'description' => 'The custom configuration.'."\n", + ], + 'description' => [ + 'type' => 'string', + 'example' => 'test', + 'description' => 'The description of the version configuration.'."\n", + ], + 'updateTime' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The time when the version configuration was updated.'."\n", + 'example' => '1721112372055', + ], + ], + 'description' => 'The version configuration.'."\n", + ], + ], + ], + ], + 'samplingConfig' => [ + 'description' => 'Sampling configuration.', + 'type' => 'object', + 'properties' => [ + 'samplingType' => [ + 'description' => 'Sampling type, currently only session random sampling is supported, that is, fixed transmission: 1.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'samplingRate' => [ + 'description' => 'Sampling rate: between (0, 1000], a thousandth.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '500', + ], + ], + ], + ], + ], + 'AppGroup' => [ + 'description' => 'The group to which the application belongs.'."\n", + 'type' => 'string', + 'example' => 'default', + ], + 'BackendServiceTraceRegion' => [ + 'description' => 'The region where the backend is deployed.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'AppConfig' => [ + 'description' => 'The application configurations in the JSON format. This parameter is deprecated.'."\n", + 'type' => 'string', + 'example' => '{"apiRequestOfH5":300,"apiRequestOfOriginal":500,"coldStart":5000,"hotStart":3000,"staticResourceLoad":300,"stutter":1000,"viewLoadOfH5":1000,"viewLoadOfOriginal":2000}', + ], + 'WebSDKConfigJson' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"内部错误,请联系管理员。\\",\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"Data\\": {\\n \\"CreateTime\\": \\"1683353594000\\",\\n \\"Name\\": \\"tomcat-demo-test\\",\\n \\"Pid\\": \\"avccccefy0@24cccccbf384dc6\\",\\n \\"Type\\": \\"RUM\\",\\n \\"NickName\\": \\"nickname\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AppType\\": \\"web\\",\\n \\"Status\\": \\"running\\",\\n \\"ResourceGroupId\\": \\"rg-aek2vezare****\\",\\n \\"IsSubscription\\": \\"true\\",\\n \\"Description\\": \\"门户首页。\\",\\n \\"PackageName\\": \\"com.alibaba.rum\\",\\n \\"Endpoint\\": \\"xxxxxxxx-default-cn.rum.aliyuncs.com\\",\\n \\"SlsProject\\": \\"proj-xtrace-xxxxxxxxxxxxxxxxxxxxxxx-cn-hangzhou\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"Label\\",\\n \\"Value\\": \\"Value\\"\\n }\\n ],\\n \\"SlsLogstore\\": \\"logstore-rum\\",\\n \\"ServiceDomainConfigs\\": [\\n {\\n \\"Domain\\": \\"example.com\\",\\n \\"Description\\": \\"测试\\",\\n \\"Tracing\\": true,\\n \\"PropagatorTypes\\": [\\n \\"sw8\\"\\n ],\\n \\"SamplingRate\\": 100\\n }\\n ],\\n \\"CdnDomain\\": \\"b59xxxxxxxx-sdk.rum.aliyuncs.com/v2/browser-sdk.js\\",\\n \\"BonreeSDKConfig\\": {\\n \\"moduleConfig\\": {\\n \\"enable\\": true,\\n \\"defaultConfig\\": {\\n \\"key\\": {\\n \\"enable\\": true\\n }\\n },\\n \\"versionConfigs\\": {\\n \\"key\\": {\\n \\"useCustom\\": true,\\n \\"customConfig\\": {\\n \\"key\\": {\\n \\"enable\\": true\\n }\\n },\\n \\"description\\": \\"1.1.0版本配置\\",\\n \\"updateTime\\": 1721112372055\\n }\\n }\\n },\\n \\"samplingConfig\\": {\\n \\"samplingType\\": 1,\\n \\"samplingRate\\": 500\\n }\\n },\\n \\"AppGroup\\": \\"default\\",\\n \\"BackendServiceTraceRegion\\": \\"cn-hangzhou\\",\\n \\"AppConfig\\": \\"{\\\\\\"apiRequestOfH5\\\\\\":300,\\\\\\"apiRequestOfOriginal\\\\\\":500,\\\\\\"coldStart\\\\\\":5000,\\\\\\"hotStart\\\\\\":3000,\\\\\\"staticResourceLoad\\\\\\":300,\\\\\\"stutter\\\\\\":1000,\\\\\\"viewLoadOfH5\\\\\\":1000,\\\\\\"viewLoadOfOriginal\\\\\\":2000}\\",\\n \\"WebSDKConfigJson\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetRumAppInfo', + 'description' => 'Real User Monitoring (RUM) is available only in the China (Hangzhou), Singapore, and US (Silicon Valley) regions. Select the correct endpoint.'."\n", + ], + 'GetRumApps' => [ + 'summary' => 'Queries a list of Real User Monitoring (RUM) applications.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '194710', + 'abilityTreeNodes' => [ + 'FEATUREarmsRY7LT8', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'b590lhguqs@28f515462******', + ], + ], + [ + 'name' => 'AppGroup', + 'in' => 'query', + 'schema' => [ + 'description' => 'The group to which the application belongs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application. You can specify only one application name in each request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-app', + ], + ], + [ + 'name' => 'AppType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application type. Currently, supported application types include: web, mini program, Android, iOS, Windows, macOS, and HarmonyOS.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'web', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '70675725-8F11-4817-8106-CFE0AD71****', + ], + 'Code' => [ + 'description' => 'The response code. 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', + ], + 'Message' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'Internal error, please contact customer service.', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'AppList' => [ + 'description' => 'The queried applications.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The application details.'."\n", + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'description' => 'The time when the application was created. The value is a timestamp.'."\n", + 'type' => 'any', + 'example' => '1685686960872', + ], + 'Name' => [ + 'description' => 'The application name.'."\n", + 'type' => 'string', + 'example' => 'home page', + ], + 'Pid' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'example' => 'xxxxx@cc08bdxxxx20b15', + ], + 'Type' => [ + 'description' => 'The type of the application. Valid value: RUM.'."\n", + 'type' => 'string', + 'example' => 'RUM', + ], + 'NickName' => [ + 'description' => 'The alias of the application.'."\n", + 'type' => 'string', + 'example' => 'Williamtag', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'AppType' => [ + 'description' => 'The application type. Valid values: web, miniapp, ios, and android.'."\n", + 'type' => 'string', + 'example' => 'web', + ], + 'Status' => [ + 'description' => 'The status of the application. Valid values: created, running, and stopped.'."\n", + 'type' => 'string', + 'example' => 'running', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmzaq3ypaqkdy', + ], + 'Tags' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key. The tag key can be up to 128 characters in length. It cannot start with aliyun or acs: and cannot contain http:// or https://.'."\n", + 'type' => 'string', + 'example' => 'tag1', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + ], + ], + ], + 'IsSubscription' => [ + 'description' => 'Indicates whether the application is subscribed. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Description' => [ + 'description' => 'The description of the application.'."\n", + 'type' => 'string', + 'example' => 'TEST', + ], + 'PackageName' => [ + 'description' => 'The package name of the Android application.'."\n", + 'type' => 'string', + 'example' => 'com.zy.yxws', + ], + 'Endpoint' => [ + 'description' => 'The endpoint that is used to report application data.'."\n", + 'type' => 'string', + 'example' => 'xxxxxxxx-default-cn.rum.aliyuncs.com', + ], + 'SlsProject' => [ + 'description' => 'The name of the Simple Log Service project that stores application data.'."\n", + 'type' => 'string', + 'example' => 'proj-xtrace-xxxxxxxba6ef5466b5debf9e2f951-cn-hangzhou', + ], + 'SlsLogstore' => [ + 'description' => 'The name of the Simple Log Service Logstore that stores application data.'."\n", + 'type' => 'string', + 'example' => 'logstore-rum', + ], + 'ServiceDomainConfigs' => [ + 'description' => 'The list of service domain configurations. Only mobile applications are supported.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The service domain configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'Domain' => [ + 'description' => 'The domain name or IP address.'."\n", + 'type' => 'string', + 'example' => 'example.com', + ], + 'Description' => [ + 'description' => 'The description.'."\n", + 'type' => 'string', + 'example' => 'Test'."\n", + ], + 'Tracing' => [ + 'description' => 'Indicates whether the tracing analysis feature is enabled. To enable the tracing analysis feature, you must activate Managed Service for OpenTelemetry. Valid values:'."\n" + ."\n" + .'* `true`: enables the tracing analysis feature. If you enable the tracing analysis feature, related headers are inserted into requests for the domain name.'."\n" + .'* `false`: disables the tracing analysis feature.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'PropagatorTypes' => [ + 'description' => 'The trace propagation protocols. This parameter is required if the tracing analysis feature is enabled.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The trace propagation protocol. Valid values: sw6 and sw8. sw6 indicates SkyWalking V2 and sw8 indicates SkyWalking V3.'."\n", + 'type' => 'string', + 'example' => 'sw8', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"70675725-8F11-4817-8106-CFE0AD71****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"内部错误,请联系客服。\\",\\n \\"HttpStatusCode\\": 200,\\n \\"AppList\\": [\\n {\\n \\"CreateTime\\": \\"1685686960872\\",\\n \\"Name\\": \\"门户首页。\\",\\n \\"Pid\\": \\"xxxxx@cc08bdxxxx20b15\\",\\n \\"Type\\": \\"RUM\\",\\n \\"NickName\\": \\"Williamtag\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AppType\\": \\"web\\",\\n \\"Status\\": \\"running\\",\\n \\"ResourceGroupId\\": \\"rg-acfmzaq3ypaqkdy\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"tag1\\",\\n \\"Value\\": \\"ok\\"\\n }\\n ],\\n \\"IsSubscription\\": true,\\n \\"Description\\": \\"测试\\",\\n \\"PackageName\\": \\"com.zy.yxws\\",\\n \\"Endpoint\\": \\"xxxxxxxx-default-cn.rum.aliyuncs.com\\",\\n \\"SlsProject\\": \\"proj-xtrace-xxxxxxxba6ef5466b5debf9e2f951-cn-hangzhou\\",\\n \\"SlsLogstore\\": \\"logstore-rum\\",\\n \\"ServiceDomainConfigs\\": [\\n {\\n \\"Domain\\": \\"example.com\\",\\n \\"Description\\": \\"测试\\",\\n \\"Tracing\\": \\"true\\",\\n \\"PropagatorTypes\\": [\\n \\"sw8\\"\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetRumApps', + 'description' => 'Real User Monitoring (RUM) is available only in the China (Hangzhou), Singapore, and US (Silicon Valley) regions. Select the correct endpoint.'."\n", + ], + 'CreateRumApp' => [ + 'summary' => 'Create a Real User Monitoring (RUM) application.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '194698', + 'abilityTreeNodes' => [ + 'FEATUREarmsRY7LT8', + ], + ], + 'parameters' => [ + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application name.', + 'type' => 'string', + 'required' => true, + 'example' => 'test-app', + ], + ], + [ + 'name' => 'SiteType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application type. Valid values: web, miniapp, ios, and android.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'web', + ], + ], + [ + 'name' => 'Source', + 'in' => 'query', + 'schema' => [ + 'description' => 'The source. This is a reserved parameter.', + 'type' => 'string', + 'required' => false, + 'example' => 'arms', + ], + ], + [ + 'name' => 'AppGroup', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the application group.', + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => 'The description of the application.', + 'type' => 'string', + 'required' => false, + 'example' => 'Monitoring description', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group.', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The list of tags. You can specify a maximum of 20 tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of tags. You can specify a maximum of 20 tags.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'app', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ecs', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'PackageName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the Android application package. This parameter is required if you create an Android application.', + 'type' => 'string', + 'required' => false, + 'example' => 'com.xxxx.xxxxxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'NickName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The nickname of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test-app', + ], + ], + [ + 'name' => 'RealRegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region where the application resides. You can leave this parameter empty or set it to China East 2 Finance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai-finance-1', + ], + ], + [ + 'name' => 'Language', + 'in' => 'query', + 'schema' => [ + 'description' => 'The language used by the client.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'java', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '1A474FF8-7861-4D00-81B5-5BC3DA4E****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 2XX indicates that the request was successful. 3XX indicates that the request was redirected. 4XX indicates that a request error occurred. 5XX indicates that a server error occurred.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'title' => 'Id of the request', + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The application ID and domain names. This parameter is returned if the application is created. Multiple domain names are separated with commas (,).'."\n", + 'type' => 'object', + 'properties' => [ + 'Pid' => [ + 'description' => 'The process ID (PID) of the application.'."\n", + 'type' => 'string', + 'example' => 'avccccxxxx@24cxxxxbf384dc6', + ], + 'Endpoint' => [ + 'description' => 'The endpoint that is used to report application data.'."\n", + 'type' => 'string', + 'example' => 'xxxxxxxx-default-cn.rum.aliyuncs.com', + ], + 'CdnDomain' => [ + 'description' => 'The domain name of the SDK.'."\n", + 'type' => 'string', + 'example' => 'bxxxxxxx-sdk.rum.aliyuncs.com/v2/browser-sdk.js', + ], + ], + 'example' => 'ggxxxnjuz@xxxx,xxxxxx-default-cn.rum.aliyuncs.com', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.', + 'type' => 'string', + 'example' => 'rg-acfmxyexli2****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A474FF8-7861-4D00-81B5-5BC3DA4E****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"应用已存在。\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Data\\": {\\n \\"Pid\\": \\"avccccxxxx@24cxxxxbf384dc6\\",\\n \\"Endpoint\\": \\"xxxxxxxx-default-cn.rum.aliyuncs.com\\",\\n \\"CdnDomain\\": \\"bxxxxxxx-sdk.rum.aliyuncs.com/v2/browser-sdk.js\\"\\n },\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\"\\n}","type":"json"}]', + 'title' => 'CreateRumApp', + ], + 'DeleteRumApp' => [ + 'summary' => 'Deletes a RUM application.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the application.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'b590lhguqs@28f515462******', + ], + ], + [ + 'name' => 'AppGroup', + 'in' => 'query', + 'schema' => [ + 'description' => 'The group where the application resides.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'RealRegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region where the application resides. You can leave this parameter empty or set it to China East 2 Finance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai-finance-1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '4C518054-852F-4023-ABC1-4AF95FF7****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Result' => [ + 'description' => 'The message that appears when the application is deleted.'."\n", + 'type' => 'string', + 'example' => 'Success to delete app.', + ], + 'ResourceGroupId' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'example' => 'rg-aek2eq4peca****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4C518054-852F-4023-ABC1-4AF95FF7****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"删除的应用不存在。\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Result\\": \\"删除应用成功。\\",\\n \\"ResourceGroupId\\": \\"rg-aek2eq4peca****\\"\\n}","type":"json"}]', + 'title' => 'DeleteRumApp', + ], + 'UpdateRumApp' => [ + 'summary' => 'Updates a Real User Monitoring (RUM) application.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '211832', + 'abilityTreeNodes' => [ + 'FEATUREarmsRY7LT8', + ], + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'b5xxxxs@d8deedfa9bf****', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => 'The description of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'IsSubscribe', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether you want to subscribe to the application. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Nickname', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alias of the application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Android Test', + ], + ], + [ + 'name' => 'Restart', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to restart the application. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'Stop', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to stop the application. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'AutoRestart', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to restart the application the next day. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'ServiceDomainOperationJson', + 'in' => 'query', + 'schema' => [ + 'description' => 'The service domain name of the application. You can create, modify, and delete service domain name configurations.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{\\"Op\\":\\"Update\\",\\"Domain\\":\\"example.com\\",\\"Config\\":{\\"Description\\":\\"message\\",\\"Tracing\\":\\"true\\",\\"PropagatorTypes\\":[\\"sw8\\"]}}', + ], + ], + [ + 'name' => 'BonreeSDKConfigJson', + 'in' => 'query', + 'schema' => [ + 'description' => 'The collection configurations of the mobile SDK. You can enable or disable collection configurations based on the app version.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{\\"moduleConfig\\":{\\"enable\\":true,\\"defaultConfig\\":{\\"network\\":{\\"enable\\":true},\\"h5\\":{\\"enable\\":true},\\"routechange\\":{\\"enable\\":true},\\"crash\\":{\\"enable\\":true},\\"view\\":{\\"enable\\":true},\\"coollaunch\\":{\\"enable\\":true},\\"hotlaunch\\":{\\"enable\\":true},\\"action\\":{\\"enable\\":true},\\"lagstuck\\":{\\"enable\\":true},\\"lagfps\\":{\\"enable\\":true},\\"statechange\\":{\\"enable\\":true},\\"anr\\":{\\"enable\\":true},\\"customlog\\":{\\"enable\\":true},\\"customevent\\":{\\"enable\\":true},\\"custommetric\\":{\\"enable\\":true}},\\"versionConfigs\\":{\\"1.1.0\\":{\\"useCustom\\":true,\\"customConfig\\":{\\"network\\":{\\"enable\\":true},\\"h5\\":{\\"enable\\":true},\\"routechange\\":{\\"enable\\":true},\\"crash\\":{\\"enable\\":true},\\"view\\":{\\"enable\\":true},\\"coollaunch\\":{\\"enable\\":true},\\"hotlaunch\\":{\\"enable\\":true},\\"action\\":{\\"enable\\":true},\\"lagstuck\\":{\\"enable\\":false},\\"lagfps\\":{\\"enable\\":false},\\"statechange\\":{\\"enable\\":true},\\"anr\\":{\\"enable\\":true},\\"customlog\\":{\\"enable\\":true},\\"customevent\\":{\\"enable\\":true},\\"custommetric\\":{\\"enable\\":true}}},\\"1.2.0\\":{\\"useCustom\\":false,\\"customConfig\\":{}}}}}', + ], + ], + [ + 'name' => 'RealRegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region where the application resides. You can leave this parameter empty or set it to China East 2 Finance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'BackendServiceTraceRegion', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region where the backend application is deployed. This parameter is used in end-to-end tracing scenarios.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{\\"moduleConfig\\":{\\"enable\\":true,\\"defaultConfig\\":{\\"network\\":{\\"enable\\":true},\\"h5\\":{\\"enable\\":true},\\"routechange\\":{\\"enable\\":true},\\"crash\\":{\\"enable\\":true},\\"view\\":{\\"enable\\":true},\\"coollaunch\\":{\\"enable\\":true},\\"hotlaunch\\":{\\"enable\\":true},\\"action\\":{\\"enable\\":true},\\"lagstuck\\":{\\"enable\\":true},\\"lagfps\\":{\\"enable\\":true},\\"statechange\\":{\\"enable\\":true},\\"anr\\":{\\"enable\\":true},\\"customlog\\":{\\"enable\\":true},\\"customevent\\":{\\"enable\\":true},\\"custommetric\\":{\\"enable\\":true}},\\"versionConfigs\\":{\\"1.1.0\\":{\\"useCustom\\":true,\\"customConfig\\":{\\"network\\":{\\"enable\\":true},\\"h5\\":{\\"enable\\":true},\\"routechange\\":{\\"enable\\":true},\\"crash\\":{\\"enable\\":true},\\"view\\":{\\"enable\\":true},\\"coollaunch\\":{\\"enable\\":true},\\"hotlaunch\\":{\\"enable\\":true},\\"action\\":{\\"enable\\":true},\\"lagstuck\\":{\\"enable\\":false},\\"lagfps\\":{\\"enable\\":false},\\"statechange\\":{\\"enable\\":true},\\"anr\\":{\\"enable\\":true},\\"customlog\\":{\\"enable\\":true},\\"customevent\\":{\\"enable\\":true},\\"custommetric\\":{\\"enable\\":true}}},\\"1.2.0\\":{\\"useCustom\\":false,\\"customConfig\\":{}}}}}', + ], + ], + [ + 'name' => 'AppConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application configurations in the JSON format. This parameter is deprecated.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"apiRequestOfH5":300,"apiRequestOfOriginal":500,"coldStart":5000,"hotStart":3000,"staticResourceLoad":300,"stutter":1000,"viewLoadOfH5":1000,"viewLoadOfOriginal":2000}', + ], + ], + [ + 'name' => 'WebSDKConfigJson', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'E9C9DA3D-10FE-472E-9EEF-2D0A3E41****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The details of the returned results.'."\n", + 'type' => 'object', + 'properties' => [ + 'Config' => [ + 'description' => 'The user configurations. This is a reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Usage' => [ + 'description' => 'The usage. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10000', + ], + 'Limit' => [ + 'description' => 'The QPS limit. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100000', + ], + 'Limited' => [ + 'description' => 'Indicates whether the request is throttled due to the QPS limit. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E9C9DA3D-10FE-472E-9EEF-2D0A3E41****\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\",\\n \\"Message\\": \\"message\\",\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"Data\\": {\\n \\"Config\\": \\"用户配置,保留字段。\\",\\n \\"Usage\\": 10000,\\n \\"Limit\\": 100000,\\n \\"Limited\\": true\\n }\\n}","type":"json"}]', + 'title' => 'UpdateRumApp', + 'description' => 'Real User Monitoring (RUM) is available only in the China (Hangzhou), Singapore, and US (Silicon Valley) regions. Select the correct endpoint.'."\n", + ], + 'GetRumExceptionStack' => [ + 'summary' => 'Queries the exception stack information of a Real User Monitoring (RUM) application.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '213079', + 'abilityTreeNodes' => [ + 'FEATUREarms46ES94', + ], + ], + 'parameters' => [ + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'atxxxxzkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'ExceptionStack', + 'in' => 'query', + 'schema' => [ + 'description' => 'The exception stack information. Set the value to a JSON string. call_stack.info represents the stack information, call_stack.thread.name represents the thread name, and call_stack.thread.id represents the thread ID. This parameter is exactly the same as the exception.stack parameter in the logstore-rum Logstore of Simple Log Service.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '['."\n" + .'{'."\n" + .' "call_stack.info": "libsystem_kernel.dylib 0x00000001f1ce9178 0x00000001f1ce8000 + 4472\\r\\nlibsystem_kernel.dylib 0x00000001f1ce8f10 0x00000001f1ce8000 + 3856\\r\\nlibsystem_kernel.dylib 0x00000001f1ced718 0x00000001f1ce8000 + 22296\\r\\nAlibabaCloudRUM 0x0000000106711af4 0x0000000106660000 + 727796\\r\\nlibsystem_pthread.dylib 0x00000002146744d4 0x0000000214672000 + 9428",'."\n" + .' "call_stack.thread.name": "#3 BRSCrash Exception Handler (Secondary)",'."\n" + .' "call_stack.thread.id": "16643"'."\n" + .' }'."\n" + .']', + ], + ], + [ + 'name' => 'ExceptionBinaryImages', + 'in' => 'query', + 'schema' => [ + 'description' => 'The binary images, which represent all executable files loaded into the process address space when a crash occurs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'iOSDemo:arm64%3B1489F4D3-6DE2-300C-90E9-E1B869675351%3B0x0000000104064000\\nAlibabaCloudRUM:arm64%3BAB7B3A8E-6CEE-325D-BCBB-8DA50E61804F%3B0x0000000106660000\\nlibdispatch.dylib:arm', + ], + ], + [ + 'name' => 'ExceptionThreadId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the exception thread.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '16643', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'SourcemapType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The parsing type. Valid values:'."\n" + ."\n" + .'* js: Parses JavaScript errors.'."\n" + .'* sym: Parses PC errors.'."\n" + .'* har: Parses HarmonyOS errors.'."\n" + .'* dSYM: Parses iOS errors.'."\n" + .'* so: Parses Android errors.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'source-map', + ], + ], + [ + 'name' => 'ExtraInfo', + 'in' => 'query', + 'schema' => [ + 'description' => 'Extra information about iOS symbol tables. You can leave this parameter empty.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'GraphicsServices:system/GraphicsServices/85419099-269B-336D-86B4-0D52D0FF6923/GraphicsServices;WebCore:system/WebCore/BF44A3F4-85D4-38C8-BF26-197F06ADE273/WebCore', + ], + ], + [ + 'name' => 'Workspace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'ServiceId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request.', + 'type' => 'string', + 'example' => 'B6A00968-82A8-4F14-9D1B-B53827DB****', + ], + 'Code' => [ + 'description' => 'The responses code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The response message.'."\n", + 'type' => 'object', + 'properties' => [ + 'ThreadId' => [ + 'description' => 'The thread ID.'."\n", + 'type' => 'string', + 'example' => '16643', + ], + 'Lines' => [ + 'description' => 'The list of stacks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The exception stack information that is parsed.'."\n", + 'type' => 'string', + 'example' => '"CoreFoundation 0x00000001aa66a678 0x00000001aa57e000 + 968312",'."\n" + .' "libobjc.A.dylib 0x00000001a2917c80 0x00000001a28ec000 + 179328"', + ], + ], + 'CrashReason' => [ + 'description' => 'The cause of the exception. This parameter is exposed during the parsing of PC errors.'."\n", + 'type' => 'string', + 'example' => 'EXC_BAD_ACCESS / KERN_INVALID_ADDRESS', + ], + 'CrashAddress' => [ + 'description' => 'The crash address. This parameter is exposed during the parsing of PC errors.'."\n", + 'type' => 'string', + 'example' => '0x1', + ], + 'ThreadInfoList' => [ + 'description' => 'The thread stack information captured during PC crashes.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ThreadTag' => [ + 'description' => 'The thread tag, including the thread number and name.'."\n", + 'type' => 'string', + 'example' => 'Thread 0 (crashed)', + ], + 'ThreadDetail' => [ + 'description' => 'Thread stack details.'."\n", + 'type' => 'string', + 'example' => ' "0 libsystem_platform.dylib + 0x1ab5\\n rax = 0x0000000000000001 rdx = 0x0000000000000064\\n rcx = 0xffffffffffffffff rbx = 0x0000000107701bd0\\n rsi = 0x0101010101010101 rdi = 0x0000000000000001\\n rbp = 0x00007ff7b8d64300 rsp = 0x00007ff7b8d64300\\n r8 = 0x000000000000000a r9 = 0x0000000000000000\\n r10 = 0x0000000000000001 r11 = 0x0000000000000247\\n r12 = 0x00007ff7b8d64390 r13 = 0x0000000000000000\\n r14 = 0x000000010719d770 r15 = 0x00007ff7b8d64500\\n rip = 0x00007ff807a40ab5\\n Found by: given as instruction pointer in context\\n 1 alibabacloud_rum_example + 0x2ad1\\n rbp = 0x00007ff7b8d64310 rsp = 0x00007ff7b8d64310\\n rip = 0x000000010719dad1\\n Found by: previous frame\'s frame pointer\\n 2 alibabacloud_rum_example + 0x2a3b\\n rbp = 0x00007ff7b8d64360 rsp = 0x00007ff7b8d64320\\n rip = 0x000000010719da3b\\n Found by: previous frame\'s frame pointer\\n 3 0x7ff807688345\\n rbp = 0x00007ff7b8d64580 rsp = 0x00007ff7b8d64370\\n rip = 0x00007ff807688345\\n Found by: previous frame\'s frame pointer"'."\n", + ], + ], + 'description' => '', + ], + ], + 'ModuleName' => [ + 'description' => 'The name of the crash parsing module. This parameter is exposed during the parsing of PC errors.'."\n", + 'type' => 'string', + 'example' => 'alibabacloud_rum_example', + ], + 'Uuid' => [ + 'description' => 'The UUID of the symbol table required for parsing the stack. This parameter is exposed during the parsing of PC errors.'."\n", + 'type' => 'string', + 'example' => '9032259CEB9130E780C6DE8FDECCD7990', + ], + 'BinaryImages' => [ + 'description' => 'The name and UUID of the symbol table required for parsing the exception stack. This parameter is exposed during the parsing of PC errors.'."\n", + 'type' => 'string', + 'example' => '"04B5B216682E40BF9BBE9698E3F98CAA0,libcurl.4.dylib;7878DB3CF21A3C13A203B7E3B0FA66250,libalibabacloud_rum.dylib;0F9F96FE6B1C3253A33AC9E4A0C2A3860,libsystem_kernel.dylib;3DF3256F466E37BCB995A5A9956E14150,libsystem_pthread.dylib;000000000000000000000000000000000,Security;EA4B83A319EB3E15B22CDF035DBD49250,alibabacloud_rum_example;710BB12EEEC744BAB41D1849CA3AD8021,LTSDK.pdb;EE330BA9C49E4730AA15A2B7C0BB2CAE1,JBLive.pdb"', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B6A00968-82A8-4F14-9D1B-B53827DB****\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\",\\n \\"Message\\": \\"内部错误,请联系管理员。\\",\\n \\"HttpStatusCode\\": \\"200\\",\\n \\"Data\\": {\\n \\"ThreadId\\": \\"16643\\",\\n \\"Lines\\": [\\n \\"\\\\\\"CoreFoundation 0x00000001aa66a678 0x00000001aa57e000 + 968312\\\\\\",\\\\n \\\\\\"libobjc.A.dylib 0x00000001a2917c80 0x00000001a28ec000 + 179328\\\\\\"\\"\\n ],\\n \\"CrashReason\\": \\"EXC_BAD_ACCESS / KERN_INVALID_ADDRESS\\",\\n \\"CrashAddress\\": \\"0x1\\",\\n \\"ThreadInfoList\\": [\\n {\\n \\"ThreadTag\\": \\"Thread 0 (crashed)\\",\\n \\"ThreadDetail\\": \\" \\\\\\"0 libsystem_platform.dylib + 0x1ab5\\\\\\\\n rax = 0x0000000000000001 rdx = 0x0000000000000064\\\\\\\\n rcx = 0xffffffffffffffff rbx = 0x0000000107701bd0\\\\\\\\n rsi = 0x0101010101010101 rdi = 0x0000000000000001\\\\\\\\n rbp = 0x00007ff7b8d64300 rsp = 0x00007ff7b8d64300\\\\\\\\n r8 = 0x000000000000000a r9 = 0x0000000000000000\\\\\\\\n r10 = 0x0000000000000001 r11 = 0x0000000000000247\\\\\\\\n r12 = 0x00007ff7b8d64390 r13 = 0x0000000000000000\\\\\\\\n r14 = 0x000000010719d770 r15 = 0x00007ff7b8d64500\\\\\\\\n rip = 0x00007ff807a40ab5\\\\\\\\n Found by: given as instruction pointer in context\\\\\\\\n 1 alibabacloud_rum_example + 0x2ad1\\\\\\\\n rbp = 0x00007ff7b8d64310 rsp = 0x00007ff7b8d64310\\\\\\\\n rip = 0x000000010719dad1\\\\\\\\n Found by: previous frame\'s frame pointer\\\\\\\\n 2 alibabacloud_rum_example + 0x2a3b\\\\\\\\n rbp = 0x00007ff7b8d64360 rsp = 0x00007ff7b8d64320\\\\\\\\n rip = 0x000000010719da3b\\\\\\\\n Found by: previous frame\'s frame pointer\\\\\\\\n 3 0x7ff807688345\\\\\\\\n rbp = 0x00007ff7b8d64580 rsp = 0x00007ff7b8d64370\\\\\\\\n rip = 0x00007ff807688345\\\\\\\\n Found by: previous frame\'s frame pointer\\\\\\"\\\\n\\"\\n }\\n ],\\n \\"ModuleName\\": \\"alibabacloud_rum_example\\",\\n \\"Uuid\\": \\"9032259CEB9130E780C6DE8FDECCD7990\\",\\n \\"BinaryImages\\": \\"\\\\\\"04B5B216682E40BF9BBE9698E3F98CAA0,libcurl.4.dylib;7878DB3CF21A3C13A203B7E3B0FA66250,libalibabacloud_rum.dylib;0F9F96FE6B1C3253A33AC9E4A0C2A3860,libsystem_kernel.dylib;3DF3256F466E37BCB995A5A9956E14150,libsystem_pthread.dylib;000000000000000000000000000000000,Security;EA4B83A319EB3E15B22CDF035DBD49250,alibabacloud_rum_example;710BB12EEEC744BAB41D1849CA3AD8021,LTSDK.pdb;EE330BA9C49E4730AA15A2B7C0BB2CAE1,JBLive.pdb\\\\\\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetRumExceptionStack', + 'description' => 'Real User Monitoring (RUM) is available only in the China (Hangzhou), Singapore, and US (Silicon Valley) regions. Select the correct endpoint.'."\n", + ], + 'DescribeEnvDropMetricsRule' => [ + 'summary' => 'Queries the list of discarded metrics of a specified environment instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'ID of the request'."\n", + 'type' => 'string', + 'example' => 'F7781D4A-2818-41E7-B7BB-79D809E9****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'RuleName' => [ + 'title' => '废弃指标规则名', + 'description' => 'The name of the discarded metric rule.', + 'type' => 'string', + 'example' => 'ruleName1', + ], + 'DropMetrics' => [ + 'title' => '废弃指标列表。多个指标之间,以换行分隔。', + 'description' => 'The list of discarded metrics. Separate multiple metrics with line feeds.', + 'type' => 'string', + 'example' => 'kube_pod_created', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F7781D4A-2818-41E7-B7BB-79D809E9****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"RuleName\\": \\"ruleName1\\",\\n \\"DropMetrics\\": \\"kube_pod_created\\"\\n },\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'DescribeEnvDropMetricsRule', + ], + 'UpdateEnvDropMetricsRule' => [ + 'summary' => 'Updates a discarded metric rule in the environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values:'."\n" + ."\n" + .'* zh (default)'."\n" + .'* en', + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'DropMetrics', + 'in' => 'formData', + 'schema' => [ + 'title' => '多个指标之间,以换行分隔', + 'description' => 'The metric to be discarded. Separate multiple metrics with line feeds.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'metric_1'."\n" + .'metric_2'."\n" + .'metric_3', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response schema.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '6A9AEA84-7186-4D8D-B498-4585C6A2****', + ], + 'Code' => [ + 'description' => 'The status code. 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果', + 'description' => 'The returned data.', + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The error message returned if the call failed.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6A9AEA84-7186-4D8D-B498-4585C6A2****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateEnvDropMetricsRule', + ], + 'AddTagToFlinkCluster' => [ + 'summary' => 'Attaches the workspace ID and workspace name tags to the Prometheus instance corresponding to a Flink workspace.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => 'prometheus实例ID', + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'c5defa51f******c92bd2ef5fb093269', + ], + ], + [ + 'name' => 'TargetUserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Alibaba Cloud account to which the Flink workspace belongs.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '198608******7619', + ], + ], + [ + 'name' => 'FlinkWorkSpaceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Flink workspace.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ab18f***93744d', + ], + ], + [ + 'name' => 'FlinkWorkSpaceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the Flink workspace.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'flink-demo', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2FC13182-B9AF-4E6B-BE51-72669B7C****', + ], + '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. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'Indicates whether the business logic was executed. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'false', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2FC13182-B9AF-4E6B-BE51-72669B7C****\\",\\n \\"Success\\": true,\\n \\"Code\\": 200,\\n \\"Data\\": \\"false\\"\\n}","type":"json"}]', + 'title' => 'AddTagToFlinkCluster', + ], + 'CreateEnvironment' => [ + 'summary' => 'Creates an environment instance.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Default value: zh.'."\n" + ."\n" + .'Valid values:'."\n" + .'* en: English'."\n" + .'* zh: Chinese', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'en' => 'en', + 'zh' => 'zh', + ], + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentName', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '环境名称', + 'description' => 'The name of the environment.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'env1', + ], + ], + [ + 'name' => 'EnvironmentType', + 'in' => 'query', + 'schema' => [ + 'title' => '环境类型:'."\n" + .'CS(容器服务)、ECS、Cloud(云服务)', + 'description' => 'The type of the environment. Valid values:'."\n" + ."\n" + .'* CS: Container Service'."\n" + .'* ECS: Elastic Compute Service'."\n" + .'* Cloud: cloud service'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'CS', + 'enum' => [ + 'CS', + 'ECS', + 'Cloud', + ], + ], + ], + [ + 'name' => 'EnvironmentSubType', + 'in' => 'query', + 'schema' => [ + 'title' => 'ECS、ACK、Cloud、One', + 'description' => 'The subtype of the environment. Valid values:'."\n" + ."\n" + .'* CS: Container Service for Kubernetes (ACK) or Distributed Cloud Container Platform for Kubernetes (ACK One)'."\n" + .'* ECS: ECS'."\n" + .'* Cloud: cloud service'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'enumValueTitles' => [ + 'ECS' => 'ECS', + 'Cloud' => 'Cloud', + 'One' => 'One', + 'ACK' => 'ACK', + ], + 'example' => 'ECS, ACK, etc.'."\n", + 'enum' => [], + ], + ], + [ + 'name' => 'BindResourceId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '环境绑定的资源实例ID。如果是Cloud(云服务),则填写RegionId。', + 'description' => 'The ID of the resource bound to the environment, such as the container ID or VPC ID. For a Cloud environment, specify the region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => false, + 'example' => 'c6e9dec475dca4a50a188411d8cbxxx', + ], + ], + [ + 'name' => 'ManagedType', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '托管类型:'."\n" + .'- none: 非托管。ACK集群的默认值。'."\n" + .'- agent:托管agent(含ksm)。ASK、ACS、AckOne集群的默认值。'."\n" + .'- agent-exproter: 托管agent和exporter。云服务类型的默认值。', + 'description' => 'Specifies whether agents or exporters are managed. Valid values:'."\n" + ."\n" + .'* none: No. By default, no managed agents or exporters are provided for ACK clusters.'."\n" + .'* agent: Agents are managed. By default, managed agents are provided for ASK clusters, ACS clusters, and ACK One clusters.'."\n" + .'* agent-exporter: Agents and exporters are managed. By default, managed agents and exporters are provided for cloud services.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'none', + 'enum' => [ + 'none', + 'agent', + 'agent-exporter', + ], + ], + ], + [ + 'name' => 'FeePackage', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '付费套餐。'."\n" + .'* EnvironmentType为CS时:可以指定为CS_Basic(默认值)或CS_Pro。'."\n" + .'* EnvironmentType为其它值时,请输入空值。', + 'description' => 'The payable resource plan.'."\n" + ."\n" + .'* If the EnvironmentType parameter is set to CS, set the value to CS_Basic or CS_Pro. Default value: CS_Basic.'."\n" + .'* Otherwise, leave the parameter empty.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'CS_Basic', + 'enum' => [ + 'CS_Basic', + 'CS_Pro', + ], + ], + ], + [ + 'name' => 'PrometheusInstanceId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '可空,环境绑定的prom实例id。如果未提供,请调用 InitEnvironment 接口完成存储实例的初始化。', + 'description' => 'The ID of the Prometheus instance. If no Prometheus instance is created, call the InitEnvironment operation.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'c6e9dec475dca4a50a188411d8cbxxx', + 'enum' => [], + ], + ], + [ + 'name' => 'GrafanaWorkspaceId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '环境绑定的grafana工作区id。传空时,表示使用默认的共享grafana。', + 'description' => 'The ID of the Grafana workspace associated with the environment. If this parameter is left empty, the default shared Grafana workspace is used.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'grafana-rnglkcdrntlhk0****', + 'enum' => [], + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '资源组Id', + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'rg-acfmxyexli2****', + 'enum' => [], + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '可以传此参数,给实例创建标签进行管理', + 'description' => 'The tags of the instance. You can specify this parameter to manage tags for the instance.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签名', + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'title' => '标签值', + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + [ + 'name' => 'InitEnvironment', + 'in' => 'query', + 'schema' => [ + 'title' => '是否初始化环境', + 'description' => 'Specifies whether to initialize the environment.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '16AF921B-8187-489F-9913-43C808B4****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '返回成功增加的环境Id。', + 'description' => 'The ID of the created environment.'."\n", + 'type' => 'string', + 'example' => 'env-xxxxx', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"16AF921B-8187-489F-9913-43C808B4****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"env-xxxxx\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'CreateEnvironment', + ], + 'InitEnvironment' => [ + 'summary' => 'Initializes an environment instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'ManagedType', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '托管类型:'."\n" + .'- none: 非托管。ACK集群的默认值。'."\n" + .'- agent:托管agent(含ksm)。ASK、ACS、AckOne集群的默认值。'."\n" + .'- agent-exproter: 托管agent和exporter。云服务类型的默认值。', + 'description' => 'Whether agents or exporters are managed. Valid values:'."\n" + ."\n" + .'* none: No. By default, no managed agents or exporters are provided for ACK clusters.'."\n" + .'* agent: Agents are managed. By default, managed agents are provided for ASK clusters, ACS clusters, and ACK One clusters.'."\n" + .'* agent-exproter: Agents and exporters are managed. By default, managed agents and exporters are provided for cloud services.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'agent', + 'enum' => [ + 'none', + 'agent', + 'agent-exporter', + ], + ], + ], + [ + 'name' => 'CreateAuthToken', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否创建Token,以提升数据读取安全性。', + 'description' => 'Specifies whether to create a token to improve data security.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4D6C358A-A58B-4F4B-94CE-F5AAF023****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4D6C358A-A58B-4F4B-94CE-F5AAF023****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'InitEnvironment', + ], + 'DescribeEnvironment' => [ + 'summary' => 'Queries the details of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'EnvironmentId' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'example' => 'env-xxxxx', + ], + 'EnvironmentType' => [ + 'description' => 'The type of the environment. Valid values:'."\n" + ."\n" + .'* CS: Container Service for Kubernetes (ACK)'."\n" + .'* ECS: Elastic Compute Service'."\n" + .'* Cloud: cloud service'."\n", + 'type' => 'string', + 'example' => 'CS', + ], + 'EnvironmentName' => [ + 'description' => 'The environment name.'."\n", + 'type' => 'string', + 'example' => 'env1', + ], + 'EnvironmentSubType' => [ + 'description' => 'Environment subtypes:'."\n" + .'- CS: Currently supports ACK.'."\n" + .'- ECS: ECS is currently supported.'."\n" + .'- Cloud: Currently supports Cloud.', + 'type' => 'string', + 'example' => 'ACK', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '13002222xxxx', + ], + 'BindResourceId' => [ + 'description' => 'The ID of the resource associated with the environment, such as the ACK cluster ID or VPC ID.'."\n", + 'type' => 'string', + 'example' => 'vpc-xxxxx', + ], + 'BindResourceType' => [ + 'description' => 'The resource type.'."\n", + 'type' => 'string', + 'example' => 'ECS', + ], + 'BindResourceStatus' => [ + 'description' => 'The status of the resource.'."\n", + 'type' => 'string', + 'example' => 'running', + ], + 'BindResourceProfile' => [ + 'description' => 'The profile of the resource.'."\n", + 'type' => 'string', + 'example' => 'Default', + ], + 'BindVpcCidr' => [ + 'description' => 'The VPC CIDR block.'."\n", + 'type' => 'string', + 'example' => '192.168.0.0/16', + ], + 'PrometheusInstanceId' => [ + 'title' => '绑定的prometheus实例ID', + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'xxxxyyyyyzzzzz', + ], + 'PrometheusInstanceName' => [ + 'title' => '绑定的prometheus实例名称', + 'description' => 'The name of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'name1', + ], + 'GrafanaWorkspaceId' => [ + 'title' => 'grafana工作区id', + 'description' => 'The ID of the Grafana workspace.'."\n", + 'type' => 'string', + 'example' => 'grafana-cn-27a3m8eem0a', + ], + 'GrafanaFolderUid' => [ + 'description' => 'The unique ID of the Grafana directory.'."\n", + 'type' => 'string', + 'example' => 'xyz', + ], + 'GrafanaDatasourceUid' => [ + 'description' => 'The unique ID of the Grafana data source.'."\n", + 'type' => 'string', + 'example' => 'zuvw', + ], + 'VpcId' => [ + 'description' => 'The VPC ID.'."\n", + 'type' => 'string', + 'example' => 'vpc-8vb02uk57qbcktqcvqqqj', + ], + 'GrafanaFolderUrl' => [ + 'description' => 'The URL of the Grafana directory.'."\n", + 'type' => 'string', + 'example' => 'https://g.console.aliyun.com/dashboards/f/xxx/yyyy', + ], + 'BindResourceStoreDuration' => [ + 'title' => '单位 天', + 'description' => 'The retention period of the resource. Unit: days.'."\n", + 'type' => 'string', + 'example' => '15', + ], + 'GrafaDataSourceName' => [ + 'title' => '', + 'description' => 'The name of the Grafana data source.'."\n", + 'type' => 'string', + 'example' => 'datasource1', + ], + 'GrafanaFolderTitle' => [ + 'title' => '', + 'description' => 'The name of the Grafana directory.'."\n", + 'type' => 'string', + 'example' => 'folder1', + ], + 'ManagedType' => [ + 'title' => '托管类型:'."\n" + .'- none: 非托管。ACK集群的默认值。'."\n" + .'- agent:托管agent(含ksm)。ASK、ACS、AckOne集群的默认值。'."\n" + .'- agent-exproter: 托管agent和exporter。云服务类型的默认值。', + 'description' => 'managed type:'."\n" + .'- none: unmanaged. The default value for ACK clusters.'."\n" + .'- agent: managed agent (including KSM). The default values for ASK, ACS, and AckOne clusters.'."\n" + .'- agent-exporter: managed agent and exporters. The default value for the cloud service type.', + 'type' => 'string', + 'enumValueTitles' => [ + 'agent' => 'managed agent', + 'agent-exporter' => 'managed agent and exporter', + 'none' => 'unmanaged', + ], + 'example' => 'none', + ], + 'FeePackage' => [ + 'title' => '付费套餐。'."\n" + .'* EnvironmentType为CS时:可选为CS_Basic或CS_Pro。'."\n" + .'* EnvironmentType为其它值时,为空值。', + 'description' => 'The payable resource plan. Valid values:'."\n" + ."\n" + .'* If the EnvironmentType parameter is set to CS, set the value to CS_Basic or CS_Pro.'."\n" + .'* Otherwise, leave the parameter empty.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'CS_Pro' => '', + 'CS_Basic' => '', + ], + 'example' => 'CS_Basic', + ], + 'DbInstanceStatus' => [ + 'title' => '绑定的prometheus实例db状态。', + 'description' => 'The status of the database that is bound to the Prometheus instance.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* UNINSTALLING'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* INSTALLING'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* UNINSTALLED'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* RUNNING'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* MODIFYING'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'UNINSTALLING' => 'UNINSTALLING', + 'INSTALLING' => 'INSTALLING', + 'UNINSTALLED' => 'UNINSTALLED', + 'RUNNING' => 'RUNNING', + 'MODIFYING' => 'MODIFYING', + ], + 'example' => 'RUNNING', + ], + 'SecurityGroupId' => [ + 'title' => '环境绑定的安全组Id', + 'description' => 'The ID of the security group associated with the environment.'."\n", + 'type' => 'string', + 'example' => 'sg-8vbdgmf4nraiqa9bx0jo', + ], + 'VswitchId' => [ + 'title' => '环境绑定的交换机Id', + 'description' => 'The ID of the vSwitch associated with the environment.'."\n", + 'type' => 'string', + 'example' => 'vsw-2ze7yr3f1x8snryaioo7u', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-aek2vezare****', + ], + 'Tags' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'user1', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'p_dev', + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"EnvironmentId\\": \\"env-xxxxx\\",\\n \\"EnvironmentType\\": \\"CS\\",\\n \\"EnvironmentName\\": \\"env1\\",\\n \\"EnvironmentSubType\\": \\"ACK\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"UserId\\": \\"13002222xxxx\\",\\n \\"BindResourceId\\": \\"vpc-xxxxx\\",\\n \\"BindResourceType\\": \\"ECS\\",\\n \\"BindResourceStatus\\": \\"running\\",\\n \\"BindResourceProfile\\": \\"Default\\",\\n \\"BindVpcCidr\\": \\"192.168.0.0/16\\",\\n \\"PrometheusInstanceId\\": \\"xxxxyyyyyzzzzz\\",\\n \\"PrometheusInstanceName\\": \\"name1\\",\\n \\"GrafanaWorkspaceId\\": \\"grafana-cn-i7m2qn9xa01\\",\\n \\"GrafanaFolderUid\\": \\"xyz\\",\\n \\"GrafanaDatasourceUid\\": \\"zuvw\\",\\n \\"VpcId\\": \\"vpc-8vb02uk57qbcktqcvqqqj\\",\\n \\"GrafanaFolderUrl\\": \\"https://g.console.aliyun.com/dashboards/f/xxx/yyyy\\",\\n \\"BindResourceStoreDuration\\": \\"15\\",\\n \\"GrafaDataSourceName\\": \\"datasource1\\",\\n \\"GrafanaFolderTitle\\": \\"folder1\\",\\n \\"ManagedType\\": \\"none\\",\\n \\"FeePackage\\": \\"CS_Basic\\",\\n \\"DbInstanceStatus\\": \\"RUNNING\\",\\n \\"SecurityGroupId\\": \\"sg-8vbdgmf4nraiqa9bx0jo\\",\\n \\"VswitchId\\": \\"vsw-2ze7yr3f1x8snryaioo7u\\",\\n \\"ResourceGroupId\\": \\"rg-aek2vezare****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"user1\\",\\n \\"Value\\": \\"p_运维\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'DescribeEnvironment', + ], + 'UpdateEnvironment' => [ + 'summary' => 'Updates the configuration of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + [ + 'name' => 'EnvironmentName', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '环境名称', + 'description' => 'The name of the environment instance.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'env1', + ], + ], + [ + 'name' => 'FeePackage', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '付费套餐。'."\n" + .'* EnvironmentType为CS时:可以指定为CS_Basic(默认值)或CS_Pro。'."\n" + .'* EnvironmentType为其它值时,请输入空值。', + 'description' => 'The payable resource plan. Valid values:'."\n" + ."\n" + .'* If the EnvironmentType parameter is set to CS, set the value to CS_Basic or CS_Pro. Default value: CS_Basic.'."\n" + .'* Otherwise, leave the parameter empty.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'CS_Basic', + 'enum' => [ + 'CS_Basic', + 'CS_Pro', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '70675725-8F11-4817-8106-CFE0AD71****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"70675725-8F11-4817-8106-CFE0AD71****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'UpdateEnvironment', + ], + 'ListEnvironments' => [ + 'summary' => 'Queries environments.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '190992', + 'abilityTreeNodes' => [ + 'FEATUREarmsC7S24K', + ], + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentType', + 'in' => 'query', + 'schema' => [ + 'title' => '环境类型 CS(容器) | ECS. addonName和environmentType至少填一个', + 'description' => 'The environment type. You must specify at least one of the AddonName and EnvironmentType parameters.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CS'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' :'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' Container Service for Kubernetes (ACK)'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* ECS'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' :'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' Elastic Compute Service (ECS)'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* Cloud'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' :'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' cloud service'."\n" + ."\n" + .' <!-- -->'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CS' => 'Container service', + 'ECS' => 'ECS service', + 'Cloud' => 'Cloud service', + ], + 'example' => 'CS', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'title' => '非必填, regionId', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AddonName', + 'in' => 'query', + 'schema' => [ + 'title' => 'addon的名称, addonName和environmentType至少填一个', + 'description' => 'The add-on name. You must specify at least one of the AddonName and EnvironmentType parameters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'trace-java', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-aekzfurdatohtka', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Resource tag value.', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'env', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'gfn_web_outbound_add', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'BindResourceId', + 'in' => 'query', + 'schema' => [ + 'title' => '绑定的资源ID。', + 'description' => 'The ID of the resource.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cff30f0d67d7542dfb05bd114b4b1d7af', + ], + ], + [ + 'name' => 'FeePackage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The payable resource plan.'."\n" + ."\n" + .'* If the EnvironmentType parameter is set to CS, set the value to CS_Basic or CS_Pro. Default value: CS_Basic.'."\n" + .'* Otherwise, leave the parameter empty.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CS_Pro: Container Monitoring Pro'."\n" + .'* CS_Basic: Container Monitoring Basic'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CS_Pro' => 'Container Monitoring Pro', + 'CS_Basic' => 'Container Monitoring Basi', + ], + 'example' => 'CS_Pro', + ], + ], + [ + 'name' => 'FilterRegionIds', + 'in' => 'query', + 'schema' => [ + 'title' => '指定Region查询。', + 'description' => 'The region IDs to be queried.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing,cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 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', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Environments' => [ + 'description' => 'The queried environments.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Environment details.', + 'type' => 'object', + 'properties' => [ + 'Addons' => [ + 'description' => 'The add-ons.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Addon details.', + 'type' => 'object', + 'properties' => [ + 'Alias' => [ + 'description' => 'The alias of the add-on.'."\n", + 'type' => 'string', + 'example' => 'MySQL Exporter', + ], + 'Description' => [ + 'description' => 'The description of the add-on.'."\n", + 'type' => 'string', + 'example' => 'Collect mysql indicator information', + ], + 'Icon' => [ + 'description' => 'The URL of the icon.'."\n", + 'type' => 'string', + 'example' => 'http://xxxx', + ], + 'Name' => [ + 'description' => 'The name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'metric-agent', + ], + ], + ], + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '13990957477389', + ], + 'BindResourceId' => [ + 'description' => 'The ID of the resource bound to the environment instance. The resource can be a Kubernetes cluster or a VPC.'."\n", + 'type' => 'string', + 'example' => 'vpc-bp1bgo8ronn', + ], + 'BindResourceProfile' => [ + 'description' => 'The profile that is bound to the resource.'."\n", + 'type' => 'string', + 'example' => 'xxx', + ], + 'BindResourceType' => [ + 'description' => 'The resource type.'."\n", + 'type' => 'string', + 'example' => 'VPC', + ], + 'BindVpcCidr' => [ + 'description' => 'The CIDR block that is bound to the VPC.'."\n", + 'type' => 'string', + 'example' => '172.16.0.0/12', + ], + 'CreateTime' => [ + 'description' => 'The time when the environment instance was created.'."\n", + 'type' => 'string', + 'example' => '2023-03-24 11:58:35 +0800', + ], + 'CreatedUserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '12378523784982', + ], + 'EnvironmentId' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'example' => 'env-xxx', + ], + 'EnvironmentName' => [ + 'description' => 'The name of the environment instance.'."\n", + 'type' => 'string', + 'example' => 'feiliks-biz-prod-edas', + ], + 'EnvironmentType' => [ + 'description' => 'The type of the environment instance. Valid values:'."\n" + ."\n" + .'* CS: Container Service'."\n" + .'* ECS: Elastic Compute Service'."\n" + .'* Cloud: cloud service'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'CS' => 'Container service', + 'ECS' => 'ECS service', + 'Cloud' => 'Cloud service', + ], + 'example' => 'CS', + ], + 'Features' => [ + 'description' => 'The parameters of the feature.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Feature details.', + 'type' => 'object', + 'properties' => [ + 'Alias' => [ + 'description' => 'The alias of the feature.'."\n", + 'type' => 'string', + 'example' => 'Prometheus Agent', + ], + 'Description' => [ + 'description' => 'The description of the feature.'."\n", + 'type' => 'string', + 'example' => 'Collect Metric data using the Prometheus collection specification', + ], + 'Icon' => [ + 'description' => 'The URL of the icon.'."\n", + 'type' => 'string', + 'example' => 'http://xxx', + ], + 'Name' => [ + 'description' => 'The name of the feature.'."\n", + 'type' => 'string', + 'example' => 'metirc-agent', + ], + ], + ], + ], + 'GrafanaFolderTitle' => [ + 'description' => 'The name of the Grafana directory.'."\n", + 'type' => 'string', + 'example' => 'filepath', + ], + 'GrafanaFolderUid' => [ + 'description' => 'The unique ID of the Grafana directory.'."\n", + 'type' => 'string', + 'example' => '1798319482935', + ], + 'PrometheusId' => [ + 'description' => 'The Prometheus ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '124769812', + ], + 'PrometheusInstanceId' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'vpc-m5e4alj2i24ndbn', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-zhangjiakou', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmvt3xpr5aema', + ], + 'Tags' => [ + 'description' => 'The tags of the environment resource.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Resource tag value.', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'fpx-tag', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + ], + ], + ], + 'GrafanaDatasourceUid' => [ + 'description' => 'The unique ID of the Grafana data source.'."\n", + 'type' => 'string', + 'example' => '12374890', + ], + 'ReleaseCount' => [ + 'description' => 'The number of installed add-ons.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '122', + ], + 'LatestReleaseCreateTime' => [ + 'description' => 'The time when the last add-on was created.'."\n", + 'type' => 'string', + 'example' => '2023-09-22T16:56:29+08:00', + ], + 'ManagedType' => [ + 'description' => 'Indicates whether agents or exporters are managed. Valid values:'."\n" + ."\n" + .'* none: No. By default, no managed agents or exporters are provided for ACK clusters.'."\n" + .'* agent: Agents are managed. By default, managed agents are provided for ASK clusters, ACS clusters, and ACK One clusters.'."\n" + .'* agent-exproter: Agents and exporters are managed. By default, managed agents and exporters are provided for cloud services.'."\n", + 'type' => 'string', + 'example' => 'agent', + ], + 'FeePackage' => [ + 'description' => 'The payable resource plan.'."\n" + ."\n" + .'* If the EnvironmentType parameter is set to CS, set the value to CS_Basic or CS_Pro.'."\n" + .'* Otherwise, leave the parameter empty.'."\n", + 'type' => 'string', + 'example' => 'CS_Pro', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Success\\": true,\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": {\\n \\"Environments\\": [\\n {\\n \\"Addons\\": [\\n {\\n \\"Alias\\": \\"Prometheus探针\\",\\n \\"Description\\": \\"以 Prometheus 采集规范采集 Metric 数据\\",\\n \\"Icon\\": \\"http://xxxx\\",\\n \\"Name\\": \\"metric-agent\\"\\n }\\n ],\\n \\"UserId\\": \\"13990957477389\\",\\n \\"BindResourceId\\": \\"vpc-bp1bgo8ronn\\",\\n \\"BindResourceProfile\\": \\"xxx\\",\\n \\"BindResourceType\\": \\"VPC\\",\\n \\"BindVpcCidr\\": \\"172.16.0.0/12\\",\\n \\"CreateTime\\": \\"2023-03-24 11:58:35 +0800\\",\\n \\"CreatedUserId\\": \\"12378523784982\\",\\n \\"EnvironmentId\\": \\"env-xxx\\",\\n \\"EnvironmentName\\": \\"feiliks-biz-prod-edas\\",\\n \\"EnvironmentType\\": \\"CS\\",\\n \\"Features\\": [\\n {\\n \\"Alias\\": \\"Prometheus 探针\\",\\n \\"Description\\": \\"以 Prometheus 采集规范采集 Metric 数据\\",\\n \\"Icon\\": \\"http://xxx\\",\\n \\"Name\\": \\"metirc-agent\\"\\n }\\n ],\\n \\"GrafanaFolderTitle\\": \\"filepath\\",\\n \\"GrafanaFolderUid\\": \\"1798319482935\\",\\n \\"PrometheusId\\": 124769812,\\n \\"PrometheusInstanceId\\": \\"vpc-m5e4alj2i24ndbn\\",\\n \\"RegionId\\": \\"cn-zhangjiakou\\",\\n \\"ResourceGroupId\\": \\"rg-acfmvt3xpr5aema\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"fpx-tag\\",\\n \\"Value\\": \\"cn-beijing\\"\\n }\\n ],\\n \\"GrafanaDatasourceUid\\": \\"12374890\\",\\n \\"ReleaseCount\\": 122,\\n \\"LatestReleaseCreateTime\\": \\"2023-09-22T16:56:29+08:00\\",\\n \\"ManagedType\\": \\"agent\\",\\n \\"FeePackage\\": \\"CS_Pro\\"\\n }\\n ],\\n \\"Total\\": 12\\n }\\n}","type":"json"}]', + 'title' => 'ListEnvironments', + ], + 'DeleteEnvironment' => [ + 'summary' => 'Deletes an environment instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxxx', + ], + ], + [ + 'name' => 'DeletePromInstance', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否级联删除prometheus实例。', + 'description' => 'Specifies whether to delete the related Prometheus instance.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果描述', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'DeleteEnvironment', + ], + 'DescribeAddonMetrics' => [ + 'summary' => 'Queries the metric details of a component.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => 'addon名称', + 'description' => 'The name of the component.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'mysql', + ], + ], + [ + 'name' => 'AddonVersion', + 'in' => 'query', + 'schema' => [ + 'title' => 'Addon版本号', + 'description' => 'The version of the component.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0.0.1', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境,默认为中文 zh | en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentType', + 'in' => 'query', + 'schema' => [ + 'title' => '环境', + 'description' => 'The environment.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CS', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => 'B6A00968-82A8-4F14-9D1B-B53827DB****', + ], + 'Code' => [ + 'title' => '状态码, 200为正常, 其他为异常', + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'title' => '提示消息', + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'title' => '业务是否成功', + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The metric details.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The metric details.'."\n", + 'type' => 'object', + 'properties' => [ + 'Group' => [ + 'description' => 'The metric group.'."\n", + 'type' => 'string', + 'example' => 'Common', + ], + 'Labels' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags.'."\n", + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'description' => 'The description of the tag.'."\n", + 'type' => 'string', + 'example' => 'The number of times a B-tree page of size PAGE_SIZE was successfully compressed.', + ], + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'page_size', + ], + 'Source' => [ + 'description' => 'The source of the tag.'."\n", + 'type' => 'string', + 'example' => 'db', + ], + ], + ], + ], + 'Metrics' => [ + 'description' => 'The metrics.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The metrics.'."\n", + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'description' => 'The description of the metric.'."\n", + 'type' => 'string', + 'example' => 'The number of times a B-tree page of size PAGE_SIZE was successfully compressed.', + ], + 'Labels' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags.'."\n", + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'description' => 'The description of the tag.'."\n", + 'type' => 'string', + 'example' => 'PAGE_SIZE', + ], + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'page_size', + ], + 'Source' => [ + 'description' => 'The source of the tag.'."\n", + 'type' => 'string', + 'example' => 'db', + ], + ], + ], + ], + 'Type' => [ + 'description' => 'The type of the metric.'."\n", + 'type' => 'string', + 'example' => 'GAUGE', + ], + 'Unit' => [ + 'description' => 'The unit of the metric.'."\n", + 'type' => 'string', + 'example' => 'bytes', + ], + 'Metric' => [ + 'description' => 'The metric name.'."\n", + 'type' => 'string', + 'example' => 'mysql_exporter_collector_duration_seconds', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B6A00968-82A8-4F14-9D1B-B53827DB****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Data\\": [\\n {\\n \\"Group\\": \\"Common\\",\\n \\"Labels\\": [\\n {\\n \\"Description\\": \\"大小为PAGE_SIZE的B树页面被成功压缩的次数。\\\\n\\",\\n \\"Key\\": \\"page_size\\",\\n \\"Source\\": \\"db\\"\\n }\\n ],\\n \\"Metrics\\": [\\n {\\n \\"Description\\": \\"大小为PAGE_SIZE的B树页面被成功压缩的次数。\\\\n\\",\\n \\"Labels\\": [\\n {\\n \\"Description\\": \\"PAGE_SIZE\\",\\n \\"Key\\": \\"page_size\\",\\n \\"Source\\": \\"db\\"\\n }\\n ],\\n \\"Type\\": \\"GAUGE\\",\\n \\"Unit\\": \\"bytes\\",\\n \\"Metric\\": \\"mysql_exporter_collector_duration_seconds\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeAddonMetrics', + ], + 'InstallEnvironmentFeature' => [ + 'summary' => 'Installs a feature.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'title' => 'region id', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'FeatureName', + 'in' => 'query', + 'schema' => [ + 'title' => 'Feature的名称: app-agent-pilot,metric-agent,ebpf-agent,service-check', + 'description' => 'The name of the feature.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* app-agent-pilot'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .'* metric-agent'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'app-agent-pilot' => 'Agent of app-pilot', + 'metric-agent' => 'Agent of metric collection', + ], + 'example' => 'metric-agent', + ], + ], + [ + 'name' => 'FeatureVersion', + 'in' => 'query', + 'schema' => [ + 'title' => 'Feature的版本信息', + 'description' => 'The version of the feature.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1.1.17', + ], + ], + [ + 'name' => 'Config', + 'in' => 'query', + 'schema' => [ + 'title' => '用于填充的values', + 'description' => 'The metadata of the feature.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{\\"continuous\\":true,\\"dataRevision\\":2}', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'title' => 'region信息', + 'description' => 'The region ID of the feature.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shenzhen', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '4C518054-852F-4023-ABC1-4AF95FF7****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 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' => 'message', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The release ID.'."\n", + 'type' => 'string', + 'example' => '83FCC44C-A056-18AF-A902-7043E723F0D9', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4C518054-852F-4023-ABC1-4AF95FF7****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"Success\\": true,\\n \\"Data\\": \\"83FCC44C-A056-18AF-A902-7043E723F0D9\\"\\n}","type":"json"}]', + 'title' => 'InstallEnvironmentFeature', + ], + 'DescribeEnvironmentFeature' => [ + 'summary' => 'Queries the details of a feature.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'title' => 'region id', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'FeatureName', + 'in' => 'query', + 'schema' => [ + 'title' => 'feature的名称', + 'description' => 'The name of the feature.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* app-agent-pilot: App Pilot agent'."\n" + .'* arms-cmonitor: ARMS CMonitor agent'."\n" + .'* metric-agent: Prometheus agent'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'app-agent-pilot' => 'Agent of App Pilot', + 'arms-cmonitor' => '', + 'metric-agent' => 'Agent of Prometheus', + ], + 'example' => 'metric-agent', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言参数,en | zh。', + 'description' => 'The language. Valid values: en and zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'en', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '01FF8DD9-A09C-47A1-895A-B6E321BE77B6', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 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', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Feature' => [ + 'description' => 'The installation information about the feature.'."\n", + 'type' => 'object', + 'properties' => [ + 'Alias' => [ + 'description' => 'The alias of the feature.'."\n", + 'type' => 'string', + 'example' => 'Prometheus agent.', + ], + 'Config' => [ + 'description' => 'The configuration of the feature.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{}', + 'description' => 'The configuration of the feature.'."\n", + ], + ], + 'Description' => [ + 'description' => 'The description of the feature.'."\n", + 'type' => 'string', + 'example' => 'Collect Metric data using the Prometheus collection specification.', + ], + 'EnvironmentId' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'example' => 'env-xxxxx', + ], + 'Icon' => [ + 'description' => 'The URL of the icon.'."\n", + 'type' => 'string', + 'example' => 'http://xxx', + ], + 'Language' => [ + 'description' => 'The language.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'LatestVersion' => [ + 'description' => 'The latest version number.'."\n", + 'type' => 'string', + 'example' => '1.1.17', + ], + 'Name' => [ + 'description' => 'The name of the feature.'."\n", + 'type' => 'string', + 'example' => 'metric-agent', + ], + 'Status' => [ + 'description' => 'The installation status of the agent.'."\n" + ."\n" + .'* Installing: The agent is being installed.'."\n" + .'* Success: The agent is installed.'."\n" + .'* Failed: The agent failed to be installed.'."\n" + .'* UnInstall: The agent is uninstalled or has not been installed.'."\n" + .'* Uninstalling: The agent is being uninstalled.'."\n" + .'* UnInstallFailed: The agent failed to be uninstalled.', + 'type' => 'string', + 'enumValueTitles' => [ + 'UnInstall' => '', + 'Failed' => '', + 'Installing' => '', + 'UnInstallFailed' => '', + 'Success' => '', + 'UnInstalling' => '', + ], + 'example' => 'Success', + ], + 'Version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1.1.17', + ], + 'Managed' => [ + 'description' => 'Indicates whether the component is fully managed.'."\n", + 'type' => 'boolean', + ], + ], + ], + 'FeatureStatus' => [ + 'description' => 'The status of the feature.'."\n", + 'type' => 'object', + 'properties' => [ + 'FeatureContainers' => [ + 'description' => 'The containers of the feature.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Feature container information.', + 'type' => 'object', + 'properties' => [ + 'Args' => [ + 'description' => 'The container parameters.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The value of the parameter.'."\n", + 'type' => 'string', + 'example' => '['."\n" + .' "--port=9335",'."\n" + .' "--yaml=/etc/config/prometheusDisk/prometheus.yaml",'."\n" + .' "--chartVersion=1.1.17"'."\n" + .' ]', + ], + ], + 'Image' => [ + 'description' => 'The container image.'."\n", + 'type' => 'string', + 'example' => 'registry-cn-hangzhou-vpc.ack.aliyuncs.com/acs/arms-prometheus-agent:v4.0.0', + ], + 'Name' => [ + 'description' => 'The container name.'."\n", + 'type' => 'string', + 'example' => 'arms-prometheus-operator', + ], + ], + ], + ], + 'Name' => [ + 'description' => 'The Kubernetes resource name of the feature.'."\n", + 'type' => 'string', + 'example' => 'arms-prometheus-ack-arms-prometheus', + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + 'Status' => [ + 'description' => 'The status of the agent. Valid values:'."\n" + ."\n" + .'* Success: The agent is running.'."\n" + .'* Failed: The agent failed to run.'."\n" + .'* Not Found: The agent is not installed.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Failed' => 'Failed', + 'Not Found' => 'Not Found', + 'Success' => 'Success', + ], + 'example' => 'Success', + ], + 'SecurityGroupId' => [ + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'example' => 'sg-bp1c9fcexoalq9po6cp8', + ], + 'VSwitchId' => [ + 'description' => 'The ID of the vSwitch.'."\n", + 'type' => 'string', + 'example' => 'vsw-bp1qt6ict0dbxgv4wer8l', + ], + 'BindResourceId' => [ + 'description' => 'The ID of the resource.'."\n", + 'type' => 'string', + 'example' => 'c013823b55e4b4d6bb6b6f28682bd38a7', + ], + 'Ips' => [ + 'description' => 'The IP address of the pod.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IP address.'."\n", + 'type' => 'string', + 'example' => '10.192.213.201', + ], + ], + ], + ], + 'config' => [ + 'description' => 'The feature configurations.'."\n", + 'type' => 'string', + 'example' => '{}', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01FF8DD9-A09C-47A1-895A-B6E321BE77B6\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Feature\\": {\\n \\"Alias\\": \\"Prometheus 探针\\",\\n \\"Config\\": {\\n \\"key\\": \\"{}\\"\\n },\\n \\"Description\\": \\"以 Prometheus 采集规范采集 Metric 数据。\\",\\n \\"EnvironmentId\\": \\"env-xxxxx\\",\\n \\"Icon\\": \\"http://xxx\\",\\n \\"Language\\": \\"zh\\",\\n \\"LatestVersion\\": \\"1.1.17\\",\\n \\"Name\\": \\"metric-agent\\",\\n \\"Status\\": \\"Success\\",\\n \\"Version\\": \\"1.1.17\\",\\n \\"Managed\\": true\\n },\\n \\"FeatureStatus\\": {\\n \\"FeatureContainers\\": [\\n {\\n \\"Args\\": [\\n \\"[\\\\n \\\\\\"--port=9335\\\\\\",\\\\n \\\\\\"--yaml=/etc/config/prometheusDisk/prometheus.yaml\\\\\\",\\\\n \\\\\\"--chartVersion=1.1.17\\\\\\"\\\\n ]\\"\\n ],\\n \\"Image\\": \\"registry-cn-hangzhou-vpc.ack.aliyuncs.com/acs/arms-prometheus-agent:v4.0.0\\",\\n \\"Name\\": \\"arms-prometheus-operator\\"\\n }\\n ],\\n \\"Name\\": \\"arms-prometheus-ack-arms-prometheus\\",\\n \\"Namespace\\": \\"arms-prom\\",\\n \\"Status\\": \\"Success\\",\\n \\"SecurityGroupId\\": \\"sg-bp1gbhqh8b4dsgvopkry\\",\\n \\"VSwitchId\\": \\"vsw-uf6vc2e4ytv8vv05j3u09\\",\\n \\"BindResourceId\\": \\"c013823b55e4b4d6bb6b6f28682bd38a7\\",\\n \\"Ips\\": [\\n \\"10.178.176.187\\"\\n ]\\n },\\n \\"config\\": \\"{}\\"\\n }\\n}","type":"json"}]', + 'title' => 'DescribeEnvironmentFeature', + 'requestParamsDescription' => 'You can call the [**ListEnvironmentFeatures**](~~ListEnvironmentFeatures~~) operation to query the feature information.', + ], + 'UpgradeEnvironmentFeature' => [ + 'summary' => 'Updates the feature information of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'FeatureName', + 'in' => 'query', + 'schema' => [ + 'title' => 'feature的名称 app-agent-pilot | metric-agent | ebpf-agent | service-check', + 'description' => 'The feature name. Valid values: app-agent-pilot, metric-agent, ebpf-agent, and service-check.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'metric-agent', + ], + ], + [ + 'name' => 'FeatureVersion', + 'in' => 'query', + 'schema' => [ + 'title' => 'feature的版本', + 'description' => 'The version of the feature.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1.1.17', + ], + ], + [ + 'name' => 'Values', + 'in' => 'query', + 'schema' => [ + 'title' => '开关服务发现用, PodAnnotation | PodMonitor | ServiceMonitor, PodAnnotation开关是run和mini, pm和sm则传 true和false, 例如 {"PodAnnotation":"run"}', + 'description' => 'Specifies whether to enable service discovery. For PodAnnotation, set the value to run or mini. For PodMonitor and ServiceMonitor, set the value to true or false.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"PodAnnotation":"run"}', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '01FF8DD9-A09C-47A1-895A-B6E321BE77B6', + ], + 'Code' => [ + 'description' => 'The status code. 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', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The status of the job.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "PodAnnotation": "run"'."\n" + .' }', + 'description' => 'The status value.'."\n", + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"01FF8DD9-A09C-47A1-895A-B6E321BE77B6\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"PodAnnotation\\\\\\": \\\\\\"run\\\\\\"\\\\n }\\"\\n }\\n}","type":"json"}]', + 'title' => 'UpgradeEnvironmentFeature', + ], + 'RestartEnvironmentFeature' => [ + 'summary' => 'Restarts a feature.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The ID of the environment.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'FeatureName', + 'in' => 'query', + 'schema' => [ + 'title' => 'feature的名称 app-agent-pilot | metric-agent | ebpf-agent | service-check', + 'description' => 'The feature name. Valid values: app-agent-pilot, metric-agent, ebpf-agent, and service-check.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'metric-agent', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2983BEF7-4A0D-47A2-94A2-8E9C5E63****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'success.', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2983BEF7-4A0D-47A2-94A2-8E9C5E63****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success.\\",\\n \\"Success\\": true,\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'RestartEnvironmentFeature', + ], + 'ListEnvironmentFeatures' => [ + 'summary' => 'Queries the features in an environment.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境 zh | en,默认为中文。', + 'description' => 'The language. Default value: zh.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* en: English.'."\n" + .'* zh: Chinese.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'en' => '', + 'zh' => '', + ], + 'example' => 'en', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '40B10E04-81E8-4643-970D-F1B38F2E****', + ], + 'Code' => [ + 'description' => 'Status Code. Description 200 indicates success.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the alert rule was deleted. Valid values:'."\n" + ."\n" + .'* `true`: The alert rule was deleted.'."\n" + .'* `false`: The alert rule failed to be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Config' => [ + 'description' => 'The feature configuration.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The feature configuration.'."\n", + 'example' => '{}', + ], + ], + 'Description' => [ + 'description' => 'The description of the feature.'."\n", + 'type' => 'string', + 'example' => 'Collect Metric data using the Prometheus collection specification.', + ], + 'EnvironmentId' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'example' => 'env-xxxxx', + ], + 'Language' => [ + 'description' => 'The language. Valid values:'."\n" + ."\n" + .'* zh: Chinese'."\n" + .'* en: English'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'LatestVersion' => [ + 'description' => 'The latest version number.'."\n", + 'type' => 'string', + 'example' => '1.1.17', + ], + 'Name' => [ + 'description' => 'The name of the feature.'."\n", + 'type' => 'string', + 'example' => 'metric-agent', + ], + 'Status' => [ + 'description' => 'The status of the feature. Valid values:'."\n" + ."\n" + .'* Installing: The agent is being installed.'."\n" + .'* Success: The agent is installed.'."\n" + .'* Failed: The agent failed to be installed.'."\n" + .'* UnInstall: The agent is uninstalled.'."\n" + .'* Uninstalling: The agent is being uninstalled.'."\n" + .'* UnInstallFailed: The agent failed to be uninstalled.'."\n", + 'type' => 'string', + 'example' => 'Success', + ], + 'Version' => [ + 'description' => 'The version of the feature.'."\n", + 'type' => 'string', + 'example' => '1.1.17', + ], + 'Alias' => [ + 'description' => 'The alias of the feature.'."\n", + 'type' => 'string', + 'example' => 'Prometheus Agent', + ], + 'Icon' => [ + 'description' => 'The URL of the icon.'."\n", + 'type' => 'string', + 'example' => 'http://xxx', + ], + 'Managed' => [ + 'description' => 'Indicates whether the component is fully managed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"40B10E04-81E8-4643-970D-F1B38F2E****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Data\\": [\\n {\\n \\"Config\\": {\\n \\"key\\": \\"{}\\"\\n },\\n \\"Description\\": \\"以 Prometheus 采集规范采集 Metric 数据。\\",\\n \\"EnvironmentId\\": \\"env-xxxxx\\",\\n \\"Language\\": \\"zh\\",\\n \\"LatestVersion\\": \\"1.1.17\\",\\n \\"Name\\": \\"metric-agent\\",\\n \\"Status\\": \\"Success\\",\\n \\"Version\\": \\"1.1.17\\",\\n \\"Alias\\": \\"Prometheus 探针\\",\\n \\"Icon\\": \\"http://xxx\\",\\n \\"Managed\\": true\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListEnvironmentFeatures', + ], + 'DeleteEnvironmentFeature' => [ + 'summary' => 'Deletes a feature.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The ID of the environment.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'title' => '地域id cn-beijing | cn-hangzhou', + 'description' => 'The region ID. Valid values: cn-beijing and cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'FeatureName', + 'in' => 'query', + 'schema' => [ + 'title' => 'feature的名称 app-agent-pilot | metric-agent | ebpf-agent | service-check', + 'description' => 'The feature name. Valid values: app-agent-pilot, metric-agent, ebpf-agent, and service-check.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'metric-agent', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2A0CEDF1-06FE-44AC-8E21-21A5BE65****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2A0CEDF1-06FE-44AC-8E21-21A5BE65****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DeleteEnvironmentFeature', + ], + 'CreateEnvCustomJob' => [ + 'summary' => 'Creates a custom job for an environment.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'en' => 'en', + 'zh' => 'zh', + ], + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境实例ID', + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'env-xxxxxx', + ], + ], + [ + 'name' => 'CustomJobName', + 'in' => 'query', + 'schema' => [ + 'title' => '自定义job名称', + 'description' => 'The name of the custom job.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'customJob1', + ], + ], + [ + 'name' => 'ConfigYaml', + 'in' => 'formData', + 'schema' => [ + 'title' => '示例:'."\n" + .'`'."\n" + .'scrape_configs:'."\n" + .'- job_name: job-demo'."\n" + .' honor_timestamps: false'."\n" + .' honor_labels: false'."\n" + .' scrape_interval: 30s'."\n" + .' scheme: http'."\n" + .' metrics_path: /metric'."\n" + .' static_configs:'."\n" + .' - targets:'."\n" + .' - 127.0.0.1:9090'."\n" + .'`'."\n", + 'description' => 'The YAML configuration string of the custom job.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Refer to supplementary instructions.', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4C518054-852F-4023-ABC1-4AF95FF7****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '返回成功增加的customJob名称,或异常信息。', + 'description' => 'The name of the custom job that was created, or the exception information.'."\n", + 'type' => 'string', + 'example' => 'cutomJob1', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4C518054-852F-4023-ABC1-4AF95FF7****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"cutomJob1\\",\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'CreateEnvCustomJob', + ], + 'UpdateEnvCustomJob' => [ + 'summary' => 'Updates a custom job for an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + [ + 'name' => 'CustomJobName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the custom job.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'customJob1', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '自定义任务状态: run 或 stop', + 'description' => 'The status of the custom job. Valid values: run and stop.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'run', + 'enum' => [ + 'run', + 'stop', + ], + ], + ], + [ + 'name' => 'ConfigYaml', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The YAML configuration string.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'Refer to supplementary instructions.', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'Code' => [ + 'description' => 'The status code or error code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'UpdateEnvCustomJob', + ], + 'ListEnvCustomJobs' => [ + 'summary' => 'Queries the custom jobs of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + [ + 'name' => 'EncryptYaml', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否返回加密后的yaml', + 'description' => 'Specifies whether to return the encrypted YAML string.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2A0CEDF1-06FE-44AC-8E21-21A5BE65****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'EnvironmentId' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'example' => 'env-xxxx', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'CustomJobName' => [ + 'description' => 'The name of the custom job.'."\n", + 'type' => 'string', + 'example' => 'job1', + ], + 'ConfigYaml' => [ + 'title' => '请求参数encryptYaml为true,则返回base64编码后的yaml串。否则返回明文yaml串。', + 'description' => 'If the request parameter EncryptYaml is set to true, a Base64-encoded YAML string is returned. Otherwise, a plaintext YAML string is returned.'."\n", + 'type' => 'string', + 'example' => 'Refer to supplementary instructions.', + ], + 'Status' => [ + 'description' => 'The status of the custom job.'."\n", + 'type' => 'string', + 'example' => 'run', + ], + 'CreationTimestamp' => [ + 'description' => 'The time when the custom job was created. The value of this parameter is a timestamp.'."\n", + 'type' => 'string', + 'example' => '2022-01-01T10:11:34Z', + ], + 'AddonName' => [ + 'title' => '归属的组件名', + 'description' => 'The name of the add-on to which the custom job belongs.'."\n", + 'type' => 'string', + 'example' => 'mysql', + ], + 'AddonReleaseName' => [ + 'title' => '归属的组件实例名', + 'description' => 'The instance name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'mysql1', + ], + 'AddonVersion' => [ + 'title' => '归属的组件版本', + 'description' => 'The version of the add-on.'."\n", + 'type' => 'string', + 'example' => '1.1.0', + ], + 'ScrapeConfigs' => [ + 'description' => 'The capture configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'scrape config', + 'type' => 'object', + 'properties' => [ + 'JobName' => [ + 'description' => 'The name of the job.'."\n", + 'type' => 'string', + 'example' => 'custom-sd-demo', + ], + 'ScrapeInterval' => [ + 'title' => '抓取间隔', + 'description' => 'The capture interval.'."\n", + 'type' => 'string', + 'example' => '30s', + ], + 'MetricsPath' => [ + 'title' => '', + 'description' => 'The path of the metric.'."\n", + 'type' => 'string', + 'example' => '/metrics', + ], + 'ScrapeDiscoverys' => [ + 'title' => '服务发现方式列表', + 'description' => 'The service discovery methods.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The service discovery method.'."\n", + 'type' => 'string', + 'example' => 'static_configs', + ], + ], + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2A0CEDF1-06FE-44AC-8E21-21A5BE65****\\",\\n \\"Code\\": 200,\\n \\"Data\\": [\\n {\\n \\"EnvironmentId\\": \\"env-xxxx\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"CustomJobName\\": \\"job1\\",\\n \\"ConfigYaml\\": \\"参见补充说明。\\",\\n \\"Status\\": \\"run\\",\\n \\"CreationTimestamp\\": \\"2022-01-01T10:11:34Z\\",\\n \\"AddonName\\": \\"mysql\\",\\n \\"AddonReleaseName\\": \\"mysql1\\",\\n \\"AddonVersion\\": \\"1.1.0\\",\\n \\"ScrapeConfigs\\": [\\n {\\n \\"JobName\\": \\"custom-sd-demo\\",\\n \\"ScrapeInterval\\": \\"30s\\",\\n \\"MetricsPath\\": \\"/metrics\\",\\n \\"ScrapeDiscoverys\\": [\\n \\"static_configs\\"\\n ]\\n }\\n ]\\n }\\n ],\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'ListEnvCustomJobs', + ], + 'DescribeEnvCustomJob' => [ + 'summary' => 'Queries the details of a custom job for an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxxx', + ], + ], + [ + 'name' => 'CustomJobName', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => 'The name of the custom job.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'customJob1', + ], + ], + [ + 'name' => 'EncryptYaml', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否返回加密后的yaml', + 'description' => 'Specifies whether to return an encrypted YAML string.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The schema of the response.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '6A9AEA84-7186-4D8D-B498-4585C6A2****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'EnvironmentId' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'example' => 'env-xxxxx', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'CustomJobName' => [ + 'description' => 'The name of the custom job.'."\n", + 'type' => 'string', + 'example' => 'customJob1', + ], + 'ConfigYaml' => [ + 'title' => '请求参数encryptYaml为true,则返回base64编码后的yaml串。否则返回明文yaml串。', + 'description' => 'If the **encryptYaml** parameter is set to `true`, a Base64-encoded YAML string is returned. Otherwise, a plaintext YAML string is returned.'."\n", + 'type' => 'string', + 'example' => 'Refer to supplementary instructions.', + ], + 'Status' => [ + 'title' => 'run、stop', + 'description' => 'The status. Valid values:'."\n" + ."\n" + .'* run'."\n" + .'* stop'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'stop' => 'stop', + 'run' => 'run', + ], + 'example' => 'run', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6A9AEA84-7186-4D8D-B498-4585C6A2****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"EnvironmentId\\": \\"env-xxxxx\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"CustomJobName\\": \\"customJob1\\",\\n \\"ConfigYaml\\": \\"参见补充说明。\\",\\n \\"Status\\": \\"run\\"\\n },\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DescribeEnvCustomJob', + 'responseParamsDescription' => 'Sample ConfigYaml:'."\n" + ."\n" + .' scrape_configs:'."\n" + .' - job_name: job-demo1'."\n" + .' honor_timestamps: false'."\n" + .' honor_labels: false'."\n" + .' scrape_interval: 30s'."\n" + .' scheme: http'."\n" + .' metrics_path: /metric'."\n" + .' static_configs:'."\n" + .' - targets:'."\n" + .' - 127.0.0.1:9090'."\n" + .' - job_name: job-demo2'."\n" + .' honor_timestamps: false'."\n" + .' honor_labels: false'."\n" + .' scrape_interval: 30s'."\n" + .' scheme: http'."\n" + .' metrics_path: /metric'."\n" + .' static_configs:'."\n" + .' - targets:'."\n" + .' - 127.0.0.1:9090'."\n" + .' http_sd_configs:'."\n" + .' - url: 127.0.0.1:9090'."\n" + .' refresh_interval: 30s'."\n", + ], + 'DeleteEnvCustomJob' => [ + 'summary' => 'Deletes a custom job for an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'CustomJobName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the custom job.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'job1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2FC13182-B9AF-4E6B-BE51-72669B7C****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果描述', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2FC13182-B9AF-4E6B-BE51-72669B7C****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'DeleteEnvCustomJob', + ], + 'CreateEnvPodMonitor' => [ + 'summary' => 'Creates a PodMonitor for an environment.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'en' => 'en', + 'zh' => 'zh', + ], + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境实例ID', + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'env-xxxxxx', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '试运行:检查格式是否合法、是否能匹配到targets。', + 'description' => 'Specifies whether to perform only a dry run, without performing the actual request.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'ConfigYaml', + 'in' => 'formData', + 'schema' => [ + 'title' => '示例:'."\n" + .'`'."\n" + .'apiVersion: "monitoring.coreos.com/v1"'."\n" + .'kind: "PodMonitor"'."\n" + .'metadata:'."\n" + .' name: "podmonitor-demo"'."\n" + .' namespace: "default"'."\n" + .' annotations:'."\n" + .' arms.prometheus.io/discovery: \'true\''."\n" + .'spec:'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' podMetricsEndpoints:'."\n" + .' - interval: "30s"'."\n" + .' path: "/metrics"'."\n" + .' port: "tomcat-monitor"'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: "nginx2-exporter"'."\n" + .'`'."\n" + .'其中 arms.prometheus.io/discovery 必须存在,其值为“true”,表示serviceMonitor启用,否则表示停止。', + 'description' => 'The YAML configuration snippet for PodMonitor.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Refer to supplementary instructions.', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned result, which indicates whether the operation was successful.'."\n", + 'type' => 'object', + 'properties' => [ + 'MatchedMsg' => [ + 'title' => 'target匹配提示信息', + 'description' => 'Indicates whether targets are matched.'."\n", + 'type' => 'string', + 'example' => 'Match successful.', + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + 'PodMonitorName' => [ + 'title' => '创建成功的podMonitor名称', + 'description' => 'The name of the created PodMonitor.'."\n", + 'type' => 'string', + 'example' => 'arms-admin-pm1', + ], + 'MatchedTargetCount' => [ + 'title' => '匹配出的targets数量', + 'description' => 'The number of matched targets.'."\n", + 'type' => 'string', + 'example' => '1', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"MatchedMsg\\": \\"匹配成功。\\",\\n \\"Namespace\\": \\"arms-prom\\",\\n \\"PodMonitorName\\": \\"arms-admin-pm1\\",\\n \\"MatchedTargetCount\\": \\"1\\"\\n },\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'CreateEnvPodMonitor', + 'extraInfo' => 'ConfigYaml Example: '."\n" + .'```'."\n" + .'apiVersion: monitoring.coreos.com/v1'."\n" + .'kind: PodMonitor'."\n" + .'metadata:'."\n" + .' name: arms-admin-pm1'."\n" + .' namespace: arms-prom'."\n" + .' annotations:'."\n" + .' arms.prometheus.io/discovery: \'true\''."\n" + .'spec:'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: arms-prometheus-ack-arms-prometheus'."\n" + .' release: arms-prometheus'."\n" + .' namespaceSelector:'."\n" + .' any: true '."\n" + .' podMetricsEndpoints:'."\n" + .' - interval: 30s'."\n" + .' targetPort: 9335'."\n" + .' path: /metrics'."\n" + .' - interval: 10s'."\n" + .' targetPort: 9335'."\n" + .' path: /metrics1'."\n" + .'```'."\n" + .'where arms.prometheus.io /discovery must exist, and its value is "true", which means serviceMonitor is enabled, otherwise it means it is stopped.', + ], + 'DescribeEnvPodMonitor' => [ + 'summary' => 'Queries the PodMonitor details of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => 'podMonitor所在的命名空间', + 'description' => 'The namespace where the PodMonitor resides.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'arms-prom', + ], + ], + [ + 'name' => 'PodMonitorName', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => 'The name of the PodMonitor.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'arms-admin-pm1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The schema of the response.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'EnvironmentId' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'example' => 'env-xxxxx', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + 'PodMonitorName' => [ + 'description' => 'The name of the PodMonitor.'."\n", + 'type' => 'string', + 'example' => 'podMonitor1', + ], + 'ConfigYaml' => [ + 'description' => 'The YAML string of the PodMonitor.'."\n", + 'type' => 'string', + 'example' => 'Refer to supplementary instructions.', + ], + 'Status' => [ + 'title' => 'run、stop', + 'description' => 'The status. Valid values:'."\n" + ."\n" + .'* run'."\n" + .'* stop'."\n", + 'type' => 'string', + 'example' => 'run', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"EnvironmentId\\": \\"env-xxxxx\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Namespace\\": \\"arms-prom\\",\\n \\"PodMonitorName\\": \\"podMonitor1\\",\\n \\"ConfigYaml\\": \\"参见补充说明。\\",\\n \\"Status\\": \\"run\\"\\n },\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DescribeEnvPodMonitor', + 'responseParamsDescription' => 'Sample ConfigYaml:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: PodMonitor'."\n" + .' metadata:'."\n" + .' name: arms-admin-pm1'."\n" + .' namespace: arms-prom'."\n" + .' annotations:'."\n" + .' arms.prometheus.io/discovery: \'true\''."\n" + .' spec:'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: arms-prometheus-ack-arms-prometheus'."\n" + .' release: arms-prometheus'."\n" + .' namespaceSelector:'."\n" + .' any: true '."\n" + .' podMetricsEndpoints:'."\n" + .' - interval: 30s'."\n" + .' targetPort: 9335'."\n" + .' path: /metrics'."\n" + .' - interval: 10s'."\n" + .' targetPort: 9335'."\n" + .' path: /metrics1'."\n", + ], + 'ListEnvPodMonitors' => [ + 'summary' => 'Queries the PodMonitors of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4C518054-852F-4023-ABC1-4AF95FF7****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The result of the operation.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'EnvironmentId' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'example' => 'env-xxxxx', + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + 'PodMonitorName' => [ + 'description' => 'The name of the PodMonitor.'."\n", + 'type' => 'string', + 'example' => 'pm1', + ], + 'ConfigYaml' => [ + 'description' => 'The YAML configuration string.'."\n", + 'type' => 'string', + 'example' => 'Refer to supplementary instructions.', + ], + 'Status' => [ + 'description' => 'The status of the PodMonitor.'."\n", + 'type' => 'string', + 'example' => 'run', + ], + 'CreationTimestamp' => [ + 'description' => 'The time when the PodMonitor was created. The value of this parameter is a timestamp.'."\n", + 'type' => 'string', + 'example' => '2011-01-02T11:34:22Z', + ], + 'AddonName' => [ + 'title' => '归属的组件名', + 'description' => 'The name of the add-on to which the PodMonitor belongs.'."\n", + 'type' => 'string', + 'example' => 'mysql', + ], + 'AddonReleaseName' => [ + 'title' => '归属的组件实例名', + 'description' => 'The instance name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'mysql1', + ], + 'AddonVersion' => [ + 'title' => '归属的组件版本', + 'description' => 'The version of the add-on.'."\n", + 'type' => 'string', + 'example' => '1.0.5', + ], + 'Endpoints' => [ + 'title' => 'podmonitor的podMetricsEndpoints', + 'description' => 'The endpoints of the PodMonitor.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Endpoint list.', + 'type' => 'object', + 'properties' => [ + 'Port' => [ + 'description' => 'The external port.'."\n", + 'type' => 'string', + 'example' => '9182', + ], + 'TargetPort' => [ + 'description' => 'The destination port.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3306', + ], + 'Path' => [ + 'description' => 'The collection path.'."\n", + 'type' => 'string', + 'example' => '/metrics', + ], + 'Interval' => [ + 'description' => 'The collection interval.'."\n", + 'type' => 'string', + 'example' => '30s', + ], + 'MatchedTargetCount' => [ + 'title' => 'PodMonitor.Endpoint匹配出的target(即pod)数量', + 'description' => 'The number of pods that match the PodMonitor endpoint.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4C518054-852F-4023-ABC1-4AF95FF7****\\",\\n \\"Code\\": 200,\\n \\"Data\\": [\\n {\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"EnvironmentId\\": \\"env-xxxxx\\",\\n \\"Namespace\\": \\"arms-prom\\",\\n \\"PodMonitorName\\": \\"pm1\\",\\n \\"ConfigYaml\\": \\"参见补充说明。\\",\\n \\"Status\\": \\"run\\",\\n \\"CreationTimestamp\\": \\"2011-01-02T11:34:22Z\\",\\n \\"AddonName\\": \\"mysql\\",\\n \\"AddonReleaseName\\": \\"mysql1\\",\\n \\"AddonVersion\\": \\"1.0.5\\",\\n \\"Endpoints\\": [\\n {\\n \\"Port\\": \\"9182\\",\\n \\"TargetPort\\": 3306,\\n \\"Path\\": \\"/metrics\\",\\n \\"Interval\\": \\"30s\\",\\n \\"MatchedTargetCount\\": 1\\n }\\n ]\\n }\\n ],\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'ListEnvPodMonitors', + ], + 'UpdateEnvPodMonitor' => [ + 'summary' => 'Updates the PodMonitor of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values:'."\n" + ."\n" + .'* zh (default value): Chinese'."\n" + .'* en: English'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => 'podMonitor所在的命名空间', + 'description' => 'The namespace where the PodMonitor resides.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'arms-prom', + ], + ], + [ + 'name' => 'PodMonitorName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the PodMonitor.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'arms-admin-pm1', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '试运行:检查格式是否合法、是否能匹配到targets。', + 'description' => 'Checks whether the format is valid and whether targets are matched.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'ConfigYaml', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The YAML configuration file of the ServiceMonitor.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Refer to supplementary instructions.', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'Code' => [ + 'description' => 'The response code.'."\n" + ."\n" + .'> The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'MatchedMsg' => [ + 'title' => 'target匹配提示信息', + 'description' => 'Indicates whether targets are matched.'."\n", + 'type' => 'string', + 'example' => 'Match successful.'."\n", + ], + 'MatchedTargetCount' => [ + 'title' => '匹配出的targets数量', + 'description' => 'The number of matched targets.'."\n", + 'type' => 'string', + 'example' => '1', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"MatchedMsg\\": \\"匹配成功。\\",\\n \\"MatchedTargetCount\\": \\"1\\"\\n },\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateEnvPodMonitor', + 'requestParamsDescription' => 'Sample ConfigYAML:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: PodMonitor'."\n" + .' metadata:'."\n" + .' name: arms-admin-pm1'."\n" + .' namespace: arms-prom'."\n" + .' annotations:'."\n" + .' arms.prometheus.io/discovery: \'true\''."\n" + .' spec:'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: arms-prometheus-ack-arms-prometheus'."\n" + .' release: arms-prometheus'."\n" + .' namespaceSelector:'."\n" + .' any: true '."\n" + .' podMetricsEndpoints:'."\n" + .' - interval: 30s'."\n" + .' targetPort: 9335'."\n" + .' path: /metrics'."\n" + .' - interval: 10s'."\n" + .' targetPort: 9335'."\n" + .' path: /metrics1'."\n", + ], + 'DeleteEnvPodMonitor' => [ + 'summary' => 'Deletes the PodMonitor of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => 'podMonitor所在的命名空间', + 'description' => 'The namespace where the PodMonitor is located.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'arms-prom', + ], + ], + [ + 'name' => 'PodMonitorName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the PodMonitor.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'arms-admin-pm1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '626037F5-FDEB-45B0-804C-B3C92797****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果描述', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"626037F5-FDEB-45B0-804C-B3C92797****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DeleteEnvPodMonitor', + ], + 'CreateEnvServiceMonitor' => [ + 'summary' => 'Creates a ServiceMonitor for an environment.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values:'."\n" + ."\n" + .'* zh (default): Chinese'."\n" + .'* en: English'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'en' => 'en', + 'zh' => 'zh', + ], + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境实例ID', + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'env-xxxxxx', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '试运行:检查格式是否合法、是否能匹配到targets。', + 'description' => 'Specifies whether to perform only a dry run, without performing the actual request. The system checks whether the format is valid and whether targets are matched.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'ConfigYaml', + 'in' => 'formData', + 'schema' => [ + 'title' => '示例:'."\n" + .'`'."\n" + .'apiVersion: monitoring.coreos.com/v1'."\n" + .'kind: ServiceMonitor'."\n" + .'metadata:'."\n" + .' name: tomcat-demo'."\n" + .' namespace: default'."\n" + .' annotations:'."\n" + .' arms.prometheus.io/discovery: \'true\''."\n" + .'spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' path: /metrics'."\n" + .' port: tomcat-monitor'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: tomcat'."\n" + .'`'."\n" + .'其中 arms.prometheus.io/discovery 必须存在,其值为“true”,表示serviceMonitor启用,否则表示停止。', + 'description' => 'The YAML configuration file of the ServiceMonitor.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Refer to supplementary instructions.', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'MatchedMsg' => [ + 'title' => 'target匹配提示信息', + 'description' => 'Indicates whether targets are matched.'."\n", + 'type' => 'string', + 'example' => 'Match successful.'."\n", + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + 'ServiceMonitorName' => [ + 'title' => '成功创建的serviceMonitor名称', + 'description' => 'The name of the created ServiceMonitor.'."\n", + 'type' => 'string', + 'example' => 'arms-admin1', + ], + 'MatchedTargetCount' => [ + 'description' => 'The number of matched targets.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"MatchedMsg\\": \\"匹配成功。\\",\\n \\"Namespace\\": \\"arms-prom\\",\\n \\"ServiceMonitorName\\": \\"arms-admin1\\",\\n \\"MatchedTargetCount\\": 1\\n },\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'CreateEnvServiceMonitor', + 'requestParamsDescription' => 'Sample ConfigYAML:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: ServiceMonitor'."\n" + .' metadata:'."\n" + .' name: arms-admin1'."\n" + .' namespace: arms-prom'."\n" + .' annotations:'."\n" + .' arms.prometheus.io/discovery: \'true\''."\n" + .' spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' port: operator'."\n" + .' path: /metrics'."\n" + .' - interval: 10s'."\n" + .' port: operator1'."\n" + .' path: /metrics'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: arms-prometheus-ack-arms-prometheus'."\n" + ."\n" + .'You must specify arms.prometheus.io/discovery and set the value to true to enable the ServiceMonitor.'."\n", + ], + 'DescribeEnvServiceMonitor' => [ + 'summary' => 'Queries the ServiceMonitor details of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => 'serviceMonitor所在的命名空间', + 'description' => 'The namespace where the ServiceMonitor resides.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'arms-prom', + ], + ], + [ + 'name' => 'ServiceMonitorName', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => 'The name of the ServiceMonitor.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'arms-admin1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The schema of the response.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '40B10E04-81E8-4643-970D-F1B38F2E****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'EnvironmentId' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'example' => 'env-xxxxx', + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'ServiceMonitorName' => [ + 'description' => 'The name of the ServiceMonitor.'."\n", + 'type' => 'string', + 'example' => 'serviceMonitor1', + ], + 'ConfigYaml' => [ + 'description' => 'The YAML configuration file of the ServiceMonitor.'."\n", + 'type' => 'string', + 'example' => 'Refer to supplementary instructions.', + ], + 'Status' => [ + 'title' => 'run、stop', + 'description' => 'The status. Valid values:'."\n" + ."\n" + .'* run'."\n" + .'* stop'."\n", + 'type' => 'string', + 'example' => 'run', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"40B10E04-81E8-4643-970D-F1B38F2E****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"EnvironmentId\\": \\"env-xxxxx\\",\\n \\"Namespace\\": \\"arms-prom\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ServiceMonitorName\\": \\"serviceMonitor1\\",\\n \\"ConfigYaml\\": \\"参见补充说明。\\",\\n \\"Status\\": \\"run\\"\\n },\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DescribeEnvServiceMonitor', + 'responseParamsDescription' => 'Sample ConfigYAML:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: ServiceMonitor'."\n" + .' metadata:'."\n" + .' name: arms-admin1'."\n" + .' namespace: arms-prom'."\n" + .' annotations:'."\n" + .' arms.prometheus.io/discovery: \'true\''."\n" + .' spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' port: operator'."\n" + .' path: /metrics'."\n" + .' - interval: 10s'."\n" + .' port: operator1'."\n" + .' path: /metrics'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: arms-prometheus-ack-arms-prometheusapiVersion: monitoring.coreos.com/v1'."\n" + .' kind: ServiceMonitor'."\n" + .' metadata:'."\n" + .' name: arms-admin1'."\n" + .' namespace: arms-prom'."\n" + .' annotations:'."\n" + .' arms.prometheus.io/discovery: \'true\''."\n" + .' spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' port: operator'."\n" + .' path: /metrics'."\n" + .' - interval: 10s'."\n" + .' port: operator1'."\n" + .' path: /metrics'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: arms-prometheus-ack-arms-prometheus'."\n", + ], + 'ListEnvServiceMonitors' => [ + 'summary' => 'Queries the ServiceMonitors of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A474FF8-7861-4D00-81B5-5BC3DA4E****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'EnvironmentId' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'example' => 'env-xxxxx', + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + 'ServiceMonitorName' => [ + 'description' => 'The name of the ServiceMonitor.'."\n", + 'type' => 'string', + 'example' => 'sm1', + ], + 'ConfigYaml' => [ + 'description' => 'The YAML configuration string.'."\n", + 'type' => 'string', + 'example' => 'Refer to supplementary instructions.', + ], + 'Status' => [ + 'description' => 'The status of the ServiceMonitor.'."\n", + 'type' => 'string', + 'example' => 'run', + ], + 'CreationTimestamp' => [ + 'description' => 'The time when the ServiceMonitor was created. The value of this parameter is a timestamp.'."\n", + 'type' => 'string', + 'example' => '2011-10-11T22:32:11Z', + ], + 'AddonName' => [ + 'title' => '归属的组件名', + 'description' => 'The name of the add-on to which the ServiceMonitor belongs.'."\n", + 'type' => 'string', + 'example' => 'mysql', + ], + 'AddonReleaseName' => [ + 'title' => '归属的组件实例名', + 'description' => 'The instance name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'mysql1', + ], + 'AddonVersion' => [ + 'title' => '归属的组件版本', + 'description' => 'The version of the add-on.'."\n", + 'type' => 'string', + 'example' => '1.1.0', + ], + 'MatchedServiceCount' => [ + 'title' => '匹配出的service数量', + 'description' => 'The number of matched services.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Endpoints' => [ + 'title' => 'ServiceMonitro的endpoints', + 'description' => 'The endpoints of the ServiceMonitor.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'List of endpoints for serviceMonitor.', + 'type' => 'object', + 'properties' => [ + 'Port' => [ + 'description' => 'The external port.'."\n", + 'type' => 'string', + 'example' => '9101', + ], + 'TargetPort' => [ + 'description' => 'The destination port.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '443', + ], + 'Path' => [ + 'description' => 'The collection path.'."\n", + 'type' => 'string', + 'example' => '/metrics', + ], + 'Interval' => [ + 'description' => 'The collection interval.'."\n", + 'type' => 'string', + 'example' => '30s', + ], + 'MatchedTargetCount' => [ + 'title' => 'servcieMonitor.Endpoint匹配出的target数量', + 'description' => 'The number of pods that match the ServiceMonitor endpoint.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A474FF8-7861-4D00-81B5-5BC3DA4E****\\",\\n \\"Code\\": 200,\\n \\"Data\\": [\\n {\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"EnvironmentId\\": \\"env-xxxxx\\",\\n \\"Namespace\\": \\"arms-prom\\",\\n \\"ServiceMonitorName\\": \\"sm1\\",\\n \\"ConfigYaml\\": \\"参见补充说明。\\",\\n \\"Status\\": \\"run\\",\\n \\"CreationTimestamp\\": \\"2011-10-11T22:32:11Z\\",\\n \\"AddonName\\": \\"mysql\\",\\n \\"AddonReleaseName\\": \\"mysql1\\",\\n \\"AddonVersion\\": \\"1.1.0\\",\\n \\"MatchedServiceCount\\": 1,\\n \\"Endpoints\\": [\\n {\\n \\"Port\\": \\"9101\\",\\n \\"TargetPort\\": 443,\\n \\"Path\\": \\"/metrics\\",\\n \\"Interval\\": \\"30s\\",\\n \\"MatchedTargetCount\\": 1\\n }\\n ]\\n }\\n ],\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'ListEnvServiceMonitors', + ], + 'UpdateEnvServiceMonitor' => [ + 'summary' => 'Updates the ServiceMonitor of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => 'serviceMonitor所在的命名空间', + 'description' => 'The namespace where the ServiceMonitor is located.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'arms-prom', + ], + ], + [ + 'name' => 'ServiceMonitorName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the ServiceMonitor.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'serviceMonitor1', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '试运行:检查格式是否合法、是否能匹配到targets。', + 'description' => 'Specifies whether to perform only a dry run, without performing the actual request.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'ConfigYaml', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The YAML configuration string.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Refer to supplementary instructions.', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A474FF8-7861-4D00-81B5-5BC3DA4E****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'MatchedMsg' => [ + 'title' => 'target匹配提示信息', + 'description' => 'Indicates whether targets are matched.'."\n", + 'type' => 'string', + 'example' => ' '."\n" + .'Match successful.'."\n", + ], + 'MatchedTargetCount' => [ + 'title' => '匹配出的targets数量', + 'description' => 'The number of matched targets.'."\n", + 'type' => 'string', + 'example' => '1', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A474FF8-7861-4D00-81B5-5BC3DA4E****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"MatchedMsg\\": \\"匹配成功。\\",\\n \\"MatchedTargetCount\\": \\"1\\"\\n },\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpdateEnvServiceMonitor', + ], + 'DeleteEnvServiceMonitor' => [ + 'summary' => 'Deletes the ServiceMonitor of an environment.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxxxxx', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => 'serviceMonitor所在的命名空间', + 'description' => 'The namespace where the ServiceMonitor is located.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'arms-prom', + ], + ], + [ + 'name' => 'ServiceMonitorName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the ServiceMonitor.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'arms-admin1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果描述', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'DeleteEnvServiceMonitor', + ], + 'InstallAddon' => [ + 'summary' => 'Installs an add-on.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => 'addon名称', + 'description' => 'The name of the add-on.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'mysql', + ], + ], + [ + 'name' => 'AddonVersion', + 'in' => 'query', + 'schema' => [ + 'title' => 'addon版本', + 'description' => 'The version of the add-on.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0.0.1', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境,默认为中文 zh|en', + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'Values', + 'in' => 'query', + 'schema' => [ + 'title' => '输入的元数据 ', + 'description' => 'The metadata.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"host":"mysql-service.default","port":3306,"username":"root","password":"roots"}', + ], + ], + [ + 'name' => 'ReleaseName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the add-on after it is installed. If you do not specify this parameter, a default rule name is generated.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mysql-xxxxx', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'query', + 'schema' => [ + 'title' => '是否试运行, 默认为false', + 'description' => 'Specifies whether to perform only a dry run, without performing the actual request. Default value: false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 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: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'AddonName' => [ + 'description' => 'The name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'mysql', + ], + 'AlertRuleCount' => [ + 'description' => 'The number of alert rules.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Conditions' => [ + 'description' => 'The installation phase.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Condition information.', + 'type' => 'object', + 'properties' => [ + 'FirstTransitionTime' => [ + 'description' => 'The first transition time.'."\n", + 'type' => 'string', + 'example' => '2018-01-31T14:32:19Z', + ], + 'LastTransitionTime' => [ + 'description' => 'The last transition time.'."\n", + 'type' => 'string', + 'example' => '2018-01-31T14:32:19Z', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'xxxx', + ], + 'Reason' => [ + 'description' => 'The reason for the failure.'."\n", + 'type' => 'string', + 'example' => 'xxxx', + ], + 'Status' => [ + 'description' => 'The status of the phase.'."\n", + 'type' => 'string', + 'example' => 'True', + ], + 'Type' => [ + 'description' => 'The type of the phase.'."\n", + 'type' => 'string', + 'example' => 'Loaded', + ], + ], + ], + ], + 'CreateTime' => [ + 'description' => 'The time when the add-on was created.'."\n", + 'type' => 'string', + 'example' => '2023-09-22T16:56:29+08:00', + ], + 'DashboardCount' => [ + 'description' => 'The number of dashboards.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ExporterCount' => [ + 'description' => 'The number of exporters.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'HaveConfig' => [ + 'description' => 'Indicates whether the configuration is available.'."\n", + 'type' => 'boolean', + 'example' => 'true'."\n", + ], + 'InstallUserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '123456', + ], + 'Language' => [ + 'description' => 'The language.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'ReleaseId' => [ + 'description' => 'The release ID after installation.'."\n", + 'type' => 'string', + 'example' => 'be29c093-3fd6-4fb6-9430-797030cc183a', + ], + 'ReleaseName' => [ + 'description' => 'The name of the release.'."\n", + 'type' => 'string', + 'example' => 'mysql-1695372983039', + ], + 'Scene' => [ + 'description' => 'The scenario.'."\n", + 'type' => 'string', + 'example' => 'database', + ], + 'Status' => [ + 'description' => 'The status.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'UpdateTime' => [ + 'description' => 'The time when the add-on was updated.'."\n", + 'type' => 'string', + 'example' => '2023-09-22T16:56:29+08:00', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '111', + ], + 'Version' => [ + 'description' => 'The version of the add-on.'."\n", + 'type' => 'string', + 'example' => '0.0.1', + ], + 'EnvironmentId' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'example' => 'env-xxxx', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-heyuan', + ], + 'Managed' => [ + 'description' => 'Indicates whether the component is fully managed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": {\\n \\"AddonName\\": \\"mysql\\",\\n \\"AlertRuleCount\\": 1,\\n \\"Conditions\\": [\\n {\\n \\"FirstTransitionTime\\": \\"2018-01-31T14:32:19Z\\",\\n \\"LastTransitionTime\\": \\"2018-01-31T14:32:19Z\\",\\n \\"Message\\": \\"xxxx\\",\\n \\"Reason\\": \\"xxxx\\",\\n \\"Status\\": \\"True\\",\\n \\"Type\\": \\"Loaded\\"\\n }\\n ],\\n \\"CreateTime\\": \\"2023-09-22T16:56:29+08:00\\",\\n \\"DashboardCount\\": 1,\\n \\"ExporterCount\\": 2,\\n \\"HaveConfig\\": true,\\n \\"InstallUserId\\": \\"123456\\",\\n \\"Language\\": \\"zh\\",\\n \\"ReleaseId\\": \\"be29c093-3fd6-4fb6-9430-797030cc183a\\",\\n \\"ReleaseName\\": \\"mysql-1695372983039\\",\\n \\"Scene\\": \\"database\\",\\n \\"Status\\": \\"0\\",\\n \\"UpdateTime\\": \\"2023-09-22T16:56:29+08:00\\",\\n \\"UserId\\": \\"111\\",\\n \\"Version\\": \\"0.0.1\\",\\n \\"EnvironmentId\\": \\"env-xxxx\\",\\n \\"RegionId\\": \\"cn-heyuan\\",\\n \\"Managed\\": true\\n }\\n}","type":"json"}]', + 'title' => 'InstallAddon', + ], + 'DescribeAddonRelease' => [ + 'summary' => 'Queries the release information of an add-on by name.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'ReleaseName', + 'in' => 'query', + 'schema' => [ + 'title' => 'release的名称', + 'description' => 'The name of the add-on release.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'agent-822567d4-2449', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'Response.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'ID of the request.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The release information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Release' => [ + 'description' => 'The release information.'."\n", + 'type' => 'object', + 'properties' => [ + 'AddonName' => [ + 'description' => 'The name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'mysql', + ], + 'AlertRuleCount' => [ + 'description' => 'The number of alert rules.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Conditions' => [ + 'description' => 'The installation phase.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Condition information.', + 'type' => 'object', + 'properties' => [ + 'FirstTransitionTime' => [ + 'description' => 'The first transition time.'."\n", + 'type' => 'string', + 'example' => '2018-01-31T14:32:19Z', + ], + 'LastTransitionTime' => [ + 'description' => 'The last transition time.'."\n", + 'type' => 'string', + 'example' => '2018-01-31T14:32:19Z', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'xxxx', + ], + 'Reason' => [ + 'description' => 'The reason for the failure.'."\n", + 'type' => 'string', + 'example' => 'xxxx', + ], + 'Status' => [ + 'description' => 'The status of the phase.'."\n", + 'type' => 'string', + 'example' => 'True', + ], + 'Type' => [ + 'description' => 'The type of the phase.'."\n", + 'type' => 'string', + 'example' => 'Loaded', + ], + ], + ], + ], + 'CreateTime' => [ + 'description' => 'The time when the add-on was created.'."\n", + 'type' => 'string', + 'example' => '2023-09-22T16:56:29+08:00', + ], + 'DashboardCount' => [ + 'description' => 'The number of dashboards.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ExporterCount' => [ + 'description' => 'The number of exporters.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'HaveConfig' => [ + 'description' => 'Indicates whether the configuration is available.'."\n", + 'type' => 'boolean', + 'example' => 'true'."\n", + ], + 'InstallUserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '23810923891', + ], + 'Language' => [ + 'description' => 'The language.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'ReleaseId' => [ + 'description' => 'The release ID after installation.'."\n", + 'type' => 'string', + 'example' => 'be29c093-3fd6-4fb6-9430-797030cc183a', + ], + 'ReleaseName' => [ + 'description' => 'The name of the release.'."\n", + 'type' => 'string', + 'example' => 'mysql-1695372983039', + ], + 'Scene' => [ + 'description' => 'The scenario.'."\n", + 'type' => 'string', + 'example' => 'database', + ], + 'Status' => [ + 'description' => 'The status.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'UpdateTime' => [ + 'description' => 'The time when the add-on was updated.'."\n", + 'type' => 'string', + 'example' => '2023-09-22T16:56:29+08:00', + ], + 'UserID' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '13818734031', + ], + 'Version' => [ + 'description' => 'The version of the add-on.'."\n", + 'type' => 'string', + 'example' => '0.0.1', + ], + 'EnvironmentId' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'example' => 'env-xxxx', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-heyuan', + ], + 'Managed' => [ + 'description' => 'Indicates whether the component is fully managed.'."\n", + 'type' => 'boolean', + ], + ], + ], + 'Config' => [ + 'description' => 'The configuration information of the add-on release.'."\n", + 'type' => 'string', + 'example' => '{"host":"mysql-service.default","port":3306,"username":"root","password":"roots"}', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\",\\n \\"Message\\": \\"success\\",\\n \\"Data\\": {\\n \\"Release\\": {\\n \\"AddonName\\": \\"mysql\\",\\n \\"AlertRuleCount\\": 1,\\n \\"Conditions\\": [\\n {\\n \\"FirstTransitionTime\\": \\"2018-01-31T14:32:19Z\\",\\n \\"LastTransitionTime\\": \\"2018-01-31T14:32:19Z\\",\\n \\"Message\\": \\"xxxx\\",\\n \\"Reason\\": \\"xxxx\\",\\n \\"Status\\": \\"True\\",\\n \\"Type\\": \\"Loaded\\"\\n }\\n ],\\n \\"CreateTime\\": \\"2023-09-22T16:56:29+08:00\\",\\n \\"DashboardCount\\": 1,\\n \\"ExporterCount\\": 2,\\n \\"HaveConfig\\": true,\\n \\"InstallUserId\\": \\"23810923891\\",\\n \\"Language\\": \\"zh\\",\\n \\"ReleaseId\\": \\"be29c093-3fd6-4fb6-9430-797030cc183a\\",\\n \\"ReleaseName\\": \\"mysql-1695372983039\\",\\n \\"Scene\\": \\"database\\",\\n \\"Status\\": \\"0\\",\\n \\"UpdateTime\\": \\"2023-09-22T16:56:29+08:00\\",\\n \\"UserID\\": \\"13818734031\\",\\n \\"Version\\": \\"0.0.1\\",\\n \\"EnvironmentId\\": \\"env-xxxx\\",\\n \\"RegionId\\": \\"cn-heyuan\\",\\n \\"Managed\\": true\\n },\\n \\"Config\\": \\"{\\\\\\"host\\\\\\":\\\\\\"mysql-service.default\\\\\\",\\\\\\"port\\\\\\":3306,\\\\\\"username\\\\\\":\\\\\\"root\\\\\\",\\\\\\"password\\\\\\":\\\\\\"roots\\\\\\"}\\"\\n }\\n}","type":"json"}]', + 'title' => 'DescribeAddonRelease', + ], + 'ListAddons' => [ + 'summary' => 'List of access center products.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Search', + 'in' => 'query', + 'schema' => [ + 'title' => '查询参数', + 'description' => 'A query field can be queried by name or description.', + 'type' => 'string', + 'required' => false, + 'example' => 'mysql', + ], + ], + [ + 'name' => 'Regexp', + 'in' => 'query', + 'schema' => [ + 'title' => '查询字段, 是否正则匹配, 默认为false'."\n", + 'description' => 'Whether to enable regular matching.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境,默认为中文 zh | en', + 'description' => 'Language,the default language is Chinese.', + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'Category', + 'in' => 'query', + 'schema' => [ + 'title' => '标签筛选', + 'description' => 'Category filter.', + 'type' => 'string', + 'required' => false, + 'example' => 'database', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'Code' => [ + 'title' => '状态码, 200为正常, 其他为异常', + 'description' => 'Status code: 200 indicates success.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'title' => '提示消息', + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'title' => '业务是否成功', + 'description' => 'Indicates whether the alert rule was deleted. Valid values:'."\n" + ."\n" + .'* `true`: The alert rule was deleted.'."\n" + .'* `false`: The alert rule failed to be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The queried add-ons.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the add-on.'."\n", + 'type' => 'object', + 'properties' => [ + 'Alias' => [ + 'description' => 'The alias of the add-on.'."\n", + 'type' => 'string', + 'example' => 'MySQL', + ], + 'Categories' => [ + 'description' => 'The tags of the add-on.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags.'."\n", + 'type' => 'string', + 'example' => 'cloud', + ], + ], + 'Dashboards' => [ + 'description' => 'The dashboards.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Dashboard details.', + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'description' => 'The description of the dashboard.'."\n", + 'type' => 'string', + 'example' => 'MySQL monitors the market information, monitoring the connection information, usage information and other indicators', + ], + 'Name' => [ + 'description' => 'The name of the dashboard.'."\n", + 'type' => 'string', + 'example' => 'mysql-overview', + ], + 'Url' => [ + 'description' => 'The URL of the dashboard.'."\n", + 'type' => 'string', + 'example' => 'http://xxxx', + ], + ], + ], + ], + 'Description' => [ + 'description' => 'The description of the add-on.'."\n", + 'type' => 'string', + 'example' => 'Monitor database indicators with MySQL Exporter', + ], + 'Environments' => [ + 'description' => 'The supported environments.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the environment.'."\n", + 'type' => 'object', + 'properties' => [ + 'Dependencies' => [ + 'description' => 'The dependencies of the environment.'."\n", + 'type' => 'object', + 'properties' => [ + 'Features' => [ + 'description' => 'The feature on which the environment depends.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'boolean', + 'description' => 'Indicates whether the feature is supported.'."\n", + 'example' => 'true', + ], + ], + 'Services' => [ + 'description' => 'The services.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The service name.'."\n", + 'type' => 'string', + 'example' => 'ResourceCenter', + ], + ], + 'ClusterTypes' => [ + 'description' => 'The supported cluster types.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The cluster type.'."\n", + 'type' => 'string', + 'example' => 'ManagedKubernetes/Serverless', + ], + ], + ], + ], + 'Description' => [ + 'description' => 'The description of the environment.'."\n", + 'type' => 'string', + 'example' => 'The MySQL service is deployed in a Kubernetes cluster.', + ], + 'Enable' => [ + 'description' => 'Indicates whether the feature is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Label' => [ + 'description' => 'The tag of the environment.'."\n", + 'type' => 'string', + 'example' => 'Container', + ], + 'Name' => [ + 'description' => 'The name of the environment.'."\n", + 'type' => 'string', + 'example' => 'CS', + ], + 'Policies' => [ + 'description' => 'The control policies in the environment.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlertDefaultStatus' => [ + 'description' => 'The default alert status.'."\n", + 'type' => 'string', + 'example' => 'default', + ], + 'DefaultInstall' => [ + 'description' => 'The default installation status.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'TargetAddonName' => [ + 'description' => 'The target name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'cloud-rds-mysql', + ], + 'Protocols' => [ + 'description' => 'The supported protocols.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Protocol details.', + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the protocol.'."\n", + 'type' => 'string', + 'example' => 'arms', + ], + 'Label' => [ + 'description' => 'The tag of the protocol.'."\n", + 'type' => 'string', + 'example' => 'ARMS', + ], + 'Icon' => [ + 'description' => 'The URL of the protocol icon.'."\n", + 'type' => 'string', + 'example' => 'http://xxxxxxx', + ], + 'Description' => [ + 'description' => 'The description of the protocol.'."\n", + 'type' => 'string', + 'example' => 'ARMS', + ], + ], + ], + ], + 'EnableServiceAccount' => [ + 'description' => 'Indicates whether a service account is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'false.', + ], + 'NeedRestartAfterIntegration' => [ + 'description' => 'Indicates whether a restart is required after the installation.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'MetricCheckRule' => [ + 'description' => 'The metric check rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'PromQL' => [ + 'description' => 'The PromQL statements.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'PromQL statements are supported.'."\n", + 'type' => 'string', + 'example' => 'scraper_up{scraper=\\"ecs\\"}==1', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'Icon' => [ + 'description' => 'The URL of the icon.'."\n", + 'type' => 'string', + 'example' => 'http://xxxx', + ], + 'Keywords' => [ + 'description' => 'The collection of keywords.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The keyword.'."\n", + 'type' => 'string', + 'example' => 'Java', + ], + ], + 'Language' => [ + 'description' => 'The language.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'Name' => [ + 'description' => 'The name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'mysql', + ], + 'Once' => [ + 'description' => 'Indicates whether the add-on can be installed only once.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'Scene' => [ + 'description' => 'The scenario.'."\n", + 'type' => 'string', + 'example' => 'database', + ], + 'Version' => [ + 'description' => 'The version of the agent.'."\n", + 'type' => 'string', + 'example' => '0.0.1', + ], + 'Weight' => [ + 'description' => 'The weight.'."\n", + 'type' => 'string', + 'example' => '857', + ], + 'LatestReleaseCreateTime' => [ + 'description' => 'The time when the instance was last created.'."\n", + 'type' => 'string', + 'example' => '2023-09-22T16:56:29+08:00', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Data\\": [\\n {\\n \\"Alias\\": \\"MySQL\\",\\n \\"Categories\\": [\\n \\"cloud\\"\\n ],\\n \\"Dashboards\\": [\\n {\\n \\"Description\\": \\"MySQL监控大盘信息,监控了连接信息、使用信息等指标\\",\\n \\"Name\\": \\"mysql-overview\\",\\n \\"Url\\": \\"http://xxxx\\"\\n }\\n ],\\n \\"Description\\": \\"通过 MySQL Exporter 监控数据库指标\\",\\n \\"Environments\\": [\\n {\\n \\"Dependencies\\": {\\n \\"Features\\": {\\n \\"key\\": true\\n },\\n \\"Services\\": [\\n \\"ResourceCenter\\"\\n ],\\n \\"ClusterTypes\\": [\\n \\"ManagedKubernetes/Default\\"\\n ]\\n },\\n \\"Description\\": \\"MySQL 服务部署在 Kubernetes 集群中。\\",\\n \\"Enable\\": true,\\n \\"Label\\": \\"容器环境\\",\\n \\"Name\\": \\"CS\\",\\n \\"Policies\\": {\\n \\"AlertDefaultStatus\\": \\"default\\",\\n \\"DefaultInstall\\": false,\\n \\"TargetAddonName\\": \\"cloud-rds-mysql\\",\\n \\"Protocols\\": [\\n {\\n \\"Name\\": \\"arms\\",\\n \\"Label\\": \\"ARMS\\",\\n \\"Icon\\": \\"http://xxxxxxx\\",\\n \\"Description\\": \\"ARMS\\"\\n }\\n ],\\n \\"EnableServiceAccount\\": true,\\n \\"NeedRestartAfterIntegration\\": true,\\n \\"MetricCheckRule\\": {\\n \\"PromQL\\": [\\n \\"scraper_up{scraper=\\\\\\\\\\\\\\"ecs\\\\\\\\\\\\\\"}==1\\"\\n ]\\n }\\n }\\n }\\n ],\\n \\"Icon\\": \\"http://xxxx\\",\\n \\"Keywords\\": [\\n \\"Java\\"\\n ],\\n \\"Language\\": \\"zh\\",\\n \\"Name\\": \\"mysql\\",\\n \\"Once\\": false,\\n \\"Scene\\": \\"database\\",\\n \\"Version\\": \\"0.0.1\\",\\n \\"Weight\\": \\"857\\",\\n \\"LatestReleaseCreateTime\\": \\"2023-09-22T16:56:29+08:00\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListAddons', + ], + 'UpgradeAddonRelease' => [ + 'summary' => 'Updates the release information of an add-on.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AddonVersion', + 'in' => 'query', + 'schema' => [ + 'title' => 'addon的版本信息', + 'description' => 'The version of the add-on.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0.0.2', + ], + ], + [ + 'name' => 'Values', + 'in' => 'query', + 'schema' => [ + 'title' => '元数据信息', + 'description' => 'The metadata information.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{"host":"mysql-service.default","port":3306,"username":"root","password":"roots"}', + ], + ], + [ + 'name' => 'ReleaseName', + 'in' => 'query', + 'schema' => [ + 'title' => 'release的名称', + 'description' => 'The name of the release.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'mysql-1695372983039', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => 'Specifies whether to perform only a dry run, without performing the actual request.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '27E653FA-5958-45BE-8AA9-14D884DC****', + ], + 'Code' => [ + 'description' => 'The status code. 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.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The error message returned if the request parameters are invalid.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"27E653FA-5958-45BE-8AA9-14D884DC****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UpgradeAddonRelease', + ], + 'ListAddonReleases' => [ + 'summary' => 'Queries the add-ons installed in an environment.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '191179', + 'abilityTreeNodes' => [ + 'FEATUREarms7LDEBN', + ], + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '安装环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'AddonName', + 'in' => 'query', + 'schema' => [ + 'title' => 'addon的name信息', + 'description' => 'The name of the add-on.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mysql', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'E9C9DA3D-10FE-472E-9EEF-2D0A3E41****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 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: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The result returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Releases' => [ + 'description' => 'The queried add-ons.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'An add-on from the queried list.'."\n", + 'type' => 'object', + 'properties' => [ + 'AddonName' => [ + 'description' => 'The name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'mysql', + ], + 'AlertRuleCount' => [ + 'description' => 'The number of alert rules.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Conditions' => [ + 'description' => 'The installation phase.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The type of the condition. Valid values:'."\n" + ."\n" + .'* **ruleName: the name of the rule**'."\n", + 'type' => 'object', + 'properties' => [ + 'FirstTransitionTime' => [ + 'description' => 'The first transition time.'."\n", + 'type' => 'string', + 'example' => '2018-01-31T14:32:19Z', + ], + 'LastTransitionTime' => [ + 'description' => 'The last transition time.'."\n", + 'type' => 'string', + 'example' => '2018-01-31T14:32:19Z', + ], + 'Message' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'string', + 'example' => 'xxxx', + ], + 'Reason' => [ + 'description' => 'The reason for the failure.'."\n", + 'type' => 'string', + 'example' => 'xxxx', + ], + 'Status' => [ + 'description' => 'The status of the phase.'."\n", + 'type' => 'string', + 'example' => 'True', + ], + 'Type' => [ + 'description' => 'The type of the phase.'."\n", + 'type' => 'string', + 'example' => 'Loaded', + ], + ], + ], + ], + 'CreateTime' => [ + 'description' => 'The time when the add-on was created.'."\n", + 'type' => 'string', + 'example' => '2023-09-22T16:56:29+08:00', + ], + 'DashboardCount' => [ + 'description' => 'The number of dashboards.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ExporterCount' => [ + 'description' => 'The number of exporters.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'HaveConfig' => [ + 'description' => 'Indicates whether the configuration is available.'."\n", + 'type' => 'boolean', + 'example' => 'true'."\n", + ], + 'InstallUserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '1268790592387', + ], + 'Language' => [ + 'description' => 'The language.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'ReleaseId' => [ + 'description' => 'The release ID after installation.'."\n", + 'type' => 'string', + 'example' => 'be29c093-3fd6-4fb6-9430-797030cc183a', + ], + 'ReleaseName' => [ + 'description' => 'The name of the release.'."\n", + 'type' => 'string', + 'example' => 'mysql-1695372983039', + ], + 'Scene' => [ + 'description' => 'The scenario.'."\n", + 'type' => 'string', + 'example' => 'database', + ], + 'Status' => [ + 'description' => 'The status.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'UpdateTime' => [ + 'description' => 'The time when the add-on was updated.'."\n", + 'type' => 'string', + 'example' => '2023-09-22T16:56:29+08:00', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '111', + ], + 'Version' => [ + 'description' => 'The version of the add-on.'."\n", + 'type' => 'string', + 'example' => '0.0.1', + ], + 'EnvironmentId' => [ + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'example' => 'env-xxxx', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-heyuan', + ], + 'Managed' => [ + 'description' => 'Indicates whether the component is fully managed.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'NextVersion' => [ + 'description' => 'The latest version.'."\n", + 'type' => 'string', + 'example' => '0.0.4', + ], + 'Config' => [ + 'description' => 'The configuration information of the add-on release.'."\n", + 'type' => 'string', + 'example' => '{"port":"9379"}', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E9C9DA3D-10FE-472E-9EEF-2D0A3E41****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": {\\n \\"Releases\\": [\\n {\\n \\"AddonName\\": \\"mysql\\",\\n \\"AlertRuleCount\\": 1,\\n \\"Conditions\\": [\\n {\\n \\"FirstTransitionTime\\": \\"2018-01-31T14:32:19Z\\",\\n \\"LastTransitionTime\\": \\"2018-01-31T14:32:19Z\\",\\n \\"Message\\": \\"xxxx\\",\\n \\"Reason\\": \\"xxxx\\",\\n \\"Status\\": \\"True\\",\\n \\"Type\\": \\"Loaded\\"\\n }\\n ],\\n \\"CreateTime\\": \\"2023-09-22T16:56:29+08:00\\",\\n \\"DashboardCount\\": 1,\\n \\"ExporterCount\\": 2,\\n \\"HaveConfig\\": true,\\n \\"InstallUserId\\": \\"1268790592387\\",\\n \\"Language\\": \\"zh\\",\\n \\"ReleaseId\\": \\"be29c093-3fd6-4fb6-9430-797030cc183a\\",\\n \\"ReleaseName\\": \\"mysql-1695372983039\\",\\n \\"Scene\\": \\"database\\",\\n \\"Status\\": \\"0\\",\\n \\"UpdateTime\\": \\"2023-09-22T16:56:29+08:00\\",\\n \\"UserId\\": \\"111\\",\\n \\"Version\\": \\"0.0.1\\",\\n \\"EnvironmentId\\": \\"env-xxxx\\",\\n \\"RegionId\\": \\"cn-heyuan\\",\\n \\"Managed\\": false,\\n \\"NextVersion\\": \\"0.0.4\\",\\n \\"Config\\": \\"{\\\\\\"port\\\\\\":\\\\\\"9379\\\\\\"}\\"\\n }\\n ],\\n \\"Total\\": 12\\n }\\n}","type":"json"}]', + 'title' => 'ListAddonReleases', + ], + 'DeleteAddonRelease' => [ + 'summary' => 'Delete AddonRelease data by AddonRelease name.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'ReleaseName', + 'in' => 'query', + 'schema' => [ + 'title' => 'addon release的名称', + 'description' => 'Name of Release.', + 'type' => 'string', + 'required' => true, + 'example' => 'agent-822567d4-2449', + ], + ], + [ + 'name' => 'Force', + 'in' => 'query', + 'schema' => [ + 'title' => '是否硬性删除,默认false', + 'description' => 'Whether to be forcibly deleted. The default value is false.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'Environment ID.', + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'AddonName', + 'in' => 'query', + 'schema' => [ + 'title' => 'Addon名称。', + 'description' => 'The name of the add-on. If you assign a value to AddonName, the ReleaseName parameter is ignored and all AddonReleases that belong to the same add-on are deleted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mysql', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => 'F7781D4A-2818-41E7-B7BB-79D809E9****', + ], + 'Code' => [ + 'description' => 'Status code: 200 indicates success.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the alert rule was deleted. Valid values:'."\n" + ."\n" + .'* `true`: The alert rule was deleted.'."\n" + .'* `false`: The alert rule failed to be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'Return a message.', + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F7781D4A-2818-41E7-B7BB-79D809E9****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DeleteAddonRelease', + ], + 'ListEnvironmentDashboards' => [ + 'summary' => 'Queries information about a dashboard of an environment instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID of the instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AddonName', + 'in' => 'query', + 'schema' => [ + 'title' => 'addon的名称,addonName和scene必填一个', + 'description' => 'Name of Addon,One of AddonName and Scene must be filled in.', + 'type' => 'string', + 'required' => false, + 'example' => 'trace-java', + ], + ], + [ + 'name' => 'Scene', + 'in' => 'query', + 'schema' => [ + 'title' => '场景,addonName和scene必填一个', + 'description' => 'The scenario of Addon. Either AddonName or Scene is required.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'database', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C647A', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 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' => 'message', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The result of the operation.'."\n", + 'type' => 'object', + 'properties' => [ + 'Dashboards' => [ + 'description' => 'The dashboards.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'Dashboard details.', + 'type' => 'object', + 'properties' => [ + 'FolderUid' => [ + 'description' => 'The UID of the folder.'."\n", + 'type' => 'string', + 'example' => '1374923841627893', + ], + 'Region' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Tags' => [ + 'description' => 'The keyword.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags.'."\n", + 'type' => 'string', + 'example' => 'k8s', + ], + ], + 'Title' => [ + 'description' => 'The title of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'kafka-instance', + ], + 'Uid' => [ + 'description' => 'The unique identifier of the dashboard.'."\n", + 'type' => 'string', + 'example' => '1537863211936042', + ], + 'Url' => [ + 'description' => 'The complete URL of the dashboard.'."\n", + 'type' => 'string', + 'example' => 'http://xxx', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C647A\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Dashboards\\": [\\n {\\n \\"FolderUid\\": \\"1374923841627893\\",\\n \\"Region\\": \\"cn-hongkong\\",\\n \\"Tags\\": [\\n \\"k8s\\"\\n ],\\n \\"Title\\": \\"kafka-instance\\",\\n \\"Uid\\": \\"1537863211936042\\",\\n \\"Url\\": \\"http://xxx\\"\\n }\\n ],\\n \\"Total\\": 1\\n }\\n}","type":"json"}]', + 'title' => 'ListEnvironmentDashboards', + ], + 'EnableMetric' => [ + 'summary' => 'Enables a discarded metric.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ccfa5e34a5c1f4ce6b916a40a12151d88', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'DropMetric', + 'in' => 'query', + 'schema' => [ + 'description' => 'The metric name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'kube_pod_container_status_ready', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '0231DA4B-3D11-5433-9376-3B5B46C7228D', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0231DA4B-3D11-5433-9376-3B5B46C7228D\\",\\n \\"Success\\": true,\\n \\"Data\\": \\"success\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'EnableMetric', + ], + 'UpdateMetricDrop' => [ + 'summary' => 'Updates the list of discarded metrics.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'c3ca36c8e2693403d85c0d9f8bb1d7b6c', + ], + ], + [ + 'name' => 'MetricDrop', + 'in' => 'query', + 'schema' => [ + 'description' => 'The list of discarded metrics. Specify one metric name in each line.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'apiserver_request_duration_seconds_bucket'."\n" + .'etcd_request_duration_seconds_bucket'."\n" + .'apiserver_request_total'."\n" + .'container_tasks_state', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'CCCA4B88-BD7B-5A38-89AF-C09293BD4187', + ], + 'Data' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The response status. Valid values: 2XX: The request is successful. 3XX: A redirection message is returned. 4XX: The request is invalid. 5XX: A server error occurs.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'ARMS::2019-08-08::UpdateEnvDropMetricsRule', + ], + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CCCA4B88-BD7B-5A38-89AF-C09293BD4187\\",\\n \\"Data\\": \\"true\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'UpdateMetricDrop', + ], + 'UpdatePrometheusMonitoringStatus' => [ + 'summary' => 'Updates the status of the monitoring configuration of a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'MonitoringName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the monitoring configuration.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'customJob1', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '容器服务类型的实例支持:serviceMonitor、podMonitor、customJob'."\n" + .'ecs类型的实例支持:customJob'."\n" + .'不支持probe的状态修改。', + 'description' => 'The type of the monitoring configuration. '."\n" + .'Valid values for a Prometheus instance for Container Service: serviceMonitor, podMonitor, and customJob. '."\n" + .'Valid value for a Prometheus instance for ECS: customJob. '."\n" + .'The status of probe cannot be modified.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'customJob', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => 'run, stop。'."\n" + .'probe不支持状态设置。', + 'description' => 'The status of the monitoring configuration. Valid values: run and stop. The status of Probe cannot be modified.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'run', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '21E85B16-75A6-429A-9F65-8AAC9A54****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果信息', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"21E85B16-75A6-429A-9F65-8AAC9A54****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'UpdatePrometheusMonitoringStatus', + ], + 'UpdatePrometheusMonitoring' => [ + 'summary' => 'Updates the monitoring configuration of a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'MonitoringName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the monitoring configuration.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'podMonitor1', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '容器服务类型的实例支持:serviceMonitor、podMonitor、customJob、probe'."\n" + .'ecs类型的实例支持:customJob、probe', + 'description' => 'The type of the monitoring configuration. '."\n" + .'Valid values for a Prometheus instance for Container Service: serviceMonitor, podMonitor, customJob, and probe. '."\n" + .'Valid values for a Prometheus instance for ECS: customJob and probe.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'podMonitor', + ], + ], + [ + 'name' => 'ConfigYaml', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The monitoring configuration. The value is a YAML string.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'apiVersion: monitoring.coreos.com/v1'."\n" + .'kind: ServiceMonitor'."\n" + .'metadata:'."\n" + .' name: tomcat-demo'."\n" + .' namespace: default'."\n" + .'spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' path: /metrics'."\n" + .' port: tomcat-monitor'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: tomcat'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '626037F5-FDEB-45B0-804C-B3C92797****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"626037F5-FDEB-45B0-804C-B3C92797****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'UpdatePrometheusMonitoring', + 'requestParamsDescription' => 'ServiceMonitor example:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: ServiceMonitor'."\n" + .' metadata:'."\n" + .' name: tomcat-demo'."\n" + .' namespace: default'."\n" + .' spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' path: /metrics'."\n" + .' port: tomcat-monitor'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: tomcat'."\n" + ."\n" + .'PodMonitor example:'."\n" + ."\n" + .' apiVersion: "monitoring.coreos.com/v1"'."\n" + .' kind: "PodMonitor"'."\n" + .' metadata:'."\n" + .' name: "podmonitor-demo"'."\n" + .' namespace: "default"'."\n" + .' spec:'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' podMetricsEndpoints:'."\n" + .' - interval: "30s"'."\n" + .' path: "/metrics"'."\n" + .' port: "tomcat-monitor"'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: "nginx2-exporter"'."\n" + ."\n" + .'CustomJob example:'."\n" + ."\n" + .' scrape_configs:'."\n" + .' - job_name: prometheus1'."\n" + .' honor_timestamps: false'."\n" + .' honor_labels: false'."\n" + .' scheme: http'."\n" + .' metrics_path: /metric'."\n" + .' static_configs:'."\n" + .' - targets:'."\n" + .' - 127.0.0.1:9090'."\n" + ."\n" + .'Probe example:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: Probe'."\n" + .' metadata:'."\n" + .' name: name1-tcp-blackbox # Rule: xxx-{tcp/http/ping}-blackbox'."\n" + .' namespace: arms-prom # Optional.'."\n" + .' spec:'."\n" + .' interval: 30s'."\n" + .' jobName: blackbox'."\n" + .' module: tcp_connect'."\n" + .' prober:'."\n" + .' path: /blackbox/probe'."\n" + .' scheme: http'."\n" + .' url: \'localhost:9335\''."\n" + .' targets:'."\n" + .' staticConfig:'."\n" + .' static:'."\n" + .' - \'arms-prom-admin.arms-prom:9335\''."\n", + ], + 'ListPrometheusMonitoring' => [ + 'summary' => 'Queries the monitoring configuration of a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: `cn-hangzhou`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '容器服务类型的实例支持:serviceMonitor、podMonitor、customJob、probe'."\n" + .'ecs类型的实例支持:customJob、probe', + 'description' => 'The type of the monitoring configuration. Valid values for a Prometheus instance for Container Service: ServiceMonitor, PodMonitor, CustomJob, and Probe. Valid values for a Prometheus instance for ECS: CustomJob and Probe.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'serviceMonitor', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'D80ADAAC-8C32-5479-BD14-C28CF832****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'ClusterId' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'c589a1b8db05c4561aefbb898ca8fb1cf', + ], + 'MonitoringName' => [ + 'description' => 'The name of the monitoring configuration.'."\n", + 'type' => 'string', + 'example' => 'podMonitor1', + ], + 'Type' => [ + 'description' => 'The type of the monitoring configuration.'."\n", + 'type' => 'string', + 'example' => 'podMonitor', + ], + 'ConfigYaml' => [ + 'description' => 'The monitoring configuration. The value is a YAML string.'."\n", + 'type' => 'string', + 'example' => 'apiVersion: monitoring.coreos.com/v1'."\n" + .'kind: ServiceMonitor'."\n" + .'metadata:'."\n" + .' name: tomcat-demo'."\n" + .' namespace: default'."\n" + .'spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' path: /metrics'."\n" + .' port: tomcat-monitor'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: tomcat'."\n", + ], + 'Status' => [ + 'description' => 'The status of the monitoring configuration.'."\n", + 'type' => 'string', + 'example' => 'run', + ], + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D80ADAAC-8C32-5479-BD14-C28CF832****\\",\\n \\"Code\\": 200,\\n \\"Data\\": [\\n {\\n \\"ClusterId\\": \\"c589a1b8db05c4561aefbb898ca8fb1cf\\",\\n \\"MonitoringName\\": \\"podMonitor1\\",\\n \\"Type\\": \\"podMonitor\\",\\n \\"ConfigYaml\\": \\"参见返回参数补充说明。\\",\\n \\"Status\\": \\"run\\"\\n }\\n ],\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'ListPrometheusMonitoring', + 'responseParamsDescription' => 'ServiceMonitor example:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: ServiceMonitor'."\n" + .' metadata:'."\n" + .' name: tomcat-demo'."\n" + .' namespace: default'."\n" + .' spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' path: /metrics'."\n" + .' port: tomcat-monitor'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: tomcat'."\n" + ."\n" + .'PodMonitor example:'."\n" + ."\n" + .' apiVersion: "monitoring.coreos.com/v1"'."\n" + .' kind: "PodMonitor"'."\n" + .' metadata:'."\n" + .' name: "podmonitor-demo"'."\n" + .' namespace: "default"'."\n" + .' spec:'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' podMetricsEndpoints:'."\n" + .' - interval: "30s"'."\n" + .' path: "/metrics"'."\n" + .' port: "tomcat-monitor"'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: "nginx2-exporter"'."\n" + ."\n" + .'CustomJob example:'."\n" + ."\n" + .' scrape_configs:'."\n" + .' - job_name: prometheus1'."\n" + .' honor_timestamps: false'."\n" + .' honor_labels: false'."\n" + .' scheme: http'."\n" + .' metrics_path: /metric'."\n" + .' static_configs:'."\n" + .' - targets:'."\n" + .' - 127.0.0.1:9090'."\n" + ."\n" + .'Probe example:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: Probe'."\n" + .' metadata:'."\n" + .' name: name1-tcp-blackbox # Rule: xxx-{tcp/http/ping}-blackbox'."\n" + .' namespace: arms-prom'."\n" + .' spec:'."\n" + .' interval: 30s'."\n" + .' jobName: blackbox'."\n" + .' module: tcp_connect'."\n" + .' prober:'."\n" + .' path: /blackbox/probe'."\n" + .' scheme: http'."\n" + .' url: \'localhost:9335\''."\n" + .' targets:'."\n" + .' staticConfig:'."\n" + .' static:'."\n" + .' - \'arms-prom-admin.arms-prom:9335\''."\n", + ], + 'GetPrometheusMonitoring' => [ + 'summary' => 'Queries the monitoring configuration of a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '容器服务类型的实例支持:serviceMonitor、podMonitor、customJob、probe'."\n" + .'ecs类型的实例支持:customJob、probe', + 'description' => 'The type of the monitoring configuration. '."\n" + .'Valid values for a Prometheus instance for Container Service: serviceMonitor, podMonitor, customJob, and probe. '."\n" + .'Valid values for a Prometheus instance for ECS: customJob and probe.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'customJob', + ], + ], + [ + 'name' => 'MonitoringName', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => 'The name of the monitoring configuration.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'customJob1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'ClusterId' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'c589a1b8db05c4561aefbb898ca8fb1cf', + ], + 'MonitoringName' => [ + 'description' => 'The name of the monitoring configuration.'."\n", + 'type' => 'string', + 'example' => 'customJob1', + ], + 'Type' => [ + 'title' => 'serviceMonitor、podMonitor、customJob、probe', + 'description' => 'The type of the monitoring configuration. Valid values: serviceMonitor, podMonitor, customJob, and probe.', + 'type' => 'string', + 'example' => 'serviceMonitor', + ], + 'Status' => [ + 'title' => 'run, stop', + 'description' => 'The status of the monitoring configuration. Valid values: run and stop.'."\n", + 'type' => 'string', + 'example' => 'run', + ], + 'ConfigYaml' => [ + 'description' => 'The monitoring configuration. The value is a YAML string.'."\n", + 'type' => 'string', + 'example' => 'apiVersion: monitoring.coreos.com/v1'."\n" + .'kind: ServiceMonitor'."\n" + .'metadata:'."\n" + .' name: tomcat-demo'."\n" + .' namespace: default'."\n" + .'spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' path: /metrics'."\n" + .' port: tomcat-monitor'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: tomcat', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"ClusterId\\": \\"c589a1b8db05c4561aefbb898ca8fb1cf\\",\\n \\"MonitoringName\\": \\"customJob1\\",\\n \\"Type\\": \\"serviceMonitor\\",\\n \\"Status\\": \\"run\\",\\n \\"ConfigYaml\\": \\"参见返回参数补充说明。\\"\\n },\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'GetPrometheusMonitoring', + 'responseParamsDescription' => 'ServiceMonitor example:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: ServiceMonitor'."\n" + .' metadata:'."\n" + .' name: tomcat-demo'."\n" + .' namespace: default'."\n" + .' spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' path: /metrics'."\n" + .' port: tomcat-monitor'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: tomcat'."\n" + ."\n" + .'PodMonitor example:'."\n" + ."\n" + .' apiVersion: "monitoring.coreos.com/v1"'."\n" + .' kind: "PodMonitor"'."\n" + .' metadata:'."\n" + .' name: "podmonitor-demo"'."\n" + .' namespace: "default"'."\n" + .' spec:'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' podMetricsEndpoints:'."\n" + .' - interval: "30s"'."\n" + .' path: "/metrics"'."\n" + .' port: "tomcat-monitor"'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: "nginx2-exporter"'."\n" + ."\n" + .'CustomJob example:'."\n" + ."\n" + .' scrape_configs:'."\n" + .' - job_name: prometheus1'."\n" + .' honor_timestamps: false'."\n" + .' honor_labels: false'."\n" + .' scheme: http'."\n" + .' metrics_path: /metric'."\n" + .' static_configs:'."\n" + .' - targets:'."\n" + .' - 127.0.0.1:9090'."\n" + ."\n" + .'Probe example:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: Probe'."\n" + .' metadata:'."\n" + .' name: name1-tcp-blackbox # Rule: xxx-{tcp/http/ping}-blackbox'."\n" + .' namespace: arms-prom # Optional.'."\n" + .' spec:'."\n" + .' interval: 30s'."\n" + .' jobName: blackbox'."\n" + .' module: tcp_connect'."\n" + .' prober:'."\n" + .' path: /blackbox/probe'."\n" + .' scheme: http'."\n" + .' url: \'localhost:9335\''."\n" + .' targets:'."\n" + .' staticConfig:'."\n" + .' static:'."\n" + .' - \'arms-prom-admin.arms-prom:9335\''."\n", + ], + 'DeletePrometheusMonitoring' => [ + 'summary' => 'Deletes the monitoring configuration of a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '容器服务类型的实例支持:serviceMonitor、podMonitor、customJob、probe'."\n" + .'ecs类型的实例支持:customJob、probe', + 'description' => 'The type of the monitoring configuration. '."\n" + .'Valid values for a Prometheus instance for Container Service: serviceMonitor, podMonitor, customJob, and probe. '."\n" + .'Valid values for a Prometheus instance for ECS: customJob and probe.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'probe', + ], + ], + [ + 'name' => 'MonitoringName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the monitoring configuration.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'customJob1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4D6C358A-A58B-4F4B-94CE-F5AAF023****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '操作结果描述', + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4D6C358A-A58B-4F4B-94CE-F5AAF023****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'DeletePrometheusMonitoring', + ], + 'CreatePrometheusMonitoring' => [ + 'summary' => 'Creates a monitoring configuration for a Prometheus instance.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus实例ID', + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'title' => '容器服务类型的实例支持:serviceMonitor、podMonitor、customJob、probe'."\n" + .'ecs类型的实例支持:customJob、probe', + 'description' => 'The type of the monitoring configuration. '."\n" + .'Valid values for a Prometheus instance for Container Service: serviceMonitor, podMonitor, customJob, and probe. '."\n" + .'Valid values for a Prometheus instance for ECS: customJob and probe.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'serviceMonitor', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'title' => 'run, stop。'."\n" + .'为空时,默认是run。'."\n" + .'probe不支持状态设置,该参数不填。', + 'description' => 'The status of the monitoring configuration. Valid values: run and stop. Default value: run. This parameter is not available if the Type parameter is set to Probe.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'run', + ], + ], + [ + 'name' => 'ConfigYaml', + 'in' => 'formData', + 'schema' => [ + 'title' => 'serviceMonitor、podMonitor、customJob、probe对应的 yaml串。'."\n" + .'probe时,容器服务类型实例的metadata.namespace为"arms-prom",ecs类型实例的metadata.namespace为{userId}-{vpcId},托管ask实例的metadata.namespace为ask-{clusterId}。'."\n" + ."\n" + .'serviceMonitor示例:'."\n" + .'`'."\n" + .'apiVersion: monitoring.coreos.com/v1'."\n" + .'kind: ServiceMonitor'."\n" + .'metadata:'."\n" + .' name: tomcat-demo'."\n" + .' namespace: default'."\n" + .'spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' path: /metrics'."\n" + .' port: tomcat-monitor'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: tomcat'."\n" + .'`'."\n" + ."\n" + .'podMonitor示例:'."\n" + .'`'."\n" + .'apiVersion: "monitoring.coreos.com/v1"'."\n" + .'kind: "PodMonitor"'."\n" + .'metadata:'."\n" + .' name: "podmonitor-demo"'."\n" + .' namespace: "default"'."\n" + .'spec:'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' podMetricsEndpoints:'."\n" + .' - interval: "30s"'."\n" + .' path: "/metrics"'."\n" + .' port: "tomcat-monitor"'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: "nginx2-exporter"'."\n" + .'`'."\n" + ."\n" + .'customJob示例:'."\n" + .'`'."\n" + .'scrape_configs:'."\n" + .'- job_name: prometheus1'."\n" + .' honor_timestamps: false'."\n" + .' honor_labels: false'."\n" + .' scheme: http'."\n" + .' metrics_path: /metric'."\n" + .' static_configs:'."\n" + .' - targets:'."\n" + .' - 127.0.0.1:9090'."\n" + .'`'."\n" + ."\n" + .'probe示例:'."\n" + .'`'."\n" + .'apiVersion: monitoring.coreos.com/v1'."\n" + .'kind: Probe'."\n" + .'metadata:'."\n" + .' name: name1-tcp-blackbox #规则:xxx-{tcp/http/ping}-blackbox'."\n" + .' namespace: arms-prom #可选,服务端自动填写'."\n" + .'spec:'."\n" + .' interval: 30s'."\n" + .' jobName: blackbox'."\n" + .' module: tcp_connect'."\n" + .' prober:'."\n" + .' path: /blackbox/probe'."\n" + .' scheme: http'."\n" + .' url: \'localhost:9335\''."\n" + .' targets:'."\n" + .' staticConfig:'."\n" + .' static:'."\n" + .' - \'arms-prom-admin.arms-prom:9335\''."\n" + .'`', + 'description' => 'The monitoring configuration. Specify a YAML string.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Please refer to the supplementary explanation of the request parameters.', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '21E85B16-75A6-429A-9F65-8AAC9A54****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'title' => '返回成功增加的remoewrite名称,或异常信息。', + 'description' => 'The name of the monitoring configuration that was added, or the exception information.'."\n", + 'type' => 'string', + 'example' => 'name1', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"21E85B16-75A6-429A-9F65-8AAC9A54****\\",\\n \\"Code\\": 200,\\n \\"Data\\": \\"name1\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'CreatePrometheusMonitoring', + 'requestParamsDescription' => 'ServiceMonitor example:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: ServiceMonitor'."\n" + .' metadata:'."\n" + .' name: tomcat-demo'."\n" + .' namespace: default'."\n" + .' spec:'."\n" + .' endpoints:'."\n" + .' - interval: 30s'."\n" + .' path: /metrics'."\n" + .' port: tomcat-monitor'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: tomcat'."\n" + ."\n" + .'PodMonitor example:'."\n" + ."\n" + .' apiVersion: "monitoring.coreos.com/v1"'."\n" + .' kind: "PodMonitor"'."\n" + .' metadata:'."\n" + .' name: "podmonitor-demo"'."\n" + .' namespace: "default"'."\n" + .' spec:'."\n" + .' namespaceSelector:'."\n" + .' any: true'."\n" + .' podMetricsEndpoints:'."\n" + .' - interval: "30s"'."\n" + .' path: "/metrics"'."\n" + .' port: "tomcat-monitor"'."\n" + .' selector:'."\n" + .' matchLabels:'."\n" + .' app: "nginx2-exporter"'."\n" + ."\n" + .'CustomJob example:'."\n" + ."\n" + .' scrape_configs:'."\n" + .' - job_name: prometheus1'."\n" + .' honor_timestamps: false'."\n" + .' honor_labels: false'."\n" + .' scheme: http'."\n" + .' metrics_path: /metric'."\n" + .' static_configs:'."\n" + .' - targets:'."\n" + .' - 127.0.0.1:9090'."\n" + ."\n" + .'Probe example:'."\n" + ."\n" + .' apiVersion: monitoring.coreos.com/v1'."\n" + .' kind: Probe'."\n" + .' metadata:'."\n" + .' name: name1-tcp-blackbox #Rule: xxx-{tcp/http/ping}-blackbox'."\n" + .' namespace: arms-prom # Optional.'."\n" + .' spec:'."\n" + .' interval: 30s'."\n" + .' jobName: blackbox'."\n" + .' module: tcp_connect'."\n" + .' prober:'."\n" + .' path: /blackbox/probe'."\n" + .' scheme: http'."\n" + .' url: \'localhost:9335\''."\n" + .' targets:'."\n" + .' staticConfig:'."\n" + .' static:'."\n" + .' - \'arms-prom-admin.arms-prom:9335\''."\n", + ], + 'AppendInstancesToPrometheusGlobalView' => [ + 'summary' => 'Adds a data source to a global aggregation instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'zyGlobalView', + ], + ], + [ + 'name' => 'Clusters', + 'in' => 'query', + 'schema' => [ + 'description' => 'The list of global aggregation instances. The value is a JSON string.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '\\[ { "sourceName": "Data source name- ArmsPrometheus No.1", "sourceType":"AlibabaPrometheus", "userId":"UserID", "clusterId":"ClusterId", }, { "sourceName": "Data source name - MetrcStore No.2", "sourceType":"MetricStore", "dataSource":"Remote read endpoint of the MetricStore", "extras":{ "username":"BasicAuthUsername", "password":"BasicAuthPassword" } }, { "sourceName": "Custom ", "sourceType":"CustomPrometheus", "dataSource":"Remote read endpoint of the self-managed Prometheus data source", "extras":{ "username":"BasicAuthUsername", "password":"BasicAuthPassword" } }, { "sourceName": "Other one ", "sourceType":"Others", "dataSource":"Endpoint of another data source such as Tencent remote read", "headers":{ "AnyHeaderToFill":"Headers to be filled" }, "extras":{ "username":"BasicAuthUsername", "password":"BasicAuthPassword" } } // ....... more addre ]'."\n", + ], + ], + [ + 'name' => 'GlobalViewClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'global-v2-cn-1670100631025794-6gjc0qgb', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + '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', + ], + 'Msg' => [ + 'description' => 'The additional information.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'Info' => [ + 'description' => 'The Info-level information.'."\n", + 'type' => 'string', + 'example' => '{regionId: the region where the aggregation instance resides. globalViewClusterId: the ID of the aggregation instance. failedInstances: the ID of the object that failed to be added.}'."\n", + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '27E653FA-5958-45BE-8AA9-14D884DC****', + ], + 'Code' => [ + 'description' => 'Status code. 200 means success, other status codes are exceptions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'Additional message.', + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": {\\n \\"Success\\": true,\\n \\"Msg\\": \\"OK\\",\\n \\"Info\\": \\"{regionId: 实例所属region, globalViewClusterId: 实例Id, failedInstances: 数据源JSON list中,添加失败的单个JSON的list}\\"\\n },\\n \\"RequestId\\": \\"27E653FA-5958-45BE-8AA9-14D884DC****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<AppendInstancesToPrometheusGlobalViewResponse>\\n <Data>\\n <Success>true</Success>\\n <Msg>OK</Msg>\\n <Info>{regionId: 实例所属region, globalViewClusterId: 实例Id, failedInstances: 数据源json list中,添加失败的单个json的list}</Info>\\n </Data>\\n <RequestId>27E653FA-5958-45BE-8AA9-14D884DC****</RequestId>\\n</AppendInstancesToPrometheusGlobalViewResponse>","errorExample":""}]', + 'title' => 'AppendInstancesToPrometheusGlobalView', + ], + 'AddPrometheusInstance' => [ + 'summary' => 'Creates a Prometheus instance for Remote Write.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the Prometheus instance for Remote Write.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'notificationpolicy_test', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the Prometheus instance. Only Prometheus instances for Remote Write is supported. Set the value to RW.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'RW', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The struct returned. { "RequestId": the request ID, "Data": "{ "clusterType": the cluster type, "remoteWriteUrl": the public URL for remote write, "internetGrafanaUrl": the internal URL for Grafana, "authToken": indicates whether authentication is enabled, "internetPushGatewayUrl": the internal URL for Pushgateway, "clusterId": the cluster ID, "internetRemoteReadUrl": the internal URL for remote read, "remoteReadUrl": the public URL for remote read, "grafanaUrl": the public URL for Grafana, "pushGatewayUrl": the public URL for Pushgateway, "internetRemoteWriteUrl": the internal URL for remote write}" }'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "RequestId": "1293091C-54AD-50FE-B787-E314B94B35AB",'."\n" + .' "Data": "{'."\n" + .' "clusterType":"remote-write-prometheus",'."\n" + .' "remoteWriteUrl":"http://cn-hu/api/v3/write",'."\n" + .' "internetGrafanaUrl":"https://cn-hanga/cn-hangzhou",'."\n" + .' "authToken":false,'."\n" + .' "internetPushGatewayUrl":"https://cangzhou/api/v2",'."\n" + .' "clusterId":"vrju1lj3sa|123456",'."\n" + .' "internetRemoteReadUrl":"https://cn-hangzh67cn-hangzhou/api/v1/read",'."\n" + .' "remoteReadUrl":"http://cn-hanou/api/v1/read",'."\n" + .' "grafanaUrl":"http://cn-angzhou",'."\n" + .' "pushGatewayUrl":"htt1lj3sa/cn-hangzhou/api/v2",'."\n" + .' "internetRemoteWriteUrl":"httpsngzhou/api/v3/write"}"'."\n" + .'}', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9319A57D-2D9E-472A-B69B-CF3CD16D****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'ARMS::2019-08-08::CreatePrometheusInstance', + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"{\\\\n \\\\\\"RequestId\\\\\\": \\\\\\"1293091C-54AD-50FE-B787-E314B94B35AB\\\\\\",\\\\n \\\\\\"Data\\\\\\": \\\\\\"{\\\\n \\\\\\"clusterType\\\\\\":\\\\\\"remote-write-prometheus\\\\\\",\\\\n \\\\\\"remoteWriteUrl\\\\\\":\\\\\\"http://cn-hu/api/v3/write\\\\\\",\\\\n \\\\\\"internetGrafanaUrl\\\\\\":\\\\\\"https://cn-hanga/cn-hangzhou\\\\\\",\\\\n \\\\\\"authToken\\\\\\":false,\\\\n \\\\\\"internetPushGatewayUrl\\\\\\":\\\\\\"https://cangzhou/api/v2\\\\\\",\\\\n \\\\\\"clusterId\\\\\\":\\\\\\"vrju1lj3sa|123456\\\\\\",\\\\n \\\\\\"internetRemoteReadUrl\\\\\\":\\\\\\"https://cn-hangzh67cn-hangzhou/api/v1/read\\\\\\",\\\\n \\\\\\"remoteReadUrl\\\\\\":\\\\\\"http://cn-hanou/api/v1/read\\\\\\",\\\\n \\\\\\"grafanaUrl\\\\\\":\\\\\\"http://cn-angzhou\\\\\\",\\\\n \\\\\\"pushGatewayUrl\\\\\\":\\\\\\"htt1lj3sa/cn-hangzhou/api/v2\\\\\\",\\\\n \\\\\\"internetRemoteWriteUrl\\\\\\":\\\\\\"httpsngzhou/api/v3/write\\\\\\"}\\\\\\"\\\\n}\\",\\n \\"RequestId\\": \\"9319A57D-2D9E-472A-B69B-CF3CD16D****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'AddPrometheusInstance', + ], + 'AddPrometheusGlobalViewByAliClusterIds' => [ + 'summary' => 'Adds a global aggregation instance in Managed Service for Prometheus.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'zyGlobalView', + ], + ], + [ + 'name' => 'ProductCode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The identifier to identify the service if custom dashboards are created for the specified clusters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'adcp', + ], + ], + [ + 'name' => 'ClusterIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of clusters. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cd1d55bef19904324a20ed0ebb86caa5c,c5b48729918ab4745a24482ac29d0973a, c00a94896641449098bf24931e4166003, cd174485c09384060ba542bc1be1185a4', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Msg' => [ + 'description' => 'The additional information.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Info' => [ + 'description' => 'The Info-level information.'."\n", + 'type' => 'string', + 'example' => '{regionId: the region where the aggregation instance resides. globalViewClusterId: the ID of the aggregation instance. failedClusterIds: the ID of the cluster that failed to be added. A cluster may fail to be added because the specified cluster ID is invalid or the cluster is added across continents.}'."\n", + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '3A0EA2AF-C9B3-555C-B9D5-5DD8F5EF98A9', + ], + 'Code' => [ + 'description' => 'The status code. The HTTP 200 status code indicates a successful request, while others indicate error conditions.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": {\\n \\"Success\\": true,\\n \\"Msg\\": \\"success\\",\\n \\"Info\\": \\"{regionId: 实例所属region, globalViewClusterId: 实例Id, failedClusterIds: 添加失败的AliClusterId(一般是clusterId有误,或者跨大洲添加)}\\"\\n },\\n \\"RequestId\\": \\"3A0EA2AF-C9B3-555C-B9D5-5DD8F5EF98A9\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<AddPrometheusGlobalViewByAliClusterIdsResponse>\\n <Data>\\n <Success>true</Success>\\n <Msg>success</Msg>\\n <Info>{regionId: 实例所属region, globalViewClusterId: 实例Id, failedClusterIds: 添加失败的AliClusterId(一般是clusterId有误,或者跨大洲添加)}</Info>\\n </Data>\\n <RequestId>3A0EA2AF-C9B3-555C-B9D5-5DD8F5EF98A9</RequestId>\\n</AddPrometheusGlobalViewByAliClusterIdsResponse>","errorExample":""}]', + 'title' => 'AddPrometheusGlobalViewByAliClusterIds', + ], + 'AddPrometheusGlobalView' => [ + 'summary' => 'Adds a global aggregation instance in Prometheus Service.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'zyGlobalView', + ], + ], + [ + 'name' => 'Clusters', + 'in' => 'query', + 'schema' => [ + 'description' => 'The queried global aggregation instances. The value is a JSON string.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '[ { "sourceName": "Data source name- ArmsPrometheus No.1", "sourceType":"AlibabaPrometheus", "userId":"UserID", "clusterId":"ClusterId", }, { "sourceName": "Data source name - MetrcStore No.2", "sourceType":"MetricStore", "dataSource":"MetricStore remote read address", "extras":{ "username":"BasicAuthUsername", "password":"BasicAuthPassword" } }, { "sourceName": "Custom ", "sourceType":"CustomPrometheus", "dataSource":"Build your own Prometheus data source remoteread address", "extras":{ "username":"BasicAuthUsername", "password":"BasicAuthPassword" } }, { "sourceName": "Other one ", "sourceType":"Others", "dataSource":"Other data sources such as Tencent remoteread address", "headers":{ "AnyHeaderToFill":"Headers to be populated" }, "extras":{ "username":"BasicAuthUsername", "password":"BasicAuthPassword" } } // ....... more addre ]', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-aek2eq4pecazwfy', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag that you want to add.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http.status_code', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '200', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Msg' => [ + 'description' => 'The additional information.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'Info' => [ + 'description' => 'The Info-level information.'."\n", + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'GlobalViewClusterId' => [ + 'description' => 'The ID of the global aggregation instance.'."\n", + 'type' => 'string', + 'example' => 'global-v2-cn-1483223059272121-jmjjfznz', + ], + 'FailedInstances' => [ + 'description' => 'The list of instances that failed to be added.'."\n", + 'type' => 'string', + 'example' => '\\[{"sourceName": "Data source name- ArmsPrometheus","sourceType":"AlibabaPrometheus","userId":"UserID","clusterId":"ClusterId",}]'."\n", + ], + ], + 'example' => '', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3****', + ], + 'Code' => [ + 'description' => '状态码。说明 200表示成功。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => '返回结果的提示信息。', + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": {\\n \\"Success\\": true,\\n \\"Msg\\": \\"OK\\",\\n \\"Info\\": {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"GlobalViewClusterId\\": \\"global-v2-cn-1483223059272121-jmjjfznz\\",\\n \\"FailedInstances\\": \\"[{\\\\\\"sourceName\\\\\\": \\\\\\"数据源名称- ArmsPrometheus\\\\\\",\\\\\\"sourceType\\\\\\":\\\\\\"AlibabaPrometheus\\\\\\",\\\\\\"userId\\\\\\":\\\\\\"UserID\\\\\\",\\\\\\"clusterId\\\\\\":\\\\\\"ClusterId\\\\\\",}]\\"\\n }\\n },\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<AddPrometheusGlobalViewResponse>\\n <Data>\\n <Success>true</Success>\\n <Msg>OK</Msg>\\n <Info>{regionId: 实例所属region, globalViewClusterId: 实例Id, failedInstances: 数据源json list中,添加失败的单个json的list}</Info>\\n </Data>\\n <RequestId>34ED024E-9E31-434A-9E4E-D9D15C3****</RequestId>\\n</AddPrometheusGlobalViewResponse>","errorExample":""}]', + 'title' => 'AddPrometheusGlobalView', + ], + 'AddAliClusterIdsToPrometheusGlobalView' => [ + 'summary' => 'Adds a global aggregation instance as a data source in Managed Service for Prometheus.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'zyGlobalView', + ], + ], + [ + 'name' => 'GlobalViewClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'global-v2-cn-1478326682034601-vss8pd0i', + ], + ], + [ + 'name' => 'ClusterIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of clusters. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cd1d55bef19904324a20ed0ebb86caa5c,c5b48729918ab4745a24482ac29d0973a, c00a94896641449098bf24931e4166003, cd174485c09384060ba542bc1be1185a4', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'* `true`: The request was successful.'."\n" + .'* `false`: The request failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Msg' => [ + 'description' => 'The additional information.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'Info' => [ + 'description' => 'The Info-level information.'."\n", + 'type' => 'string', + 'example' => '{regionId: the region where the aggregation instance resides. globalViewClusterId: the ID of the aggregation instance. failedClusterIds: the ID of the cluster that failed to be added. A cluster may fail to be added because the specified cluster ID is invalid or the cluster is added across continents.}'."\n", + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => 'F7781D4A-2818-41E7-B7BB-79D809E9****', + ], + 'Code' => [ + 'description' => 'The status code. The HTTP 200 status code indicates a successful request, while others indicate error conditions.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": {\\n \\"Success\\": true,\\n \\"Msg\\": \\"OK\\",\\n \\"Info\\": \\"{regionId: 实例所属region, globalViewClusterId: 实例Id, failedClusterIds: 添加失败的AliClusterId(一般是clusterId有误,或者跨大洲添加)}\\"\\n },\\n \\"RequestId\\": \\"F7781D4A-2818-41E7-B7BB-79D809E9****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<AddAliClusterIdsToPrometheusGlobalViewResponse>\\n <Data>\\n <Success>true</Success>\\n <Msg>OK</Msg>\\n <Info>{regionId: 实例所属region, globalViewClusterId: 实例Id, failedClusterIds: 添加失败的AliClusterId(一般是clusterId有误,或者跨大洲添加)}</Info>\\n </Data>\\n <RequestId>F7781D4A-2818-41E7-B7BB-79D809E9****</RequestId>\\n</AddAliClusterIdsToPrometheusGlobalViewResponse>","errorExample":""}]', + 'title' => 'AddAliClusterIdsToPrometheusGlobalView', + ], + 'AddRecordingRule' => [ + 'summary' => 'Creates or updates a recording rule.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'RuleYaml', + 'in' => 'query', + 'schema' => [ + 'description' => 'The custom recording rule. The value is in the YAML format.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'groups: - name: "recording_demo" rules: - expr: "sum(jvm_memory_max_bytes)" record: "rate_coredns_demo"', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The schema of the response.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9FEA6D00-317F-45E3-9004-7FB8B0B7****', + ], + 'Data' => [ + 'description' => 'The status of the response.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The status code. 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', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9FEA6D00-317F-45E3-9004-7FB8B0B7****\\",\\n \\"Data\\": \\"success\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<AddRecordingRuleResponse>\\n <RequestId>9FEA6D00-317F-45E3-9004-7FB8B0B7****</RequestId>\\n <Data>success</Data>\\n</AddRecordingRuleResponse>","errorExample":""}]', + 'title' => 'AddRecordingRule', + ], + 'SyncRecordingRules' => [ + 'summary' => 'Synchronizes the aggregation rule of a cluster to other clusters in a region.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the cluster whose aggregation rule you want to synchronize.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'TargetClusters', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of clusters to which you want to synchronize the aggregation rule.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '{ "cn":[ "c06ca68cd16f14f52bb07772eda***", "c33dd70a0ac184c1b879d807ab2***", "c384cf7e4dcb543e6ac8c7d4dd3***" ], "us":[ "ce30f833bc4a04a56a06b070319***" ], "jp":[ ], "ap":[ ], "gov":[ ], "finance":[ ] }', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region. The destination region can be the same as the source region.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'string', + 'example' => '{ "data":\\[ "c06ca68cd16f14f52bb07772eda\\*\\*\\*", "c33dd70a0ac184c1b879d807ab2\\*\\*\\*", "c384cf7e4dcb543e6ac8c7d4dd3\\*\\*\\*", "ce30f833bc4a04a56a06b070319\\*\\*\\*" ], "message":"IDs of Clusters to which the aggregation rule failed to be synchronized", "success":true }'."\n", + ], + 'Code' => [ + 'description' => '状态码。200表示成功。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => '返回结果的提示信息。', + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Data\\": \\"{ \\\\\\"data\\\\\\":[ \\\\\\"c06ca68cd16f14f52bb07772eda***\\\\\\", \\\\\\"c33dd70a0ac184c1b879d807ab2***\\\\\\", \\\\\\"c384cf7e4dcb543e6ac8c7d4dd3***\\\\\\", \\\\\\"ce30f833bc4a04a56a06b070319***\\\\\\" ], \\\\\\"message\\\\\\":\\\\\\"设置RecordingRule失败的clusterIds\\\\\\", \\\\\\"success\\\\\\":true }\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<SyncRecordingRulesResponse>\\n <RequestId>1A9C645C-C83F-4C9D-8CCB-29BEC9E1****</RequestId>\\n <Data>{ \\"data\\":[ \\"c06ca68cd16f14f52bb07772eda***\\", \\"c33dd70a0ac184c1b879d807ab2***\\", \\"c384cf7e4dcb543e6ac8c7d4dd3***\\", \\"ce30f833bc4a04a56a06b070319***\\" ], \\"message\\":\\"设置RecordingRule失败的clusterIds\\", \\"success\\":true }</Data>\\n</SyncRecordingRulesResponse>","errorExample":""}]', + 'title' => 'SyncRecordingRules', + 'requestParamsDescription' => 'Note: The **TargetClusters** parameter specifies the clusters to which aggregation rule is synchronized. You must pass the parameter in the JSON format. Each element in the TargetClusters parameter is an array, which indicates a cluster ID. Example: { "cn":\\[], //China "eu":\\[], //Europe "us":\\[], //America "jp":\\[], //Japan "ap":\\[], //Asia Pacific "gov":\\[], //Alibaba Gov Cloud "finance":\\[] //Alibaba Finance Cloud }. Enter cluster IDs in each pair of brackets (\\[]).'."\n", + 'responseParamsDescription' => 'Note: If the value of the response parameter **Data** is true, the call is successful. Otherwise, the call fails. If the value of the data field is not null, the aggregation rule fails to be synchronized to some clusters. The error may occur due to cluster faults or request timeout. You need to check and troubleshoot the error before you call the API operation again.'."\n", + ], + 'AddIntegration' => [ + 'summary' => 'Integrates the dashboard and collection rules of Prometheus Service.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Container Service for Kubernetes (ACK) cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'Integration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The abbreviation of the software that is supported by Application Real-Time Monitoring Service (ARMS). Valid values (case-insensitive): `ASM`, `IoT`, and `Flink`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'asm', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Indicates whether the call was successful.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Code' => [ + 'description' => 'Status code. 200 means success, other status codes are exceptions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The prompt information of the returned result.', + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'ARMS::2019-08-08::InstallAddon', + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"success\\",\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<AddIntegrationResponse>\\n\\t<RequestId>1A9C645C-C83F-4C9D-8CCB-29BEC9E1****</RequestId>\\n\\t<Data>success</Data>\\n</AddIntegrationResponse>","errorExample":""}]', + 'title' => 'AddIntegration', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'GetIntegrationState' => [ + 'summary' => 'Queries the integration state of the dashboards and collection rules of Application Real-Time Monitoring Service (ARMS) Prometheus.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Container Service for Kubernetes (ACK) cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Integration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The abbreviation of the software that is supported by ARMS. Valid values (case-insensitive): `ASM`, `IoT`, and `Flink`.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'asm', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Response schema.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'State' => [ + 'description' => 'The integration state of Prometheus dashboards and collection rules. Valid values:'."\n" + ."\n" + .'* `true`: The Prometheus dashboards and collection rules that monitor the software are integrated.'."\n" + .'* `false`: The Prometheus dashboards and collection rules that monitor the software are not integrated.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'Status code. 200 means success, other status codes are exceptions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The prompt information of the returned result.', + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'ARMS::2019-08-08::DescribeAddonRelease', + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"State\\": true,\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<GetIntegrationStateResponse>\\n <RequestId>1A9C645C-C83F-4C9D-8CCB-29BEC9E1****</RequestId>\\n <State>true</State>\\n</GetIntegrationStateResponse>","errorExample":""}]', + 'title' => 'GetIntegrationState', + ], + 'DeleteIntegration' => [ + 'summary' => 'Deletes the collection rules for a Container Service for Kubernetes (ACK) cluster.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ACK cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Integration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The abbreviation of the software that is supported by Application Real-Time Monitoring Service (ARMS). Valid values (case-insensitive): `ASM`, `IoT`, and `Flink`.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'asm', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Data' => [ + 'description' => 'Indicates whether the call was successful.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'ARMS::2019-08-08::DeleteAddonRelease', + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Data\\": \\"success\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteIntegrationResponse>\\n <RequestId>1A9C645C-C83F-4C9D-8CCB-29BEC9E1****</RequestId>\\n <Data>success</Data>\\n</DeleteIntegrationResponse>","errorExample":""}]', + 'title' => 'DeleteIntegration', + ], + 'AddGrafana' => [ + 'summary' => 'Integrates the dashboard of Managed Service for Prometheus.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Container Service for Kubernetes (ACK) cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'Integration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The abbreviation of the software that is supported by Application Real-Time Monitoring Service (ARMS). Valid values (case-insensitive): `ASM`, `IoT`, and `Flink`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'asm', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Indicates whether the call was successful.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"success\\",\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\"\\n}","errorExample":""},{"type":"xml","example":"<AddGrafanaResponse>\\n\\t<RequestId>1A9C645C-C83F-4C9D-8CCB-29BEC9E1****</RequestId>\\n\\t<Data>success</Data>\\n</AddGrafanaResponse>","errorExample":""}]', + 'title' => 'AddGrafana', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'InstallCmsExporter' => [ + 'summary' => 'Installs the cms-exporter collector.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'CmsArgs', + 'in' => 'query', + 'schema' => [ + 'title' => '云监控接入方式支持的参数,多个产品名用#分隔', + 'description' => 'The cloud services that you want to monitor. The CmsArgs parameter is the startup parameter of the cms-exporter collector. Separate multiple cloud services with number signs (`#`).'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'hologres#cen', + ], + ], + [ + 'name' => 'EnableTag', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to collect the aliyun tags attached to each cloud service. Default value: false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'false', + 'default' => 'true', + ], + ], + [ + 'name' => 'DirectArgs', + 'in' => 'query', + 'schema' => [ + 'title' => '一方接入方式支持的参数,多个产品名用#分隔', + 'description' => 'The recently monitored cloud services. Separate multiple cloud services with number signs (`#`).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'hologres#cen', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request. You can use the ID to locate logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => 'E7A04B0D-E2CA-59BB-8A9D-D5D349C22BF1', + ], + 'Data' => [ + 'description' => 'Indicates whether the call was successful.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'ARMS::2019-08-08::InstallAddon', + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E7A04B0D-E2CA-59BB-8A9D-D5D349C22BF1\\",\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'InstallCmsExporter', + ], + 'OpenVCluster' => [ + 'summary' => 'Activates a virtual cluster.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the cluster. For cloud services, set this parameter to `cloud-product-prometheus`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cloud-product-prometheus', + ], + ], + [ + 'name' => 'Length', + 'in' => 'query', + 'schema' => [ + 'description' => 'The length of the cluster ID. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Product', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the cloud service. This parameter must be specified when ClusterType is set to `cloud-product-prometheus`. Valid values: influxdb, mongodb, and DLA. You cannot specify multiple service names.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'influxdb', + ], + ], + [ + 'name' => 'RecreateSwitch', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to create or query a virtual cluster. This parameter provides backward compatibility.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'example' => 'rre59xelcx', + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '42E58E4D-ACAD-4400-8FAF-F762340AE5B3', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"rre59xelcx\\",\\n \\"RequestId\\": \\"42E58E4D-ACAD-4400-8FAF-F762340AE5B3\\"\\n}","type":"json"}]', + 'title' => 'OpenVCluster', + ], + 'DeletePrometheusGlobalView' => [ + 'summary' => 'Deletes a global aggregation instance from Prometheus Service.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GlobalViewClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'global-v2-cn-1670100631025794-amaykca4', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The response parameters in the JSON format.'."\n", + 'type' => 'string', + 'example' => '{"Success":true,"Msg":"OK"}', + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '337B8F7E-0A64-5768-9225-E9B3CF******', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates a successful request, whereas others indicate a failed request.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The supplemental message providing additional context about the response.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"{\\\\\\"Success\\\\\\":true,\\\\\\"Msg\\\\\\":\\\\\\"OK\\\\\\"}\\",\\n \\"RequestId\\": \\"337B8F7E-0A64-5768-9225-E9B3CF******\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<DeletePrometheusGlobalViewResponse>\\n <Data>{\\"Success\\":true,\\"Msg\\":\\"OK\\"}</Data>\\n <RequestId>337B8F7E-0A64-5768-9225-E9B3CF******</RequestId>\\n</DeletePrometheusGlobalViewResponse>","errorExample":""}]', + 'title' => 'DeletePrometheusGlobalView', + ], + 'RemoveAliClusterIdsFromPrometheusGlobalView' => [ + 'summary' => 'Removes data sources from a global aggregation instance in Managed Service for Prometheus.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'zyGlobalView', + ], + ], + [ + 'name' => 'GlobalViewClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'global-v2-cn-1670100631025794-amaykca4', + ], + ], + [ + 'name' => 'ClusterIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of clusters. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cd1d55bef19904324a20ed0ebb86caa5c,c5b48729918ab4745a24482ac29d0973a, c00a94896641449098bf24931e4166003, cd174485c09384060ba542bc1be1185a4', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Msg' => [ + 'description' => 'The additional information.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'Info' => [ + 'description' => 'The Info-level information.'."\n", + 'type' => 'string', + 'example' => '{regionId: the region where the global aggregation instance resides. globalViewClusterId: the ID of the global aggregation instance. failedClusterIds: the IDs of the clusters that failed to be added. A cluster may fail to be added if the specified cluster ID is invalid.}'."\n", + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => 'F7781D4A-2818-41E7-B7BB-79D809E9****', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": {\\n \\"Success\\": true,\\n \\"Msg\\": \\"OK\\",\\n \\"Info\\": \\"{regionId: 实例所属region, globalViewClusterId: 实例Id, failedClusterIds: 添加失败的AliClusterId(一般是clusterId有误)}\\"\\n },\\n \\"RequestId\\": \\"F7781D4A-2818-41E7-B7BB-79D809E9****\\",\\n \\"Message\\": \\"success\\",\\n \\"Code\\": 200\\n}","errorExample":""},{"type":"xml","example":"<RemoveAliClusterIdsFromPrometheusGlobalViewResponse>\\n <Data>\\n <Success>true</Success>\\n <Msg>OK</Msg>\\n <Info>{regionId: 实例所属region, globalViewClusterId: 实例Id, failedClusterIds: 添加失败的AliClusterId(一般是clusterId有误)}</Info>\\n </Data>\\n <RequestId>F7781D4A-2818-41E7-B7BB-79D809E9****</RequestId>\\n</RemoveAliClusterIdsFromPrometheusGlobalViewResponse>","errorExample":""}]', + 'title' => 'RemoveAliClusterIdsFromPrometheusGlobalView', + ], + 'RemoveSourcesFromPrometheusGlobalView' => [ + 'summary' => 'Removes data sources from a global aggregation instance in Managed Service for Prometheus. You can delete only data sources that are not from Alibaba Cloud.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'zyGlobalView', + ], + ], + [ + 'name' => 'GlobalViewClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'global-v2-cn-1478326682034601-vss8pd0i', + ], + ], + [ + 'name' => 'SourceNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'The list of custom data sources. You can specify multiple data sources and separate them with commas (,).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'localPrometheusClusterName,testCumterPrometheusName', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'True', + ], + 'Msg' => [ + 'description' => 'The additional information.'."\n", + 'type' => 'string', + 'example' => 'OK', + ], + 'Info' => [ + 'description' => 'The Info-level information.'."\n", + 'type' => 'string', + 'example' => '{regionId: the region where the aggregation instance resides. globalViewClusterId: the ID of the aggregation instance.'."\n", + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '9319A57D-2D9E-472A-B69B-CF3CD16D****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The status code. The HTTP 200 status code indicates a successful request, while others indicate error conditions.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": {\\n \\"Success\\": true,\\n \\"Msg\\": \\"OK\\",\\n \\"Info\\": \\"{regionId: 实例所属region, globalViewClusterId: 实例Id}\\"\\n },\\n \\"RequestId\\": \\"9319A57D-2D9E-472A-B69B-CF3CD16D****\\",\\n \\"Message\\": \\"success\\",\\n \\"Code\\": 200\\n}","errorExample":""},{"type":"xml","example":"<RemoveSourcesFromPrometheusGlobalViewResponse>\\n <Data>\\n <Success>true</Success>\\n <Msg>OK</Msg>\\n <Info>{regionId: 实例所属region, globalViewClusterId: 实例Id}</Info>\\n </Data>\\n <RequestId>9319A57D-2D9E-472A-B69B-CF3CD16D****</RequestId>\\n</RemoveSourcesFromPrometheusGlobalViewResponse>","errorExample":""}]', + 'title' => 'RemoveSourcesFromPrometheusGlobalView', + ], + 'DeleteCmsExporter' => [ + 'summary' => 'Uninstalls a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '27E653FA-5958-45BE-8AA9-14D884DC****', + ], + 'Data' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'ARMS::2019-08-08::DeleteAddonRelease', + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"27E653FA-5958-45BE-8AA9-14D884DC****\\",\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'DeleteCmsExporter', + ], + 'DelAuthToken' => [ + 'summary' => 'Disables an authentication token.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Indicates whether the call was successful.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C647A', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"success\\",\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C647A\\"\\n}","type":"json"}]', + 'title' => 'DelAuthToken', + ], + 'DeleteGrafanaResource' => [ + 'summary' => 'Deletes Grafana dashboard resources from a Managed Service for Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'clusterNameOfTest', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'delete success.', + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '771DC66C-C5E0-59BC-A983-DD18FEE9EFFA', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates a successful request, whereas others indicate a failed request.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"delete success.\\",\\n \\"RequestId\\": \\"771DC66C-C5E0-59BC-A983-DD18FEE9EFFA\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteGrafanaResourceResponse>\\n <Data>delete success.</Data>\\n <RequestId>771DC66C-C5E0-59BC-A983-DD18FEE9EFFA</RequestId>\\n</DeleteGrafanaResourceResponse>","errorExample":""}]', + 'title' => 'DeleteGrafanaResource', + ], + 'UninstallPromCluster' => [ + 'summary' => 'Releases a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言环境, 默认为中文 zh | en', + 'description' => 'Language environment(If left blank, defaults to zh):'."\n" + .'- zh'."\n" + .'- en', + 'type' => 'string', + 'required' => false, + 'example' => 'en', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'c0bad479465464e1d8c1e641b0afb****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to find logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '53980F48-DE82-53A1-9ADE-D2629226DD9A', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"success\\",\\n \\"RequestId\\": \\"53980F48-DE82-53A1-9ADE-D2629226DD9A\\",\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200\\n}","errorExample":""},{"type":"xml","example":"<UninstallPromClusterResponse>\\n <Data>true</Data>\\n <RequestId>53980F48-DE82-53A1-9ADE-D2629226DD9A</RequestId>\\n</UninstallPromClusterResponse>","errorExample":""}]', + 'title' => 'UninstallPromCluster', + ], + 'QueryPromInstallStatus' => [ + 'summary' => 'Queries whether the Prometheus agent is installed on a cluster.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '27E653FA-5958-45BE-8AA9-14D884DC****', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'isControllerInstalled' => [ + 'description' => 'Indicates whether the call was successful. Valid values:'."\n" + ."\n" + .'true: The call was successful. false: The call fails.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"27E653FA-5958-45BE-8AA9-14D884DC****\\",\\n \\"Data\\": {\\n \\"isControllerInstalled\\": true\\n }\\n}","type":"json"}]', + 'title' => 'QueryPromInstallStatus', + ], + 'ListPrometheusGlobalView' => [ + 'summary' => 'Creates a global aggregation instance in Prometheus Service and obtains the list of global aggregation instances.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The list of global aggregation instances. The value of this parameter is a string in the JSON format.'."\n", + 'type' => 'string', + 'example' => '\\[ {groupName: "the name of the global aggregation instance", clusterId: "global-v2-clusterid", endpoint: "cn-hangzhou"}, // ..... more items ]'."\n", + ], + 'RequestId' => [ + 'description' => 'The ID of the request. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => 'DBDCE95A-A0DD-5FC5-97CC-EEFC3D814385', + ], + 'Code' => [ + 'description' => 'Status code. Description 200 means success.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'More information.', + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"[ {groupName: \\\\\\"聚合实例名称\\\\\\", clusterId: \\\\\\"global-v2-clusterid\\\\\\", endpoint: \\\\\\"cn-hangzhou\\\\\\"}, // ..... more items ]\\",\\n \\"RequestId\\": \\"DBDCE95A-A0DD-5FC5-97CC-EEFC3D814385\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<ListPrometheusGlobalViewResponse>\\n <Data>[ {groupName: \\"聚合实例名称\\", clusterId: \\"global-v2-clusterid\\", endpoint: \\"cn-hangzhou\\"}, // ..... more items ]</Data>\\n <RequestId>DBDCE95A-A0DD-5FC5-97CC-EEFC3D814385</RequestId>\\n</ListPrometheusGlobalViewResponse>","errorExample":""}]', + 'title' => 'ListPrometheusGlobalView', + ], + 'GetPrometheusGlobalView' => [ + 'summary' => 'Queries the information about a global aggregation instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GlobalViewClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'global-v2-cn-1478326682034601-vss8pd0i', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'string', + 'example' => '{ "clusterId":"The ID of the global aggregation instance.", "groupName":"The name of the global aggregation instance.", "dataSources":\\[ { "sourceName":"The name of the data source.- ArmsPrometheus No.1", "sourceType":"AlibabaPrometheus", "userId":"UserID", "clusterId":"ClusterId" }, // more datasources ] }'."\n", + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '743AD493-D006-53BD-AAEC-DDCE7FB68EA7', + ], + 'Code' => [ + 'description' => 'Status code. 200 is success, other status codes are exceptions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'Returns a hint message for the result.', + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"{ \\\\\\"clusterId\\\\\\":\\\\\\"聚合实例ClusterId\\\\\\", \\\\\\"groupName\\\\\\":\\\\\\"聚合实例名称\\\\\\", \\\\\\"dataSources\\\\\\":[ { \\\\\\"sourceName\\\\\\":\\\\\\"数据源名称- ArmsPrometheus No.1\\\\\\", \\\\\\"sourceType\\\\\\":\\\\\\"AlibabaPrometheus\\\\\\", \\\\\\"userId\\\\\\":\\\\\\"UserID\\\\\\", \\\\\\"clusterId\\\\\\":\\\\\\"ClusterId\\\\\\" }, // more datasources ] }\\",\\n \\"RequestId\\": \\"743AD493-D006-53BD-AAEC-DDCE7FB68EA7\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<GetPrometheusGlobalViewResponse>\\n <Data>{ \\"clusterId\\":\\"聚合实例ClusterId\\", \\"groupName\\":\\"聚合实例名称\\", \\"dataSources\\":[ { \\"sourceName\\":\\"数据源名称- ArmsPrometheus No.1\\", \\"sourceType\\":\\"AlibabaPrometheus\\", \\"userId\\":\\"UserID\\", \\"clusterId\\":\\"ClusterId\\" }, // more datasources ] }</Data>\\n <RequestId>743AD493-D006-53BD-AAEC-DDCE7FB68EA7</RequestId>\\n</GetPrometheusGlobalViewResponse>","errorExample":""}]', + 'title' => 'GetPrometheusGlobalView', + ], + 'CheckServiceStatus' => [ + 'summary' => 'Checks the status of a service in the current cluster, such as whether the service is activated and whether the payment is overdue.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '44423', + 'abilityTreeNodes' => [ + 'FEATUREarms7LDEBN', + ], + ], + 'parameters' => [ + [ + 'name' => 'SvcCode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The service code of an Alibaba Cloud service. The service code of Managed Service for Prometheus is prometheus.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'prometheus', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true.'."\n" + .'* false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to find logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '5710C923-AD09-4293-9E11-DCBE3D15F8D4', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"true\\",\\n \\"RequestId\\": \\"5710C923-AD09-4293-9E11-DCBE3D15F8D4\\"\\n}","type":"json"}]', + 'title' => 'CheckServiceStatus', + ], + 'GetPrometheusApiToken' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Token' => [ + 'description' => 'The token required for integrating Prometheus Service.'."\n", + 'type' => 'string', + 'example' => '6dcbb77ef4ba6ef5466b5debf9e2****', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Token\\": \\"6dcbb77ef4ba6ef5466b5debf9e2****\\",\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\"\\n}","errorExample":""},{"type":"xml","example":"<GetPrometheusApiTokenResponse>\\n\\t<RequestId>1A9C645C-C83F-4C9D-8CCB-29BEC9E1****</RequestId>\\n\\t<Token>6dcbb77ef4ba6ef5466b5debf9e2****</Token>\\n</GetPrometheusApiTokenResponse>","errorExample":""}]', + 'title' => 'GetPrometheusApiToken', + 'summary' => 'Queries the token required for integrating Prometheus Service.', + 'description' => 'None.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'GetExploreUrl' => [ + 'summary' => 'Enables the Explore feature of Grafana.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'c9cc4c5e220f8461f9d71b6ec6e******', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the Grafana data source.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'enumValueTitles' => [ + 'loki' => 'loki', + 'prometheus' => 'prometheus', + ], + 'example' => 'prometheus', + ], + ], + [ + 'name' => 'Expression', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query statement that corresponds to the data source.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + '{level="WARN"}' => '{level="WARN"}', + '{level="ERROR"}' => '{level="ERROR"}', + ], + 'example' => '{app="buy2"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Response parameters'."\n", + 'type' => 'string', + 'example' => '-', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3****', + ], + 'Code' => [ + 'description' => 'Status code. 200 means success, other status codes are exceptions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The prompt information of the returned result.', + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Whether the operation was successful:'."\n" + .'- true: the operation was successful'."\n" + .'- false: the operation failed', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '暂无替代API,请关注后续API最新发布。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"-\\",\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetExploreUrl', + ], + 'ListDashboards' => [ + 'summary' => 'Queries the Grafana dashboards of a Container Service for Kubernetes (ACK) cluster.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ACK cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'ClusterType', + 'in' => 'query', + 'schema' => [ + 'description' => 'Valid values: ACK, ASK, cloud-product-prometheus, and Node. You can query the dashboards of a virtual cluster by specifying the cluster type. For InfluxDB, set this parameter to `cloud-product-prometheus`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Node', + ], + ], + [ + 'name' => 'Language', + 'in' => 'query', + 'schema' => [ + 'description' => 'The language of the returned Grafana dashboard. Valid values: en and zh. Default value: en.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'en', + ], + ], + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'description' => 'The dashboard title. The dashboard title can be changed. We recommend that you specify the **DashboardName** parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ApiServer', + ], + ], + [ + 'name' => 'Product', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cloud service code. This parameter is required if you set the ClusterType parameter to `cloud-product-prometheus`. The following cloud services are available: Serverless App Engine, Microservices Engine, Message Queue for Apache RocketMQ, Lindorm, Message Queue for Apache Kafka, ApsaraDB for ClickHouse, Data Lake Analytics, Message Queue for RabbitMQ, ApsaraDB for MongoDB, Time Series Database (TSDB) for InfluxDB, MSE Cloud-native Gateway, Grafana Service, SchedulerX, Global Transaction Service, Enterprise Distributed Application Service, Machine Learning Platform for AI - Elastic Algorithm Service (EAS), Application High Availability Service, and Performance Testing.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'xxxx', + ], + ], + [ + 'name' => 'RecreateSwitch', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to create or query a virtual cluster. This parameter provides backward compatibility.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'DashboardName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The unique names of the dashboards. You can query dashboards by specifying their names. The **dashboard title** can be changed whereas the **dashboard name** cannot. You can specify multiple names and separate them with commas (,), for example, `k8s-event,k8s-overview`. A dashboard may have multiple versions. If you want to specify a version, you can add version information after the name, for example, `k8s-event:v1,k8s-overview:latest`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'k8s-node-overview', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2A0CEDF1-06FE-44AC-8E21-21A5BE65****', + ], + 'DashboardVos' => [ + 'description' => 'The information about the Grafana dashboard.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the Grafana dashboard.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the Grafana dashboard. Valid values:'."\n" + ."\n" + .'* `dash-db`: a dashboard'."\n" + .'* `dash-folder`: a folder that can include a dashboard'."\n", + 'type' => 'string', + 'example' => 'dash-db', + ], + 'Time' => [ + 'description' => 'The time when the Grafana dashboard was created. The value is a timestamp. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '1590136924', + ], + 'NeedUpdate' => [ + 'description' => 'Indicates whether the Grafana dashboard has a new version that is available for upgrade.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'Kind' => [ + 'description' => 'The category of the Grafana dashboard. Valid values: BASIC, THIRD, LIMIT, and CUSTOM.'."\n", + 'type' => 'string', + 'example' => 'BASIC', + ], + 'Language' => [ + 'description' => 'The language of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'en', + ], + 'Url' => [ + 'description' => 'The complete URL of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s', + ], + 'HttpsUrl' => [ + 'description' => 'The URL of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s', + ], + 'DashboardType' => [ + 'description' => 'The type of the Grafana dashboard. This parameter has the same effect as the Exporter parameter whereas provides clearer implication.'."\n", + 'type' => 'string', + 'example' => 'Node', + ], + 'Exporter' => [ + 'description' => 'The type of the exporter access source. Valid values:'."\n" + ."\n" + .'* Prometheus'."\n" + .'* Node'."\n" + .'* GPU'."\n" + .'* Redis'."\n" + .'* MySQL'."\n" + .'* Kafka'."\n" + .'* NGINX V2'."\n" + .'* Nginx'."\n" + .'* ZooKeeper'."\n" + .'* MongoDB'."\n" + .'* RabbitMQ'."\n" + .'* PostgreSQL'."\n" + .'* Kubernetes'."\n" + .'* Client Library'."\n" + .'* Elasticsearch'."\n" + .'* RocketMQ'."\n", + 'type' => 'string', + 'example' => 'Nginx', + ], + 'Version' => [ + 'description' => 'The version of the Grafana dashboard. The combination of version and name uniquely identifies a dashboard.'."\n", + 'type' => 'string', + 'example' => 'v2', + ], + 'IsArmsExporter' => [ + 'description' => 'Indicates whether the exporter is provided by Application Real-Time Monitoring Service (ARMS).'."\n" + ."\n" + .'* `true:` The exporter is provided by ARMS.'."\n" + .'* `false:`: The exporter is not provided by ARMS.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'HttpUrl' => [ + 'description' => 'The URL of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s', + ], + 'Title' => [ + 'description' => 'The title of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'ApiServer', + ], + 'Name' => [ + 'description' => 'The name of the Grafana dashboard. This parameter is different from the **Title** parameter as this parameter cannot be changed.'."\n", + 'type' => 'string', + 'example' => 'k8s-node-overview', + ], + 'Id' => [ + 'description' => 'The ID of the Grafana dashboard. The value is unique only when you install the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => '1100**', + ], + 'Uid' => [ + 'description' => 'The unique identifier of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => '1131971649496228-*****-59', + ], + 'Tags' => [ + 'description' => 'The tags of the Grafana dashboard.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => '["arms-k8s","ccc8ce1fe0c9543629e39ee657e34****"]', + ], + ], + 'I18nChild' => [ + 'description' => 'The information about the Grafana dashboard.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the Grafana dashboard. Valid values:'."\n" + ."\n" + .'* `dash-db`: a dashboard'."\n" + .'* `dash-folder`: a folder that can include a dashboard'."\n", + 'type' => 'string', + 'example' => 'dash-db', + ], + 'Time' => [ + 'description' => 'The time when the Grafana dashboard was created. The value is a timestamp.'."\n", + 'type' => 'string', + 'example' => '1590136924', + ], + 'NeedUpdate' => [ + 'description' => 'Indicates whether the Grafana dashboard has a new version that is available for upgrade.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'Kind' => [ + 'description' => 'The category of the Grafana dashboard. Valid values: BASIC, THIRD, LIMIT, and CUSTOM.'."\n", + 'type' => 'string', + 'example' => 'BASIC', + ], + 'Language' => [ + 'description' => 'The language of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'Url' => [ + 'description' => 'The complete URL of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s', + ], + 'HttpsUrl' => [ + 'description' => 'The URL of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s', + ], + 'DashboardType' => [ + 'description' => 'The type of the Grafana dashboard. This parameter has the same effect as the Exporter parameter whereas provides clearer implication.'."\n", + 'type' => 'string', + 'example' => 'Node', + ], + 'Exporter' => [ + 'description' => 'The type of the exporter access source. Valid values:'."\n" + ."\n" + .'* Prometheus'."\n" + .'* Node'."\n" + .'* GPU'."\n" + .'* Redis'."\n" + .'* MySQL'."\n" + .'* Kafka'."\n" + .'* NGINX V2'."\n" + .'* Nginx'."\n" + .'* ZooKeeper'."\n" + .'* MongoDB'."\n" + .'* RabbitMQ'."\n" + .'* PostgreSQL'."\n" + .'* Kubernetes'."\n" + .'* Client Library'."\n" + .'* Elasticsearch'."\n" + .'* RocketMQ'."\n", + 'type' => 'string', + 'example' => 'Nginx', + ], + 'Version' => [ + 'description' => 'The version of the Grafana dashboard. The combination of version and name uniquely identifies a dashboard.'."\n", + 'type' => 'string', + 'example' => 'v2', + ], + 'IsArmsExporter' => [ + 'description' => 'Indicates whether the exporter is provided by ARMS.'."\n" + ."\n" + .'* `true:` The exporter is provided by ARMS.'."\n" + .'* `false:`: The exporter is not provided by ARMS.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'HttpUrl' => [ + 'description' => 'The URL of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s', + ], + 'Title' => [ + 'description' => 'The title of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => 'ApiServer', + ], + 'Name' => [ + 'description' => 'The name of the Grafana dashboard. This parameter is different from the **Title** parameter as this parameter cannot be changed.'."\n", + 'type' => 'string', + 'example' => 'k8s-node-overview', + ], + 'Id' => [ + 'description' => 'The ID of the Grafana dashboard. The value is unique only when you install the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => '1100**', + ], + 'Uid' => [ + 'description' => 'The unique identifier of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => '1131971649496228-*****-59', + ], + 'Tags' => [ + 'description' => 'The tags of the Grafana dashboard.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags of the Grafana dashboard.'."\n", + 'type' => 'string', + 'example' => '["arms-k8s","ccc8ce1fe0c9543629e39ee657e34****"]', + ], + ], + ], + ], + ], + ], + ], + 'PrometheusServiceOpened' => [ + 'description' => 'Whether or not to turn on Prometheus service.', + 'type' => 'string', + 'example' => 'true', + ], + 'EnvironmentId' => [ + 'description' => 'The ID of the environment instance.'."\n", + 'type' => 'string', + 'example' => 'env-ebd54733482581fc8c4237******', + ], + 'GrafanaServiceOpened' => [ + 'description' => 'Indicates whether Managed Service for Grafana is activated.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2A0CEDF1-06FE-44AC-8E21-21A5BE65****\\",\\n \\"DashboardVos\\": [\\n {\\n \\"Type\\": \\"dash-db\\",\\n \\"Time\\": \\"1590136924\\",\\n \\"NeedUpdate\\": false,\\n \\"Kind\\": \\"BASIC\\",\\n \\"Language\\": \\"en\\",\\n \\"Url\\": \\"http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s\\",\\n \\"HttpsUrl\\": \\"http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s\\",\\n \\"DashboardType\\": \\"Node\\",\\n \\"Exporter\\": \\"Nginx\\",\\n \\"Version\\": \\"v2\\",\\n \\"IsArmsExporter\\": false,\\n \\"HttpUrl\\": \\"http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s\\",\\n \\"Title\\": \\"ApiServer\\",\\n \\"Name\\": \\"k8s-node-overview\\",\\n \\"Id\\": \\"1100**\\",\\n \\"Uid\\": \\"1131971649496228-*****-59\\",\\n \\"Tags\\": [\\n \\"[\\\\\\"arms-k8s\\\\\\",\\\\\\"ccc8ce1fe0c9543629e39ee657e34****\\\\\\"]\\"\\n ],\\n \\"I18nChild\\": {\\n \\"Type\\": \\"dash-db\\",\\n \\"Time\\": \\"1590136924\\",\\n \\"NeedUpdate\\": false,\\n \\"Kind\\": \\"BASIC\\",\\n \\"Language\\": \\"zh\\",\\n \\"Url\\": \\"http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s\\",\\n \\"HttpsUrl\\": \\"http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s\\",\\n \\"DashboardType\\": \\"Node\\",\\n \\"Exporter\\": \\"Nginx\\",\\n \\"Version\\": \\"v2\\",\\n \\"IsArmsExporter\\": false,\\n \\"HttpUrl\\": \\"http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s\\",\\n \\"Title\\": \\"ApiServer\\",\\n \\"Name\\": \\"k8s-node-overview\\",\\n \\"Id\\": \\"1100**\\",\\n \\"Uid\\": \\"1131971649496228-*****-59\\",\\n \\"Tags\\": [\\n \\"[\\\\\\"arms-k8s\\\\\\",\\\\\\"ccc8ce1fe0c9543629e39ee657e34****\\\\\\"]\\"\\n ]\\n }\\n }\\n ],\\n \\"PrometheusServiceOpened\\": \\"true\\",\\n \\"EnvironmentId\\": \\"env-ebd54733482581fc8c4237******\\",\\n \\"GrafanaServiceOpened\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<ListDashboardsResponse>\\n <RequestId>2A0CEDF1-06FE-44AC-8E21-21A5BE65****</RequestId>\\n <DashboardVos>\\n <Type>dash-db</Type>\\n <Time>1590136924</Time>\\n <NeedUpdate>false</NeedUpdate>\\n <Kind>BASIC</Kind>\\n <Url>http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s</Url>\\n <HttpsUrl>http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s</HttpsUrl>\\n <DashboardType>Node</DashboardType>\\n <Exporter>Nginx</Exporter>\\n <Version>v2</Version>\\n <IsArmsExporter>false</IsArmsExporter>\\n <HttpUrl>http://g.console.aliyun.com/d/1131971649496228-*****-59/ApiServer?orgId=3**&refresh=60s</HttpUrl>\\n <Title>ApiServer</Title>\\n <Name>k8s-node-overview</Name>\\n <Id>1100**</Id>\\n <Uid>1131971649496228-*****-59</Uid>\\n <Tags>[\\"arms-k8s\\",\\"ccc8ce1fe0c9543629e39ee657e34****\\"]</Tags>\\n </DashboardVos>\\n</ListDashboardsResponse>","errorExample":""}]', + 'title' => 'ListDashboards', + 'description' => 'None.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ListClusterFromGrafana' => [ + 'summary' => 'Queries all Grafana dashboards in a specified region.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '6849D41E-EED4-5C00-89F9-6047BBD9DCB4', + ], + 'PromClusterList' => [ + 'description' => 'The cluster information.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the Grafana dashboards.'."\n", + 'type' => 'object', + 'properties' => [ + 'UpdateTime' => [ + 'description' => 'The time when the dashboard was updated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2021-11-16T08:49:34Z', + ], + 'CreateTime' => [ + 'description' => 'The time when the dashboard was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2021-12-09T02:05:04Z', + ], + 'UserId' => [ + 'description' => 'The ID of the Alibaba Cloud account to which the cluster belongs.'."\n", + 'type' => 'string', + 'example' => '1247285**', + ], + 'Options' => [ + 'description' => 'The custom parameter.'."\n", + 'type' => 'string', + 'example' => '{\'Option\': [\'betaTestApproved\']}', + ], + 'IsControllerInstalled' => [ + 'description' => 'Indicates whether the Prometheus agent was installed. Valid values:'."\n" + ."\n" + .'* true: The Prometheus agent was installed.'."\n" + .'* false: The Prometheus agent was not installed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'AgentStatus' => [ + 'description' => 'The status of the Prometheus agent on the cluster. Valid values:'."\n" + ."\n" + .'* INSTALL_FAILED: The Prometheus agent failed to be installed.'."\n" + .'* INSTALL_SUCCEED: The Prometheus agent was installed.'."\n" + .'* NOT_REGISTER: You have not registered an Alibaba Cloud account.'."\n", + 'type' => 'string', + 'example' => 'INSTALL_FAILED', + ], + 'Extra' => [ + 'description' => 'The extended fields. This parameter is a JSON string.'."\n", + 'type' => 'string', + 'example' => '{\\"app_id\\":\\"bbd\\",\\"task_id\\":\\"4305ba5bf14942daa6e553ed91f46988\\"}', + ], + 'InstallTime' => [ + 'description' => 'The timestamp when the Prometheus agent was installed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1653532518000', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'ControllerId' => [ + 'description' => 'The controller ID.'."\n", + 'type' => 'string', + 'example' => '1092', + ], + 'PluginsJsonArray' => [ + 'description' => 'The list of nodejsonar logs.'."\n", + 'type' => 'string', + 'example' => '{}', + ], + 'ClusterType' => [ + 'description' => 'The type of the cluster.'."\n", + 'type' => 'string', + 'example' => 'cloud-product-prometheus', + ], + 'ClusterName' => [ + 'description' => 'The name of the cluster.'."\n", + 'type' => 'string', + 'example' => 'ay-ads-hangzhou', + ], + 'StateJson' => [ + 'description' => 'The information about applications deployed in the cluster.'."\n", + 'type' => 'string', + 'example' => '{}', + ], + 'LastHeartBeatTime' => [ + 'description' => 'The time when the last heartbeat was reported.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1653532518000', + ], + 'NodeNum' => [ + 'description' => 'The number of nodes.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + 'Id' => [ + 'description' => 'The ID of a database in the cluster.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '16136', + ], + 'ClusterId' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'example' => 'c0df7ad9db0ed43128925ca04774c469e', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '暂无替代API,请关注后续API最新发布。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"6849D41E-EED4-5C00-89F9-6047BBD9DCB4\\",\\n \\"PromClusterList\\": [\\n {\\n \\"UpdateTime\\": 0,\\n \\"CreateTime\\": 0,\\n \\"UserId\\": \\"1247285**\\",\\n \\"Options\\": \\"{\'Option\': [\'betaTestApproved\']}\\",\\n \\"IsControllerInstalled\\": true,\\n \\"AgentStatus\\": \\"INSTALL_FAILED\\",\\n \\"Extra\\": \\"{\\\\\\\\\\\\\\"app_id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"bbd\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"task_id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"4305ba5bf14942daa6e553ed91f46988\\\\\\\\\\\\\\"}\\",\\n \\"InstallTime\\": 1653532518000,\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"ControllerId\\": \\"1092\\",\\n \\"PluginsJsonArray\\": \\"{}\\",\\n \\"ClusterType\\": \\"cloud-product-prometheus\\",\\n \\"ClusterName\\": \\"ay-ads-hangzhou\\",\\n \\"StateJson\\": \\"{}\\",\\n \\"LastHeartBeatTime\\": 1653532518000,\\n \\"NodeNum\\": 3,\\n \\"Id\\": 16136,\\n \\"ClusterId\\": \\"c0df7ad9db0ed43128925ca04774c469e\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListClusterFromGrafanaResponse>\\n <RequestId>6849D41E-EED4-5C00-89F9-6047BBD9DCB4</RequestId>\\n <PromClusterList>\\n <UserId>1247285**</UserId>\\n <Options>{\'Option\': [\'betaTestApproved\']}</Options>\\n <IsControllerInstalled>true</IsControllerInstalled>\\n <AgentStatus>INSTALL_FAILED</AgentStatus>\\n <Extra>{\\\\\\"app_id\\\\\\":\\\\\\"bbd\\\\\\",\\\\\\"task_id\\\\\\":\\\\\\"4305ba5bf14942daa6e553ed91f46988\\\\\\"}</Extra>\\n <InstallTime>1653532518000</InstallTime>\\n <RegionId>cn-beijing</RegionId>\\n <ControllerId>1092</ControllerId>\\n <PluginsJsonArray>{}</PluginsJsonArray>\\n <ClusterType>cloud-product-prometheus</ClusterType>\\n <ClusterName>ay-ads-hangzhou</ClusterName>\\n <StateJson>{}</StateJson>\\n <LastHeartBeatTime>1653532518000</LastHeartBeatTime>\\n <NodeNum>3</NodeNum>\\n <Id>16136</Id>\\n <ClusterId>c0df7ad9db0ed43128925ca04774c469e</ClusterId>\\n </PromClusterList>\\n</ListClusterFromGrafanaResponse>","errorExample":""}]', + 'title' => 'ListClusterFromGrafana', + ], + 'GetRecordingRule' => [ + 'summary' => 'Obtains the recording rule of a cluster.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9FEA6D00-317F-45E3-9004-7FB8B0B7****', + ], + 'Data' => [ + 'description' => 'The recording rule.'."\n", + 'type' => 'string', + 'example' => '--- groups: - name: "recording_demo" rules: - expr: "sum(jvm_memory_max_bytes)" record: "rate_coredns_demo"', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates a successful request, whereas others indicate a failed request.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '暂无替代API,请关注后续API最新发布。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9FEA6D00-317F-45E3-9004-7FB8B0B7****\\",\\n \\"Data\\": \\"--- groups: - name: \\\\\\"recording_demo\\\\\\" rules: - expr: \\\\\\"sum(jvm_memory_max_bytes)\\\\\\" record: \\\\\\"rate_coredns_demo\\\\\\"\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<GetRecordingRuleResponse>\\n <RequestId>9FEA6D00-317F-45E3-9004-7FB8B0B7****</RequestId>\\n <Data>--- groups: - name: \\"recording_demo\\" rules: - expr: \\"sum(jvm_memory_max_bytes)\\" record: \\"rate_coredns_demo\\"</Data>\\n</GetRecordingRuleResponse>","errorExample":""}]', + 'title' => 'GetRecordingRule', + ], + 'ListCmsInstances' => [ + 'summary' => 'Queries the collection of cloud services.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'n9p9o9o3se', + ], + ], + [ + 'name' => 'TypeFilter', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the cloud service integration. Valid values:'."\n" + ."\n" + .'* direct: self-monitoring'."\n" + .'* cms: Hybrid Cloud Monitoring'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'direct', + 'enum' => [ + 'cms', + 'direct', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => 'E7A04B0D-E2CA-59BB-8A9D-D5D349C22BF1', + ], + 'Data' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'EnableTag' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Products' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Descr' => [ + 'description' => '', + 'type' => 'string', + 'example' => '-'."\n", + ], + 'Instance' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'cloudserver', + ], + 'Prod' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'face', + ], + 'Name' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'hologres', + ], + 'Id' => [ + 'description' => '', + 'type' => 'string', + 'example' => '20210', + ], + 'State' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Time' => [ + 'description' => '', + 'type' => 'string', + 'example' => '1647852021000', + ], + 'Type' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'HOLOGRES', + ], + 'Url' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'https://g.console.aliyun.com/d/1098370038733503-35894-565/cms-hologres?orgId\\u003d9\\u0026refresh\\u003d60s', + ], + 'Source' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'arms', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E7A04B0D-E2CA-59BB-8A9D-D5D349C22BF1\\",\\n \\"Data\\": {\\n \\"EnableTag\\": true,\\n \\"Products\\": [\\n {\\n \\"Descr\\": \\"-\\\\n\\",\\n \\"Instance\\": \\"cloudserver\\",\\n \\"Prod\\": \\"face\\",\\n \\"Name\\": \\"hologres\\",\\n \\"Id\\": \\"20210\\",\\n \\"State\\": \\"true\\",\\n \\"Time\\": \\"1647852021000\\",\\n \\"Type\\": \\"HOLOGRES\\",\\n \\"Url\\": \\"https://g.console.aliyun.com/d/1098370038733503-35894-565/cms-hologres?orgId\\\\\\\\u003d9\\\\\\\\u0026refresh\\\\\\\\u003d60s\\",\\n \\"Source\\": \\"arms\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListCmsInstances', + ], + 'ListDashboardsByName' => [ + 'summary' => 'Uses Loki data sources and other data sources to create a Grafana dashboard in Managed Service for Prometheus.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the cluster. If the ClusterType parameter is not set to `cloud-product-prometheus` or `cms-enterprise-prometheus`, you must specify the ClusterId parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'DataSourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'* loki'."\n" + .'* prometheus'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'loki', + ], + ], + [ + 'name' => 'ClusterType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster type. Valid values:'."\n" + ."\n" + .'* vpc-prometheus'."\n" + .'* cloud-product-prometheus'."\n" + .'* cms-enterprise-prometheus'."\n" + .'* ExternalKubernetes'."\n" + .'* Ask'."\n" + .'* Kubernetes'."\n" + .'* ManagedKubernetes'."\n" + .'* remote-write-prometheus'."\n" + .'* GlobalViewV2'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cloud-product-prometheus', + ], + ], + [ + 'name' => 'ProductCode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The abbreviation of the Alibaba Cloud service name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'edas', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the dashboard group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'EDAS', + ], + ], + [ + 'name' => 'DashBoardName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the dashboard.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'edas-ingress-url', + ], + ], + [ + 'name' => 'DashBoardVersion', + 'in' => 'query', + 'schema' => [ + 'description' => 'The version of the dashboard.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'latest', + ], + ], + [ + 'name' => 'OnlyQuery', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to display the Grafana dashboard only in the Application Real-Time Monitoring Service (ARMS) console.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'string', + 'example' => '[{"name":"Edas Ingress Url Analysis","type":"edas-ingress-url-analysis","url":"https://g.console.aliyun.com/d/1036052989950239-11040375-66-3/edas-ingress-url-analysis?var-clusterId=29ksa&var-regionId=cn-hangzhou"}]', + ], + 'RequestId' => [ + 'description' => 'The ID of the request, You can use the ID to locate logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => '2983BEF7-4A0D-47A2-94A2-8E9C5E63****', + ], + 'Code' => [ + 'description' => 'The status code. The HTTP 200 status code indicates a successful request, while others indicate error conditions.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '暂无替代API,请关注后续API最新发布。', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"[{\\\\\\"name\\\\\\":\\\\\\"Edas Ingress Url Analysis\\\\\\",\\\\\\"type\\\\\\":\\\\\\"edas-ingress-url-analysis\\\\\\",\\\\\\"url\\\\\\":\\\\\\"https://g.console.aliyun.com/d/1036052989950239-11040375-66-3/edas-ingress-url-analysis?var-clusterId=29ksa&var-regionId=cn-hangzhou\\\\\\"}]\\",\\n \\"RequestId\\": \\"2983BEF7-4A0D-47A2-94A2-8E9C5E63****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<ListDashboardsByNameResponse>\\n <Data>[{\\"name\\":\\"Edas Ingress Url Analysis\\",\\"type\\":\\"edas-ingress-url-analysis\\",\\"url\\":\\"https://g.console.aliyun.com/d/1036052989950239-11040375-66-3/edas-ingress-url-analysis?var-clusterId=29ksa&var-regionId=cn-hangzhou\\"}]</Data>\\n <RequestId>2983BEF7-4A0D-47A2-94A2-8E9C5E63****</RequestId>\\n</ListDashboardsByNameResponse>","errorExample":""}]', + 'title' => 'ListDashboardsByName', + ], + 'GetAuthToken' => [ + 'summary' => 'Obtains an authentication token. When you connect a Container Service for Kubernetes (ACK) cluster to Prometheus Service over the Internet, you must use a token for authentication.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ACK cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The returned authentication token.'."\n", + 'type' => 'string', + 'example' => 'eyJhbGciOiJIUzI1NiJ9******', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Code' => [ + 'description' => 'Status code. 200 means success, other status codes are exceptions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'Additional Information.', + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Whether the query was successful:'."\n" + .'- true: Success'."\n" + .'- false: Failure', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"eyJhbGciOiJIUzI1NiJ9******\\",\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetAuthTokenResponse>\\n <Data>success</Data>\\n <RequestId>1A9C645C-C83F-4C9D-8CCB-29BEC9E1****</RequestId>\\n</GetAuthTokenResponse>","errorExample":""}]', + 'title' => 'GetAuthToken', + ], + 'GetClusterAllUrl' => [ + 'summary' => 'Obtains all the URLs of a cluster, including remote read and write URLs, Pushgateway URLs, and Grafana URLs.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The response parameters in the JSON format.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "RequestId": "41877338-646B-5DD6-BFBE-F89F1E7245AD",'."\n" + .' "Data": "{\\"clusterType\\":\\"ManagedKubernetes\\",\\"remoteWriteUrl\\":\\"http:/" }', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '40B10E04-81E8-4643-970D-F1B38F2E****', + ], + 'Code' => [ + 'description' => 'Status code. 200 means success, other status codes are exceptions.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The prompt information of the returned result.', + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Whether the query is successful:'."\n" + .'- true: success'."\n" + .'- false: failure', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'ARMS::2019-08-08::GetPrometheusInstance', + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"{\\\\n \\\\\\"RequestId\\\\\\": \\\\\\"41877338-646B-5DD6-BFBE-F89F1E7245AD\\\\\\",\\\\n \\\\\\"Data\\\\\\": \\\\\\"{\\\\\\\\\\\\\\"clusterType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"ManagedKubernetes\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"remoteWriteUrl\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"http:/\\\\\\" }\\",\\n \\"RequestId\\": \\"40B10E04-81E8-4643-970D-F1B38F2E****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetClusterAllUrl', + ], + 'GetCloudClusterAllUrl' => [ + 'summary' => 'Queries the read and write URLs of a CloudMonitor instance, such as Pushgateway and Grafana URLs.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the CloudMonitor instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ca9676014babd4', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '99A663CB-8D7B-4B0D-A006-03C8EE38E7BB', + ], + 'Data' => [ + 'description' => 'An array object.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried global aggregation instances. The value is a JSON string.'."\n", + 'type' => 'object', + 'properties' => [ + 'ProductCode' => [ + 'description' => 'The identifier of the cloud service.'."\n", + 'type' => 'string', + 'example' => 'amp', + ], + 'Region' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'RemoteUrl' => [ + 'description' => 'The URLs for remote read and write. The value is a JSON string.'."\n", + 'type' => 'object', + 'properties' => [ + 'RemoteWriteUrl' => [ + 'description' => 'The internal URL for remote write.'."\n", + 'type' => 'string', + 'example' => '"http://cn-hangzhou-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX"'."\n", + ], + 'InternetRemoteWriteUrl' => [ + 'description' => 'The public URL for remote write.'."\n", + 'type' => 'string', + 'example' => '"http://cn-hangzhou.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX"'."\n", + ], + 'RemoteReadUrl' => [ + 'description' => 'The internal URL for remote read.'."\n", + 'type' => 'string', + 'example' => '"http://cn-hangzhou-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX"'."\n", + ], + 'InternetRemoteReadUrl' => [ + 'description' => 'The public URL for remote read.'."\n", + 'type' => 'string', + 'example' => '"http://cn-hangzhou.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX"', + ], + 'GrafanaUrl' => [ + 'description' => 'The internal URL for Grafana.'."\n", + 'type' => 'string', + 'example' => '"http://cn-hangzhou-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX"'."\n", + ], + 'InternetGrafanaUrl' => [ + 'description' => 'The public URL for Grafana.'."\n", + 'type' => 'string', + 'example' => '"http://cn-hangzhou.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX"'."\n", + ], + 'InternetPushGatewayUrl' => [ + 'description' => 'The public URL for Pushgateway.'."\n", + 'type' => 'string', + 'example' => '"http://cn-hangzhou.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX"'."\n", + ], + 'PushGatewayUrl' => [ + 'description' => 'The internal URL for Pushgateway.'."\n", + 'type' => 'string', + 'example' => '"http://cn-hangzhou-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX"'."\n", + ], + 'AuthToken' => [ + 'description' => 'Indicates whether authentication is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Token' => [ + 'description' => 'The token value used for authentication.'."\n", + 'type' => 'string', + 'example' => '"eyJhbGciOiJIUzI1NiJ9.DKEIFJSL.KYK6uOtNVxTVHXJbH5MNqlsAuUtKzNlUvmAIiKc-QXw"', + ], + ], + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'ARMS::2019-08-08::GetRemoteWriteUrl', + ], + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"99A663CB-8D7B-4B0D-A006-03C8EE38E7BB\\",\\n \\"Data\\": [\\n {\\n \\"ProductCode\\": \\"amp\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"RemoteUrl\\": {\\n \\"RemoteWriteUrl\\": \\"\\\\\\"http://cn-hangzhou-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX\\\\\\"\\\\n\\",\\n \\"InternetRemoteWriteUrl\\": \\"\\\\\\"http://cn-hangzhou.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX\\\\\\"\\\\n\\",\\n \\"RemoteReadUrl\\": \\"\\\\\\"http://cn-hangzhou-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX\\\\\\"\\\\n\\",\\n \\"InternetRemoteReadUrl\\": \\"\\\\\\"http://cn-hangzhou.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX\\\\\\"\\",\\n \\"GrafanaUrl\\": \\"\\\\\\"http://cn-hangzhou-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX\\\\\\"\\\\n\\",\\n \\"InternetGrafanaUrl\\": \\"\\\\\\"http://cn-hangzhou.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX\\\\\\"\\\\n\\",\\n \\"InternetPushGatewayUrl\\": \\"\\\\\\"http://cn-hangzhou.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX\\\\\\"\\\\n\\",\\n \\"PushGatewayUrl\\": \\"\\\\\\"http://cn-hangzhou-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/XXXXXXXXXXXXXXXXX\\\\\\"\\\\n\\",\\n \\"AuthToken\\": true,\\n \\"Token\\": \\"\\\\\\"eyJhbGciOiJIUzI1NiJ9.DKEIFJSL.KYK6uOtNVxTVHXJbH5MNqlsAuUtKzNlUvmAIiKc-QXw\\\\\\"\\"\\n }\\n }\\n ],\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetCloudClusterAllUrl', + ], + 'ListPrometheusInstances' => [ + 'summary' => 'Obtains all Prometheus instances in a region.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterType', + 'in' => 'query', + 'schema' => [ + 'title' => '实例类型。', + 'description' => 'The cluster type. If you do not specify this parameter, all cluster types are queried. Valid values:'."\n" + ."\n" + .'* cloud-product-prometheus: Prometheus instance for cloud services'."\n" + .'* ManagedKubernetes: ACK managed cluster'."\n" + .'* satellite: Prometheus instance for ARMS OpenTelemetry'."\n" + .'* Ask: ACK Serverless cluster'."\n" + .'* remote-write-prometheus: general-purpose Prometheus instance'."\n" + .'* cloud-monitor-cmee: Hybrid Cloud Monitoring'."\n" + .'* ExternalKubernetes: external Kubernetes cluster registered in ACK'."\n" + .'* vpc-prometheus: Prometheus instance for ECS'."\n" + .'* cloud-monitor-direct: cloud service self-monitoring'."\n" + .'* Edge Kubernetes: ACK Edge cluster'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'enumValueTitles' => [], + 'example' => 'cloud-product-prometheus', + ], + ], + [ + 'name' => 'ShowGlobalView', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to obtain global aggregation instances. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => true, + 'docRequired' => true, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The information about the array object.'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The Prometheus instances in the region in the JSON format.'."\n", + 'type' => 'string', + 'example' => '[{"agentStatus":"0","clusterId":"global-v2-cn-1672753017899-dmjnwtzz","clusterName":"test-GlobalView","clusterType":"GlobalViewV2","commercialConfig":{},"createTime":1656579981000,"id":13785300,"isAdvancedClusterInstalled":false,"isClusterRunning":true,"isControllerInstalled":true,"isIntegrationCenter":false,"regionId":"cn-hongkong","updateTime":1657616273000,"userId":"1672753017899"},{"agentStatus":"0","clusterId":"51a123a61a8f31f0","clusterName":"cloud-product-prometheus_cn-qingdao","clusterType":"cloud-product-prometheus","commercialConfig":{},"controllerId":"51a123a61a8f31f0","createTime":1653532488000,"id":13746658,"isAdvancedClusterInstalled":false,"isClusterRunning":true,"isControllerInstalled":true,"isIntegrationCenter":false,"regionId":"cn-qingdao","updateTime":1653532518000,"userId":"1672753017899"}]', + ], + 'RequestId' => [ + 'description' => 'The request ID. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => 'E9C9DA3D-10FE-472E-9EEF-2D0A3E41****', + ], + 'Code' => [ + 'description' => 'The status code.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.', + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"[{\\\\\\"agentStatus\\\\\\":\\\\\\"0\\\\\\",\\\\\\"clusterId\\\\\\":\\\\\\"global-v2-cn-1672753017899-dmjnwtzz\\\\\\",\\\\\\"clusterName\\\\\\":\\\\\\"test-GlobalView\\\\\\",\\\\\\"clusterType\\\\\\":\\\\\\"GlobalViewV2\\\\\\",\\\\\\"commercialConfig\\\\\\":{},\\\\\\"createTime\\\\\\":1656579981000,\\\\\\"id\\\\\\":13785300,\\\\\\"isAdvancedClusterInstalled\\\\\\":false,\\\\\\"isClusterRunning\\\\\\":true,\\\\\\"isControllerInstalled\\\\\\":true,\\\\\\"isIntegrationCenter\\\\\\":false,\\\\\\"regionId\\\\\\":\\\\\\"cn-hongkong\\\\\\",\\\\\\"updateTime\\\\\\":1657616273000,\\\\\\"userId\\\\\\":\\\\\\"1672753017899\\\\\\"},{\\\\\\"agentStatus\\\\\\":\\\\\\"0\\\\\\",\\\\\\"clusterId\\\\\\":\\\\\\"51a123a61a8f31f0\\\\\\",\\\\\\"clusterName\\\\\\":\\\\\\"cloud-product-prometheus_cn-qingdao\\\\\\",\\\\\\"clusterType\\\\\\":\\\\\\"cloud-product-prometheus\\\\\\",\\\\\\"commercialConfig\\\\\\":{},\\\\\\"controllerId\\\\\\":\\\\\\"51a123a61a8f31f0\\\\\\",\\\\\\"createTime\\\\\\":1653532488000,\\\\\\"id\\\\\\":13746658,\\\\\\"isAdvancedClusterInstalled\\\\\\":false,\\\\\\"isClusterRunning\\\\\\":true,\\\\\\"isControllerInstalled\\\\\\":true,\\\\\\"isIntegrationCenter\\\\\\":false,\\\\\\"regionId\\\\\\":\\\\\\"cn-qingdao\\\\\\",\\\\\\"updateTime\\\\\\":1653532518000,\\\\\\"userId\\\\\\":\\\\\\"1672753017899\\\\\\"}]\\",\\n \\"RequestId\\": \\"E9C9DA3D-10FE-472E-9EEF-2D0A3E41****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<ListPrometheusInstancesResponse>\\n <Data>[{\\"agentStatus\\":\\"0\\",\\"clusterId\\":\\"global-v2-cn-1672753017899-dmjnwtzz\\",\\"clusterName\\":\\"test-GlobalView\\",\\"clusterType\\":\\"GlobalViewV2\\",\\"commercialConfig\\":{},\\"createTime\\":1656579981000,\\"id\\":13785300,\\"isAdvancedClusterInstalled\\":false,\\"isClusterRunning\\":true,\\"isControllerInstalled\\":true,\\"isIntegrationCenter\\":false,\\"regionId\\":\\"cn-hongkong\\",\\"updateTime\\":1657616273000,\\"userId\\":\\"1672753017899\\"},{\\"agentStatus\\":\\"0\\",\\"clusterId\\":\\"51a123a61a8f31f0\\",\\"clusterName\\":\\"cloud-product-prometheus_cn-qingdao\\",\\"clusterType\\":\\"cloud-product-prometheus\\",\\"commercialConfig\\":{},\\"controllerId\\":\\"51a123a61a8f31f0\\",\\"createTime\\":1653532488000,\\"id\\":13746658,\\"isAdvancedClusterInstalled\\":false,\\"isClusterRunning\\":true,\\"isControllerInstalled\\":true,\\"isIntegrationCenter\\":false,\\"regionId\\":\\"cn-qingdao\\",\\"updateTime\\":1653532518000,\\"userId\\":\\"1672753017899\\"}]</Data>\\n <RequestId>E9C9DA3D-10FE-472E-9EEF-2D0A3E41****</RequestId>\\n</ListPrometheusInstancesResponse>","errorExample":""}]', + 'title' => 'ListPrometheusInstances', + ], + 'InstallManagedPrometheus' => [ + 'summary' => 'Installs a Prometheus agent for serverless Kubernetes (ASK) clusters or Elastic Compute Service (ECS) clusters.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '118951', + 'abilityTreeNodes' => [ + 'FEATUREarmsC7S24K', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'title' => 'ClusterType为ask时,必填', + 'description' => 'The ID of the ASK cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus实例的资源组id', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'ClusterName', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '仅ClusterType为“ecs”时生效:ecs实例的名称', + 'description' => 'The name of the cluster. This parameter is required if the ClusterType parameter is set to ecs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'prd-ecs', + ], + ], + [ + 'name' => 'ClusterType', + 'in' => 'query', + 'schema' => [ + 'title' => '可选值:ask、ecs、one、acs、pro、flink', + 'description' => 'The cluster type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* ecs: ECS'."\n" + .'* one: ACK One'."\n" + .'* ask: ASK'."\n" + .'* pro: Container Monitoring Pro'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'enumValueTitles' => [ + 'ecs' => 'ecs', + 'one' => 'one', + 'ask' => 'ask', + 'pro' => '', + ], + 'example' => 'ask', + 'enum' => [ + 'ecs', + 'ask', + 'one', + 'acs', + 'pro', + 'flink', + ], + ], + ], + [ + 'name' => 'VpcId', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => 'The virtual private cloud (VPC) where the cluster resides.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'vpc-xxxxxx', + ], + ], + [ + 'name' => 'VSwitchId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the vSwitch that is used by the cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'vsw-bp1*********', + ], + ], + [ + 'name' => 'SecurityGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the security group to which the cluster belongs.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'sg-bp1********', + ], + ], + [ + 'name' => 'GrafanaInstanceId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '绑定托管版Grafana工作区Id。为空或“free”时,表示绑定到“共享版Grafana”。', + 'description' => 'The ID of the managed Grafana workspace that is associated with the cluster. If you set this parameter to free or leave this parameter empty, the cluster is associated with a shared Grafana workspace.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'grafana-bp1*****', + 'default' => 'free', + ], + ], + [ + 'name' => 'KubeConfig', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'This parameter is not supported.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '-', + 'default' => 'kubeConfig', + ], + ], + [ + 'name' => 'VcExtraInfo', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response object.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'String 2A0CEDF1-06FE-44AC-8E21-21A5BE65****', + ], + 'Data' => [ + 'description' => 'The response content. In most cases, the installation status of the Prometheus agent is returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the Prometheus agent was installed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The error message returned if the Prometheus agent failed to be installed.'."\n", + 'type' => 'string', + 'example' => 'vpcId is blank', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. If another status code is returned, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '暂无替代API,请关注后续API最新发布。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"String\\\\t2A0CEDF1-06FE-44AC-8E21-21A5BE65****\\",\\n \\"Data\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Message\\": \\"vpcId is blank\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'InstallManagedPrometheus', + 'description' => 'You can call this operation only if the following conditions are met: The resources that you want to monitor are ASK clusters or ECS clusters. No Prometheus agents are installed in the ASK or ECS clusters. Take note that Prometheus agents can be installed only on the cloud service side, not in user clusters.'."\n", + ], + 'UninstallManagedPrometheus' => [ + 'summary' => 'Uninstalls a managed Prometheus agent for a serverless Kubernetes (ASK) cluster, Distributed Cloud Container Platform for Kubernetes (ACK One) cluster, or Elastic Compute Service (ECS) cluster.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '119001', + 'abilityTreeNodes' => [ + 'FEATUREarmsC7S24K', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'title' => 'ClusterType为“ask”时,必填。', + 'description' => 'The ID of the Container Service for Kubernetes (ACK) cluster. This parameter is required when the ClusterType parameter is set to ask or one.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus实例的资源组id', + 'description' => 'The ID of the resource group to which the Prometheus instance belongs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'ClusterType', + 'in' => 'query', + 'schema' => [ + 'title' => '可选值:ask、ecs、one、acs、flink', + 'description' => 'The cluster type. Valid values: ask, ecs, and one.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'enumValueTitles' => [ + 'ecs' => 'ecs', + 'one' => 'one', + 'ask' => 'ask', + ], + 'example' => 'ask', + 'enum' => [ + 'ecs', + 'ask', + 'one', + 'acs', + 'flink', + ], + ], + ], + [ + 'name' => 'VpcId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'The ID of the virtual private cloud (VPC) where the cluster resides.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-rpn**********', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response object.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2A0CEDF1-06FE-44AC-8E21-21A5BE65****', + ], + 'Data' => [ + 'description' => 'The response content. The status of the Prometheus instance is returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the Prometheus instance was removed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The error message that is returned if the request fails.'."\n", + 'type' => 'string', + 'example' => 'vpcId is blank', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. If another status code is returned, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '暂无替代API,请关注后续API最新发布。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2A0CEDF1-06FE-44AC-8E21-21A5BE65****\\",\\n \\"Data\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Message\\": \\"vpcId is blank\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'UninstallManagedPrometheus', + 'description' => 'This operation is available only for ASK, ECS, and ACK One clusters. Before you call this operation, make sure that a managed Prometheus agent is installed for your cluster.'."\n", + ], + 'GetManagedPrometheusStatus' => [ + 'summary' => 'Queries the installation status of a Prometheus agent in a serverless Kubernetes (ASK) cluster or an Elastic Compute Service (ECS) cluster.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'title' => 'ClusterType为“ask”时,必填。', + 'description' => 'The cluster ID. This parameter is required if the ClusterType parameter is set to ask.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus实例的资源组id', + 'description' => 'The resource group id of the Prometheus instance.', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'ClusterType', + 'in' => 'query', + 'schema' => [ + 'title' => '可选值:ask、ecs、one、acs', + 'description' => 'The type of the cluster. Valid values: ask and ecs.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'acs' => 'acs', + 'ecs' => 'ecs', + 'one' => 'one', + 'ask' => 'ask', + ], + 'example' => 'ask', + ], + ], + [ + 'name' => 'VpcId', + 'in' => 'query', + 'schema' => [ + 'title' => 'ClusterType为“ecs”时,必填。', + 'description' => 'The ID of the virtual private cloud (VPC). This parameter is required if the ClusterType parameter is set to ecs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-***', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response format.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'F7781D4A-2818-41E7-B7BB-79D809E9****', + ], + 'Data' => [ + 'description' => 'The installation status of the Prometheus agent.'."\n" + ."\n" + .'* Installing: The Prometheus agent is installed and no registration information is available.'."\n" + .'* Succeed: The Prometheus agent is installed and registered.'."\n" + .'* Failure: The Prometheus agent failed to be installed or registered.'."\n" + .'* Unknown: The installation status of the Prometheus agent is unknown.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Unknown' => 'Unknown', + 'Installing' => 'Installing', + 'Failure' => 'Failure', + 'Succeed' => 'Succeed', + ], + 'example' => 'Installing', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful'."\n", + ], + 'Code' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '暂无替代API,请关注后续API最新发布。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F7781D4A-2818-41E7-B7BB-79D809E9****\\",\\n \\"Data\\": \\"Installing\\",\\n \\"Success\\": true,\\n \\"Message\\": \\"查询成功\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'GetManagedPrometheusStatus', + ], + 'BindPrometheusGrafanaInstance' => [ + 'summary' => 'Binds a Grafana workspace to a Prometheus instance.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus实例Id', + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus实例的资源组id', + 'description' => 'The ID of the resource group to which the Prometheus instance belongs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'GrafanaInstanceId', + 'in' => 'query', + 'schema' => [ + 'title' => 'grafana工作区id', + 'description' => 'The ID of the Grafana workspace.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'grafana-bp1*****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '27E653FA-5958-45BE-8AA9-14D884DC****', + ], + 'Data' => [ + 'title' => '操作是否成功', + 'description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. If another status code is returned, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"27E653FA-5958-45BE-8AA9-14D884DC****\\",\\n \\"Data\\": true,\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'BindPrometheusGrafanaInstance', + ], + 'AddPrometheusIntegration' => [ + 'summary' => 'Adds an exporter to a Prometheus instance for Container Service or a Prometheus instance for ECS.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance. Only a Prometheus instance for Container Service or a Prometheus instance for ECS is supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'IntegrationType', + 'in' => 'query', + 'schema' => [ + 'title' => 'Prometheus集成类型', + 'description' => 'The type of the integration.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'kafka, mysql, redis, snmp, emr, nubela, and tidb'."\n", + ], + ], + [ + 'name' => 'Param', + 'in' => 'query', + 'schema' => [ + 'title' => 'Prometheus集成配置参数json串', + 'description' => 'The configurations of the exporter. The value is a JSON string.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{"port":"5554","name":"kafka-test12","kafka_instance":"kafka-test","__label_value":"kafka-test","scrape_interval":33,"metrics_path":"/metrics","__label_key":"kafka-test"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '3703B98C-335E-5BA7-972E-F90E9E768A85', + ], + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The ID of the exporter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2829', + ], + 'InstanceName' => [ + 'title' => 'prometheus集成的实例名', + 'description' => 'The name of the exporter.'."\n", + 'type' => 'string', + 'example' => 'hw-cloud02', + ], + ], + ], + 'Code' => [ + 'description' => 'The status code or error code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3703B98C-335E-5BA7-972E-F90E9E768A85\\",\\n \\"Data\\": {\\n \\"InstanceId\\": 2829,\\n \\"InstanceName\\": \\"hw-cloud02\\"\\n },\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'AddPrometheusIntegration', + ], + 'UpdatePrometheusIntegration' => [ + 'summary' => 'Modifies the configurations of an exporter that is integrated into a Prometheus instance for Container Service or a Prometheus instance for ECS.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance. Only a Prometheus instance for Container Service or a Prometheus instance for ECS is supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'Param', + 'in' => 'query', + 'schema' => [ + 'title' => 'Prometheus集成配置参数json串', + 'description' => 'The configurations of the exporter. The value is a JSON string.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{'."\n" + .' "port": "5554",'."\n" + .' "name": "kafka-test12",'."\n" + .' "kafka_instance": "kafka-test",'."\n" + .' "__label_value": "kafka-test",'."\n" + .' "scrape_interval": 33,'."\n" + .' "metrics_path": "/metrics",'."\n" + .' "__label_key": "kafka-test"'."\n" + .'}', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The exporter ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2893', + ], + ], + [ + 'name' => 'IntegrationType', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus集成类型', + 'description' => 'The type of the integration.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'kafka, mysql, redis, snmp, emr, nubela, and tidb'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '2DB771C3-D1BB-5363-8A5F-ADB2AF2948DB', + ], + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The exporter ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2866', + ], + 'InstanceName' => [ + 'title' => 'prometheus集成的实例名', + 'description' => 'The exporter name.'."\n", + 'type' => 'string', + 'example' => 'inet', + ], + ], + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'Successful'."\n", + ], + 'Code' => [ + 'description' => 'The status code or error code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2DB771C3-D1BB-5363-8A5F-ADB2AF2948DB\\",\\n \\"Data\\": {\\n \\"InstanceId\\": 2866,\\n \\"InstanceName\\": \\"inet\\"\\n },\\n \\"Message\\": \\"查询成功\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'UpdatePrometheusIntegration', + ], + 'DeletePrometheusIntegration' => [ + 'summary' => 'Deletes an exporter from a Prometheus instance for Container Service or a Prometheus instance for ECS.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance. Only a Prometheus instance for Container Service or a Prometheus instance for ECS is supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'IntegrationType', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus集成类型,如kafka、mysql', + 'description' => 'The type of the integration.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'kafka and mysql.'."\n", + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the exporter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2875', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '19F54318-CC92-5567-BF66-CB029EC44C84', + ], + 'Data' => [ + 'title' => '”success“或失败信息。', + 'description' => 'success or an error message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. If another status code is returned, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"19F54318-CC92-5567-BF66-CB029EC44C84\\",\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'DeletePrometheusIntegration', + ], + 'GetPrometheusIntegration' => [ + 'summary' => 'Queries the information about an exporter that is integrated into a Prometheus instance for Container Service or a Prometheus instance for ECS.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance. Valid values: aliyun-cs and ecs.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'IntegrationType', + 'in' => 'query', + 'schema' => [ + 'title' => 'Prometheus集成类型', + 'description' => 'The integration type. Valid values: kafka, mysql, redis, snmp, emr, nubela, and tidb.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'kafka, mysql, redis, snmp, emr, nubela, and tidb'."\n", + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the exporter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2893', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response schema.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '9BEF2832-9D95-5E3E-9B10-74887CA17B94', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'ClusterId' => [ + 'title' => '', + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'c589a1b8db05c4561aefbb898ca8fb1cf', + ], + 'InstanceId' => [ + 'description' => 'The ID of the exporter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2893', + ], + 'ShowDescribe' => [ + 'description' => 'Indicates whether the description is displayed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'NeedUpgrade' => [ + 'description' => 'Indicates whether an upgrade is required.'."\n", + 'type' => 'boolean', + 'example' => 'True', + ], + 'InstanceName' => [ + 'description' => 'The name of the exporter.'."\n", + 'type' => 'string', + 'example' => 'lpd-skyeye', + ], + 'IntegrationType' => [ + 'title' => '集成类型', + 'description' => 'The integration type. Valid values: kafka, mysql, redis, snmp, emr, nubela, and tidb.'."\n", + 'type' => 'string', + 'example' => 'tidb', + ], + 'ExporterType' => [ + 'title' => '集成类型', + 'description' => 'The type of the exporter.'."\n", + 'type' => 'string', + 'example' => 'tidb-exporter', + ], + 'Version' => [ + 'description' => 'The version information.'."\n", + 'type' => 'string', + 'example' => '1.0.0', + ], + 'Target' => [ + 'description' => 'The monitored IP address.'."\n", + 'type' => 'string', + 'example' => '127.0.0.1:3422', + ], + 'CanDelete' => [ + 'description' => 'Indicates whether the exporter can be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'CanEditor' => [ + 'description' => 'Indicates whether the exporter can be modified.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Status' => [ + 'description' => 'The status of the exporter.'."\n", + 'type' => 'string', + 'example' => 'installed', + ], + 'Describe' => [ + 'description' => 'The description of the exporter.'."\n", + 'type' => 'string', + 'example' => '"{}"', + ], + 'ShowLog' => [ + 'description' => 'Indicates whether the exporter logs are displayed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + 'ContainerName' => [ + 'description' => 'The container name.'."\n", + 'type' => 'string', + 'example' => 'kafka-exporter-1', + ], + 'Param' => [ + 'title' => 'exporter配置参数json串', + 'description' => 'The parameters of the exporter. Format: JSON string.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "port": "5554",'."\n" + .' "name": "kafka-test12",'."\n" + .' "kafka_instance": "kafka-test",'."\n" + .' "__label_value": "kafka-test",'."\n" + .' "scrape_interval": 33,'."\n" + .' "metrics_path": "/metrics",'."\n" + .' "__label_key": "kafka-test"'."\n" + .'}', + ], + ], + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. If another status code is returned, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9BEF2832-9D95-5E3E-9B10-74887C******\\",\\n \\"Data\\": {\\n \\"ClusterId\\": \\"cc7a37ee31aea4ed1a059eff8034b****\\",\\n \\"InstanceId\\": 0,\\n \\"ShowDescribe\\": true,\\n \\"NeedUpgrade\\": true,\\n \\"InstanceName\\": \\"lpd-skyeye\\",\\n \\"IntegrationType\\": \\"tidb\\",\\n \\"ExporterType\\": \\"tidb-exporter\\",\\n \\"Version\\": \\"1.0.0\\",\\n \\"Target\\": \\"127.0.XX.XX:3422\\",\\n \\"CanDelete\\": true,\\n \\"CanEditor\\": true,\\n \\"Status\\": \\"installed\\",\\n \\"Describe\\": \\"\\\\\\"{}\\\\\\"\\",\\n \\"ShowLog\\": \\"true\\",\\n \\"Namespace\\": \\"arms-prom\\",\\n \\"ContainerName\\": \\"kafka-exporter-1\\",\\n \\"Param\\": \\"{\\\\n \\\\\\"port\\\\\\": \\\\\\"5554\\\\\\",\\\\n \\\\\\"name\\\\\\": \\\\\\"kafka-test12\\\\\\",\\\\n \\\\\\"kafka_instance\\\\\\": \\\\\\"kafka-test\\\\\\",\\\\n \\\\\\"__label_value\\\\\\": \\\\\\"kafka-test\\\\\\",\\\\n \\\\\\"scrape_interval\\\\\\": 33,\\\\n \\\\\\"metrics_path\\\\\\": \\\\\\"/metrics\\\\\\",\\\\n \\\\\\"__label_key\\\\\\": \\\\\\"kafka-test\\\\\\"\\\\n}\\"\\n },\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'GetPrometheusIntegration', + ], + 'ListPrometheusIntegration' => [ + 'summary' => 'Queries a list of exporters that are integrated into a Prometheus instance. Only aliyun-cs and ecs instances are supported.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance. Only aliyun-cs and ecs instances are supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'c77f6f2397ea74672872acf5e31374a27', + ], + ], + [ + 'name' => 'IntegrationType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The integration type. Valid values: kafka, mysql, redis, snmp, emr, nubela, and tidb.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'kafka, mysql, redis, snmp, emr, nubela, and tidb'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1F1D8840-5330-5804-A8DB-C3C5C5CED6BB', + ], + 'Data' => [ + 'description' => 'The queried exporters.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'ClusterId' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'c589a1b8db05c4561aefbb898ca8fb1cf', + ], + 'ShowDescribe' => [ + 'description' => 'Indicates whether the description is displayed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'NeedUpgrade' => [ + 'description' => 'Indicates whether an upgrade is required.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'InstanceName' => [ + 'description' => 'The name of the exporter.'."\n", + 'type' => 'string', + 'example' => 'inet', + ], + 'ExporterType' => [ + 'description' => 'The type of the exporter.'."\n", + 'type' => 'string', + 'example' => 'kafka-exporter', + ], + 'IntegrationType' => [ + 'description' => 'The integration type. Valid values: kafka, mysql, redis, snmp, emr, nubela, and tidb.'."\n", + 'type' => 'string', + 'example' => 'Kafka, mysql, redis, snmp, emr, nubela, and tidb'."\n", + ], + 'InstanceId' => [ + 'description' => 'The ID of the exporter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '29374', + ], + 'Version' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => '1.0.0', + ], + 'Target' => [ + 'description' => 'The monitored IP address.'."\n", + 'type' => 'string', + 'example' => '121.40.62.240:3342', + ], + 'CanDelete' => [ + 'description' => 'Indicates whether the exporter can be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'CanEditor' => [ + 'description' => 'Indicates whether the exporter can be edited.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Status' => [ + 'description' => 'The status of the exporter.'."\n", + 'type' => 'string', + 'example' => 'installed', + ], + 'ContainerName' => [ + 'description' => 'The name of the container.'."\n", + 'type' => 'string', + 'example' => 'container-1', + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + 'PodName' => [ + 'description' => 'The pod name of the exporter.'."\n", + 'type' => 'string', + 'example' => 'kafka-exporter-1', + ], + 'Describe' => [ + 'description' => 'The description of the exporter.'."\n", + 'type' => 'string', + 'example' => '"{}"', + ], + 'ShowLog' => [ + 'description' => 'Indicates whether the exporter logs are displayed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Param' => [ + 'title' => 'exporter配置参数json串', + 'description' => 'The configurations of the exporter. The value is a JSON string.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "port": "5554",'."\n" + .' "name": "kafka-test12",'."\n" + .' "kafka_instance": "kafka-test",'."\n" + .' "__label_value": "kafka-test",'."\n" + .' "scrape_interval": 33,'."\n" + .' "metrics_path": "/metrics",'."\n" + .' "__label_key": "kafka-test"'."\n" + .'}', + ], + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1F1D8840-5330-5804-A8DB-C3C5C5******\\",\\n \\"Data\\": [\\n {\\n \\"ClusterId\\": \\"c77f6f2397ea74672872acf5e31******\\",\\n \\"ShowDescribe\\": true,\\n \\"NeedUpgrade\\": true,\\n \\"InstanceName\\": \\"inet\\",\\n \\"ExporterType\\": \\"kafka-exporter\\",\\n \\"IntegrationType\\": \\"kafka\\",\\n \\"InstanceId\\": 0,\\n \\"Version\\": \\"1.0.0\\",\\n \\"Target\\": \\"121.40.XX.XX:3342\\",\\n \\"CanDelete\\": true,\\n \\"CanEditor\\": true,\\n \\"Status\\": \\"installed\\",\\n \\"ContainerName\\": \\"container-1\\",\\n \\"Namespace\\": \\"arms-prom\\",\\n \\"PodName\\": \\"kafka-exporter-1\\",\\n \\"Describe\\": \\"\\\\\\"{}\\\\\\"\\",\\n \\"ShowLog\\": true,\\n \\"Param\\": \\"{\\\\n \\\\\\"port\\\\\\": \\\\\\"5554\\\\\\",\\\\n \\\\\\"name\\\\\\": \\\\\\"kafka-test12\\\\\\",\\\\n \\\\\\"kafka_instance\\\\\\": \\\\\\"kafka-test\\\\\\",\\\\n \\\\\\"__label_value\\\\\\": \\\\\\"kafka-test\\\\\\",\\\\n \\\\\\"scrape_interval\\\\\\": 33,\\\\n \\\\\\"metrics_path\\\\\\": \\\\\\"/metrics\\\\\\",\\\\n \\\\\\"__label_key\\\\\\": \\\\\\"kafka-test\\\\\\"\\\\n}\\"\\n }\\n ],\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'ListPrometheusIntegration', + ], + 'GetPrometheusInstance' => [ + 'summary' => 'Queries the information about a Prometheus instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '163198', + 'abilityTreeNodes' => [ + 'FEATUREarmsFRX7PL', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'c77f6f2397ea74672872acf5e31374a27', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '52C422FD-6B43-524D-B8A1-A4693294318C', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. If another status code is returned, the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'ClusterId' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'c589a1b8db05c4561aefbb898ca8fb1cf', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '167275301789****', + ], + 'ClusterName' => [ + 'description' => 'The name of the monitoring object.'."\n", + 'type' => 'string', + 'example' => 'prom1', + ], + 'ClusterType' => [ + 'title' => ' remote-write(Prometheus for Remote Write)'."\n" + .' ecs(Prometheus for ECS)'."\n" + .' cloud-monitor(Prometheus for 云服务 国内)'."\n" + .' cloud-product(Prometheus for 云服务 国外)'."\n" + .' global-view(Prometheus for GlobalView)'."\n" + .' aliyun-cs(Prometheus for 容器服务)', + 'description' => '* remote-write: general-purpose Prometheus instance'."\n" + .'* ecs: Prometheus instances for ECS'."\n" + .'* cloud-monitor: Prometheus instance for Alibaba Cloud services in the Chinese mainland'."\n" + .'* cloud-product: Prometheus instance for Alibaba Cloud services outside the Chinese mainland'."\n" + .'* global-view: global aggregation instance'."\n" + .'* aliyun-cs: Prometheus instance for Container Service'."\n", + 'type' => 'string', + 'example' => 'remote-write', + ], + 'VpcId' => [ + 'description' => 'The VPC ID. This parameter is returned only for Prometheus instances for ECS.'."\n", + 'type' => 'string', + 'example' => 'vpc-8vb02uk57qbcktqcvqqqj', + ], + 'VSwitchId' => [ + 'description' => 'The vSwitch ID. This parameter is returned only for Prometheus instances for ECS.'."\n", + 'type' => 'string', + 'example' => 'vsw-f8z73vcja1tqnw90aav5a', + ], + 'SecurityGroupId' => [ + 'description' => 'The ID of the security group. This parameter is returned only for Prometheus instances for ECS.'."\n", + 'type' => 'string', + 'example' => 'sg-8vbdgmf4nraiqa9bx0jo', + ], + 'SubClustersJson' => [ + 'title' => 'globalView实例的子实例json串', + 'description' => 'The child instances of the global aggregation instance. The value is a JSON string.'."\n", + 'type' => 'string', + 'example' => '\\[{"headers":{},"regionId":"cn-hangzhou","sourceType":"AlibabaPrometheus","extras":{},"clusterId":"c39a1048921e04fceb039db2fbb73\\*\\*\\*","sourceName":"arms-luyao-test","dataSource":"","userId":"167275301789\\*\\*\\*"},{"headers":{},"regionId":"cn-beijing","sourceType":"AlibabaPrometheus","extras":{},"clusterId":"c6b6485496d5b400abde22cb47b5\\*\\*\\*\\*","sourceName":"agent-321-test","dataSource":"","userId":"1672753017899\\*\\*\\*"},{"headers":{},"regionId":"cn-zhangjiakou","sourceType":"AlibabaPrometheus","extras":{},"clusterId":"c261a4f3200c446659133f1ade789b15e","sourceName":"zaifeng-cardinality-01","dataSource":"","userId":"167275301789\\*\\*\\*"}]'."\n", + ], + 'RemoteReadIntraUrl' => [ + 'description' => 'The internal URL for remote read.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/api/v1/read', + ], + 'RemoteReadInterUrl' => [ + 'description' => 'The public URL for remote read.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/api/v1/read', + ], + 'RemoteWriteIntraUrl' => [ + 'description' => 'The internal URL for remote write.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing-intranet.arms.aliyuncs.com/prometheus/xxx/api/v3/write', + ], + 'RemoteWriteInterUrl' => [ + 'description' => 'The public URL for remote write.'."\n", + 'type' => 'string', + 'example' => 'https://cn-beijing.arms.aliyuncs.com/prometheus/xxx/api/v3/write', + ], + 'PushGatewayIntraUrl' => [ + 'description' => 'The internal URL for Pushgateway.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing-intranet.arms.aliyuncs.com/prometheus/xxx/api/v2', + ], + 'PushGatewayInterUrl' => [ + 'description' => 'The public URL for Pushgateway.'."\n", + 'type' => 'string', + 'example' => 'https://cn-beijing.arms.aliyuncs.com/prometheus/xxx/api/v2', + ], + 'OpenTelemetryInterUrl' => [ + 'type' => 'string', + ], + 'HttpApiIntraUrl' => [ + 'description' => 'The internal URL for the HTTP API.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/xxx', + ], + 'HttpApiInterUrl' => [ + 'description' => 'The public URL for the HTTP API.'."\n", + 'type' => 'string', + 'example' => 'https://cn-beijing.arms.aliyuncs.com:9443/api/v1/prometheus/xxx', + ], + 'AuthToken' => [ + 'description' => 'The authorization token.'."\n", + 'type' => 'string', + 'example' => 'GciOiJIUzI1NiJ9***', + ], + 'AccessType' => [ + 'title' => '权限类型:'."\n" + .'readWrite、readOnly、httpReadOnly', + 'description' => 'The permission type. Valid values: readWrite, readOnly, and httpReadOnly'."\n", + 'type' => 'string', + 'example' => 'readWrite', + ], + 'PaymentType' => [ + 'description' => 'The billing method. Valid values:'."\n" + ."\n" + .'* PREPAY: subscription'."\n" + .'* POSTPAY: pay-as-you-go'."\n", + 'type' => 'string', + 'example' => 'PREPAY', + ], + 'StorageDuration' => [ + 'title' => '存储时长(天)。', + 'description' => 'The data storage duration. Unit: days.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '90', + ], + 'ArchiveDuration' => [ + 'title' => '存储到期后,自动归档保存的天数,0表示不归档保存,3650表示永久保存。', + 'description' => 'The number of days for which data is automatically archived after the storage duration expires. Valid values: 60, 90, 180, and 365. 0 indicates that the data is not archived.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '60', + ], + 'GrafanaInstanceId' => [ + 'description' => 'The ID of the Grafana workspace.'."\n", + 'type' => 'string', + 'example' => 'grafana-rnggfvhlcdl6m71***', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group to which the instance belongs.'."\n", + 'type' => 'string', + 'example' => 'rg-aek2vezare****', + ], + 'ResourceType' => [ + 'title' => '固定值:PROMETHEUS', + 'description' => 'The type of the resource. Set the value to PROMETHEUS.'."\n", + 'type' => 'string', + 'example' => 'PROMETHEUS', + ], + 'EnableAuthToken' => [ + 'title' => '是否开启访问Token鉴权', + 'description' => 'Indicates whether access token authentication is enabled.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'SupportAuthTypes' => [ + 'description' => 'The supported authentication types.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The supported authentication type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* BasicAuth: HTTP basic authentication'."\n" + .'* AuthFree: password-free authentication'."\n" + .'* AuthToken: token authentication'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'BasicAuth' => '', + 'AuthFree' => '', + 'AuthToken' => '', + ], + 'example' => 'AuthFree', + ], + ], + 'EnableAuthFreeRead' => [ + 'title' => '是否开启读免密。', + 'description' => 'Indicates whether password-free read is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'AuthFreeReadPolicy' => [ + 'title' => '读免密地址白名单策略。', + 'description' => 'The whitelist of IP addresses for which password-free read is enabled.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'EnableAuthFreeWrite' => [ + 'title' => '是否开启写免密。', + 'description' => 'Indicates whether password-free write is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'AuthFreeWritePolicy' => [ + 'title' => '写免密地址白名单策略。', + 'description' => 'The whitelist of IP addresses for which password-free write is enabled.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Product' => [ + 'title' => 'prom实例归属的产品(arms或cms)', + 'description' => 'The product to which the Prometheus instance belongs. Valid values: arms and cms.'."\n", + 'type' => 'string', + 'example' => 'arms', + ], + 'DbInstanceStatus' => [ + 'title' => '后端数据存储状态', + 'description' => 'The data storage status at the backend.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'Version' => [ + 'title' => '版本', + 'description' => 'Version'."\n", + 'type' => 'string', + 'example' => 'V1', + ], + 'PaymentTypeUpdateTime' => [ + 'title' => '实例计费方式修改时间', + 'description' => 'The time when the billing method was modified.'."\n", + 'type' => 'string', + 'example' => '2025-02-26T06:05:01Z', + ], + 'ExtraInfo' => [ + 'title' => '扩展信息(仅控制台请求才返回)', + 'description' => 'The extra information. This parameter is returned only for console requests.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The extended information.'."\n", + 'example' => 'key1', + ], + ], + 'Tags' => [ + 'description' => 'The tags of the instance.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'TagKey' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'tag1', + ], + 'TagValue' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'tagValue1', + ], + ], + ], + ], + 'OpenTelemetryIntraUrl' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"52C422FD-6B43-524D-B8A1-A4693294318C\\",\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"ClusterId\\": \\"c589a1b8db05c4561aefbb898ca8fb1cf\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"UserId\\": \\"167275301789****\\",\\n \\"ClusterName\\": \\"prom1\\",\\n \\"ClusterType\\": \\"remote-write\\",\\n \\"VpcId\\": \\"vpc-8vb02uk57qbcktqcvqqqj\\",\\n \\"VSwitchId\\": \\"vsw-f8z73vcja1tqnw90aav5a\\",\\n \\"SecurityGroupId\\": \\"sg-8vbdgmf4nraiqa9bx0jo\\",\\n \\"SubClustersJson\\": \\"[{\\\\\\"headers\\\\\\":{},\\\\\\"regionId\\\\\\":\\\\\\"cn-hangzhou\\\\\\",\\\\\\"sourceType\\\\\\":\\\\\\"AlibabaPrometheus\\\\\\",\\\\\\"extras\\\\\\":{},\\\\\\"clusterId\\\\\\":\\\\\\"c39a1048921e04fceb039db2fbb73***\\\\\\",\\\\\\"sourceName\\\\\\":\\\\\\"arms-luyao-test\\\\\\",\\\\\\"dataSource\\\\\\":\\\\\\"\\\\\\",\\\\\\"userId\\\\\\":\\\\\\"167275301789***\\\\\\"},{\\\\\\"headers\\\\\\":{},\\\\\\"regionId\\\\\\":\\\\\\"cn-beijing\\\\\\",\\\\\\"sourceType\\\\\\":\\\\\\"AlibabaPrometheus\\\\\\",\\\\\\"extras\\\\\\":{},\\\\\\"clusterId\\\\\\":\\\\\\"c6b6485496d5b400abde22cb47b5****\\\\\\",\\\\\\"sourceName\\\\\\":\\\\\\"agent-321-测试\\\\\\",\\\\\\"dataSource\\\\\\":\\\\\\"\\\\\\",\\\\\\"userId\\\\\\":\\\\\\"1672753017899***\\\\\\"},{\\\\\\"headers\\\\\\":{},\\\\\\"regionId\\\\\\":\\\\\\"cn-zhangjiakou\\\\\\",\\\\\\"sourceType\\\\\\":\\\\\\"AlibabaPrometheus\\\\\\",\\\\\\"extras\\\\\\":{},\\\\\\"clusterId\\\\\\":\\\\\\"c261a4f3200c446659133f1ade789b15e\\\\\\",\\\\\\"sourceName\\\\\\":\\\\\\"zaifeng-cardinality-01\\\\\\",\\\\\\"dataSource\\\\\\":\\\\\\"\\\\\\",\\\\\\"userId\\\\\\":\\\\\\"167275301789***\\\\\\"}]\\",\\n \\"RemoteReadIntraUrl\\": \\"http://cn-beijing-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/api/v1/read\\",\\n \\"RemoteReadInterUrl\\": \\"http://cn-beijing.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/api/v1/read\\",\\n \\"RemoteWriteIntraUrl\\": \\"http://cn-beijing-intranet.arms.aliyuncs.com/prometheus/xxx/api/v3/write\\",\\n \\"RemoteWriteInterUrl\\": \\"https://cn-beijing.arms.aliyuncs.com/prometheus/xxx/api/v3/write\\",\\n \\"PushGatewayIntraUrl\\": \\"http://cn-beijing-intranet.arms.aliyuncs.com/prometheus/xxx/api/v2\\",\\n \\"PushGatewayInterUrl\\": \\"https://cn-beijing.arms.aliyuncs.com/prometheus/xxx/api/v2\\",\\n \\"OpenTelemetryInterUrl\\": \\"\\",\\n \\"HttpApiIntraUrl\\": \\"http://cn-beijing-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/xxx\\",\\n \\"HttpApiInterUrl\\": \\"https://cn-beijing.arms.aliyuncs.com:9443/api/v1/prometheus/xxx\\",\\n \\"AuthToken\\": \\"GciOiJIUzI1NiJ9***\\",\\n \\"AccessType\\": \\"readWrite\\",\\n \\"PaymentType\\": \\"PREPAY\\",\\n \\"StorageDuration\\": 90,\\n \\"ArchiveDuration\\": 60,\\n \\"GrafanaInstanceId\\": \\"grafana-rnggfvhlcdl6m71***\\",\\n \\"ResourceGroupId\\": \\"rg-aek2vezare****\\",\\n \\"ResourceType\\": \\"PROMETHEUS\\",\\n \\"EnableAuthToken\\": \\"true\\",\\n \\"SupportAuthTypes\\": [\\n \\"AuthFree\\"\\n ],\\n \\"EnableAuthFreeRead\\": true,\\n \\"AuthFreeReadPolicy\\": \\"0.0.0.0/0\\",\\n \\"EnableAuthFreeWrite\\": true,\\n \\"AuthFreeWritePolicy\\": \\"0.0.0.0/0\\",\\n \\"Product\\": \\"arms\\",\\n \\"DbInstanceStatus\\": \\"RUNNING\\",\\n \\"Version\\": \\"V1\\",\\n \\"PaymentTypeUpdateTime\\": \\"2025-02-26T06:05:01Z\\",\\n \\"ExtraInfo\\": {\\n \\"key\\": \\"extraKey\\"\\n },\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"tag1\\",\\n \\"TagValue\\": \\"tagValue1\\"\\n }\\n ],\\n \\"OpenTelemetryIntraUrl\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetPrometheusInstance', + ], + 'ListPrometheusInstanceByTagAndResourceGroupId' => [ + 'summary' => 'Queries Prometheus instances by tag and resource group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag of the resource.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'fpx-tag', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'fvt-tag-value', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '4789C3E9-A85A-524B-B97B-9D2B14BA06BC', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'PrometheusInstances' => [ + 'description' => 'The queried Prometheus instances.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ClusterId' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'c9d5dda1aeca64220853ace304baeb03d', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'UserId' => [ + 'description' => 'The ID of the user.'."\n", + 'type' => 'string', + 'example' => '1672753017899***', + ], + 'ClusterName' => [ + 'description' => 'The name of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'prom1', + ], + 'ClusterType' => [ + 'title' => ' remote-write(Prometheus for Remote Write)'."\n" + .' ecs(Prometheus for ECS)'."\n" + .' cloud-monitor(Prometheus for 云服务 国内)'."\n" + .' cloud-product(Prometheus for 云服务 国外)'."\n" + .' global-view(Prometheus for GlobalView)'."\n" + .' aliyun-cs(Prometheus for 容器服务)', + 'description' => 'The instance type. Valid values:'."\n" + ."\n" + .'* remote-write: Prometheus instance for Remote Write'."\n" + .'* ecs: Prometheus instances for ECS'."\n" + .'* cloud-monitor: Prometheus instance for Alibaba Cloud services in the Chinese mainland'."\n" + .'* cloud-product: Prometheus instance for Alibaba Cloud services outside the Chinese mainland'."\n" + .'* global-view: global aggregation instance'."\n" + .'* aliyun-cs: Prometheus instance for Container Service'."\n", + 'type' => 'string', + 'example' => 'ecs', + ], + 'VpcId' => [ + 'description' => 'The ID of the virtual private cloud (VPC).'."\n", + 'type' => 'string', + 'example' => 'vpc-8vbtp1fsm8mir18l8rl0u', + ], + 'VSwitchId' => [ + 'description' => 'The ID of the vSwitch.'."\n", + 'type' => 'string', + 'example' => 'vsw-f8z73vcja1tqnw90aav5a', + ], + 'SecurityGroupId' => [ + 'description' => 'The ID of the security group.'."\n", + 'type' => 'string', + 'example' => 'sg-f8zd1toc10wmbi1v5rom', + ], + 'SubClustersJson' => [ + 'title' => 'globalView实例的子实例json串', + 'description' => 'The child instances of the global aggregation instance. The value is a JSON string.'."\n", + 'type' => 'string', + 'example' => '\\[ { "headers": {}, "regionId": "cn-hangzhou", "sourceType": "AlibabaPrometheus", "extras": {}, "clusterId": "c39a1048921e04fceb039db2fb\\*\\*\\*\\*", "sourceName": "arms-luyao-test", "dataSource": "", "userId": "167275301789\\*\\*\\*\\*" }, { "headers": {}, "regionId": "cn-beijing", "sourceType": "AlibabaPrometheus", "extras": {}, "clusterId": "c6b6485496d5b400abde22cb47b5\\*\\*\\*\\*", "sourceName": "agent-321-test", "dataSource": "", "userId": "167275301789\\*\\*\\*\\*" }, { "headers": {}, "regionId": "cn-zhangjiakou", "sourceType": "AlibabaPrometheus", "extras": {}, "clusterId": "c261a4f3200c446659133f1ade78\\*\\*\\*\\*", "sourceName": "zaifeng-cardinality-01", "dataSource": "", "userId": "167275301789\\*\\*\\*\\*" } ]'."\n", + ], + 'RemoteReadIntraUrl' => [ + 'description' => 'The internal URL for remote read.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/api/v1/read', + ], + 'RemoteReadInterUrl' => [ + 'description' => 'The public URL for remote read.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/api/v1/read', + ], + 'RemoteWriteIntraUrl' => [ + 'description' => 'The internal URL for remote write.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing-intranet.arms.aliyuncs.com/prometheus/xxx/api/v3/write'."\n", + ], + 'RemoteWriteInterUrl' => [ + 'description' => 'The public URL for remote write.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing.arms.aliyuncs.com/prometheus/xxx/api/v3/write'."\n", + ], + 'PushGatewayIntraUrl' => [ + 'description' => 'The internal URL for Pushgateway.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing-intranet.arms.aliyuncs.com/prometheus/xxx/api/v2'."\n", + ], + 'PushGatewayInterUrl' => [ + 'description' => 'The public URL for Pushgateway.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing.arms.aliyuncs.com/prometheus/xxx/api/v2'."\n", + ], + 'HttpApiIntraUrl' => [ + 'description' => 'The internal URL for the HTTP API.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/cn-beijing', + ], + 'HttpApiInterUrl' => [ + 'description' => 'The public URL for the HTTP API.'."\n", + 'type' => 'string', + 'example' => 'http://cn-beijing.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/cn-beijing', + ], + 'AuthToken' => [ + 'description' => 'The authorization token.'."\n", + 'type' => 'string', + 'example' => 'ad32dxxxx'."\n", + ], + 'PaymentType' => [ + 'description' => 'The billing method. Valid values:'."\n" + ."\n" + .'* PREPAY: subscription'."\n" + .'* POSTPAY: pay-as-you-go'."\n", + 'type' => 'string', + 'example' => 'POSTPAY', + ], + 'GrafanaInstanceId' => [ + 'description' => 'The ID of the Grafana workspace.'."\n", + 'type' => 'string', + 'example' => 'grafana-rnggfvhlcdl6m71l**', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group to which the Prometheus instance belongs.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmz7nocpeidcy', + ], + 'ResourceType' => [ + 'description' => 'The resource type.'."\n", + 'type' => 'string', + 'example' => 'PROMETHEUS', + ], + 'Tags' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'TagKey' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'ac-cus-tag-3', + ], + 'TagValue' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'asg-2vc8qq7x89o11rus9uvu', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The response code. 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' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4789C3E9-A85A-524B-B97B-9D2B14BA06BC\\",\\n \\"Data\\": {\\n \\"PrometheusInstances\\": [\\n {\\n \\"ClusterId\\": \\"c9d5dda1aeca64220853ace304baeb03d\\",\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"UserId\\": \\"1672753017899***\\",\\n \\"ClusterName\\": \\"prom1\\",\\n \\"ClusterType\\": \\"ecs\\",\\n \\"VpcId\\": \\"vpc-8vbtp1fsm8mir18l8rl0u\\",\\n \\"VSwitchId\\": \\"vsw-f8z73vcja1tqnw90aav5a\\",\\n \\"SecurityGroupId\\": \\"sg-f8zd1toc10wmbi1v5rom\\",\\n \\"SubClustersJson\\": \\"[\\\\n {\\\\n \\\\\\"headers\\\\\\": {},\\\\n \\\\\\"regionId\\\\\\": \\\\\\"cn-hangzhou\\\\\\",\\\\n \\\\\\"sourceType\\\\\\": \\\\\\"AlibabaPrometheus\\\\\\",\\\\n \\\\\\"extras\\\\\\": {},\\\\n \\\\\\"clusterId\\\\\\": \\\\\\"c39a1048921e04fceb039db2fb****\\\\\\",\\\\n \\\\\\"sourceName\\\\\\": \\\\\\"arms-luyao-test\\\\\\",\\\\n \\\\\\"dataSource\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"userId\\\\\\": \\\\\\"167275301789****\\\\\\"\\\\n },\\\\n {\\\\n \\\\\\"headers\\\\\\": {},\\\\n \\\\\\"regionId\\\\\\": \\\\\\"cn-beijing\\\\\\",\\\\n \\\\\\"sourceType\\\\\\": \\\\\\"AlibabaPrometheus\\\\\\",\\\\n \\\\\\"extras\\\\\\": {},\\\\n \\\\\\"clusterId\\\\\\": \\\\\\"c6b6485496d5b400abde22cb47b5****\\\\\\",\\\\n \\\\\\"sourceName\\\\\\": \\\\\\"agent-321-测试\\\\\\",\\\\n \\\\\\"dataSource\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"userId\\\\\\": \\\\\\"167275301789****\\\\\\"\\\\n },\\\\n {\\\\n \\\\\\"headers\\\\\\": {},\\\\n \\\\\\"regionId\\\\\\": \\\\\\"cn-zhangjiakou\\\\\\",\\\\n \\\\\\"sourceType\\\\\\": \\\\\\"AlibabaPrometheus\\\\\\",\\\\n \\\\\\"extras\\\\\\": {},\\\\n \\\\\\"clusterId\\\\\\": \\\\\\"c261a4f3200c446659133f1ade78****\\\\\\",\\\\n \\\\\\"sourceName\\\\\\": \\\\\\"zaifeng-cardinality-01\\\\\\",\\\\n \\\\\\"dataSource\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"userId\\\\\\": \\\\\\"167275301789****\\\\\\"\\\\n }\\\\n]\\",\\n \\"RemoteReadIntraUrl\\": \\"http://cn-beijing-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/api/v1/read\\",\\n \\"RemoteReadInterUrl\\": \\"http://cn-beijing.arms.aliyuncs.com:9090/api/v1/prometheus/xxx/api/v1/read\\",\\n \\"RemoteWriteIntraUrl\\": \\"http://cn-beijing-intranet.arms.aliyuncs.com/prometheus/xxx/api/v3/write\\",\\n \\"RemoteWriteInterUrl\\": \\"https://cn-beijing.arms.aliyuncs.com/prometheus/xxx/api/v3/write\\",\\n \\"PushGatewayIntraUrl\\": \\"http://cn-beijing-intranet.arms.aliyuncs.com/prometheus/xxx/api/v2\\",\\n \\"PushGatewayInterUrl\\": \\"https://cn-beijing.arms.aliyuncs.com/prometheus/xxx/api/v2\\",\\n \\"HttpApiIntraUrl\\": \\"http://cn-beijing-intranet.arms.aliyuncs.com:9090/api/v1/prometheus/xxx\\\\n\\",\\n \\"HttpApiInterUrl\\": \\"https://cn-beijing.arms.aliyuncs.com:9443/api/v1/prometheus/xxx\\",\\n \\"AuthToken\\": \\"GciOiJIUzI1NiJ9***\\",\\n \\"PaymentType\\": \\"POSTPAY\\",\\n \\"GrafanaInstanceId\\": \\"grafana-rnggfvhlcdl6m71l**\\",\\n \\"ResourceGroupId\\": \\"rg-acfmz7nocpeidcy\\",\\n \\"ResourceType\\": \\"PROMETHEUS\\",\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"ac-cus-tag-3\\",\\n \\"TagValue\\": \\"asg-2vc8qq7x89o11rus9uvu\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'ListPrometheusInstanceByTagAndResourceGroupId', + ], + 'CreatePrometheusInstance' => [ + 'summary' => 'Creates a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '165691', + 'abilityTreeNodes' => [ + 'FEATUREarmsFRX7PL', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'title' => '国内Prometheus for 云服务:固定值cn-shanghai。'."\n" + .'其它类型的实例:实际regionId。', + 'description' => 'The ID of the region. If you use a Prometheus instance to monitor an Alibaba Cloud service in China, this parameter must be set to cn-shanghai.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'ClusterType', + 'in' => 'query', + 'schema' => [ + 'title' => '类型:'."\n" + .' remote-write(Prometheus for Remote Write)'."\n" + .' ecs(Prometheus for ECS)'."\n" + .' global-view(Prometheus for GlobalView)'."\n" + .' aliyun-cs'."\0\0".'(Prometheus for 容器服务)', + 'description' => 'The type of the Prometheus instance. Valid values:'."\n" + ."\n" + .'* remote-write: Prometheus instance for Remote Write'."\n" + .'* ecs (unavailable): Prometheus instance for ECS'."\n" + .'* global-view: Prometheus instance for GlobalView'."\n" + .'* aliyun-cs: Prometheus instance for Container Service'."\n" + .'* cloud-product (unavailable): Prometheus instance for Alibaba Cloud services'."\n" + .'* cloud-monitor (unavailable): Prometheus instance for Hybrid Cloud Monitoring'."\n" + .'* flink (unavailable): Prometheus instance for Flink'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'remote-write', + ], + ], + [ + 'name' => 'VpcId', + 'in' => 'query', + 'schema' => [ + 'title' => '当clusterType为ecs或者创建托管版ask容器集群时,需要传此参数:用户专有网络VPC', + 'description' => 'The ID of virtual private cloud (VPC). This parameter is required if you set the ClusterType parameter to ecs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-rpn**********', + ], + ], + [ + 'name' => 'VSwitchId', + 'in' => 'query', + 'schema' => [ + 'title' => '当clusterType为ecs或者创建托管版ask容器集群时,需要传此参数:用户专有网络交换机VSwitch', + 'description' => 'The ID of the vSwitch. This parameter is required if you set the ClusterType parameter to ecs.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'vsw-bp1*********', + ], + ], + [ + 'name' => 'SecurityGroupId', + 'in' => 'query', + 'schema' => [ + 'title' => '当clusterType为ecs或者创建托管版ask容器集群时,需要传此参数:用户专有网络安全组SecurityGroup', + 'description' => 'The ID of the security group. This parameter is required if you set the ClusterType parameter to ecs.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'sg-bp1********', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'title' => '当clusterType为aliyun-cs时,需要传此参数:用户容器服务集群ID', + 'description' => 'The ID of the ACK cluster. This parameter is required if you set the ClusterType parameter to aliyun-cs.', + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + [ + 'name' => 'ClusterName', + 'in' => 'query', + 'schema' => [ + 'title' => '当clusterType为remote-write、ecs、global-view时,需要传此参数:用户新建集群的名称。'."\n" + .'ecs类型实例时,ClusterName的命名规则“name-vpc-id”,且name长度不允许超过24个字符。如“mytest1-vpc-xxxxxxxxxxx”。', + 'description' => 'The name of the created cluster. This parameter is required if you set the ClusterType parameter to remote-write or ecs.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'clusterNameOfTest', + ], + ], + [ + 'name' => 'SubClustersJson', + 'in' => 'query', + 'schema' => [ + 'title' => '当clusterType为global-view时,需要传此参数:需要聚合的集群的信息列表;示例:[{"headers":{},"regionId":"cn-hangzhou","sourceType":"AlibabaPrometheus","extras":{},"clusterId":"c39a1048921e04fceb039db2fbb73ede6","sourceName":"arms-luyao-test","dataSource":"","userId":"1672753017899339"},{"headers":{},"regionId":"cn-beijing","sourceType":"AlibabaPrometheus","extras":{},"clusterId":"c6b6485496d5b400abde22cb47b5d790f","sourceName":"agent-321-测试","dataSource":"","userId":"1672753017899339"},{"headers":{},"regionId":"cn-zhangjiakou","sourceType":"AlibabaPrometheus","extras":{},"clusterId":"c261a4f3200c446659133f1ade789b15e","sourceName":"zaifeng-cardinality-01","dataSource":"","userId":"1672753017899339"}]', + 'description' => 'JSON string for child instances of the globalView instance.', + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'When the clusterType is global view, this parameter needs to be passed: a list of information about the clusters that need to be aggregated.'."\n" + .'Example:'."\n" + .'['."\n" + .' {'."\n" + .' "Headers":{'."\n" + ."\n" + .' },'."\n" + .' "RegionId": "cn hangzhou",'."\n" + .' "SourceType": "Alibaba Prometheus",'."\n" + .' "Extras":{'."\n" + ."\n" + .' },'."\n" + .' "ClusterId": "c39a1048921e04f ****************",'."\n" + .' "SourceName": "test1",'."\n" + .' "DataSource": "",'."\n" + .' "UserId": "1672753 ******************"'."\n" + .' },'."\n" + .' {'."\n" + .' "Headers":{'."\n" + ."\n" + .' },'."\n" + .' "RegionId": "cn beijing",'."\n" + .' "SourceType": "Alibaba Prometheus",'."\n" + .' "Extras":{'."\n" + ."\n" + .' },'."\n" + .' "ClusterId": "c6b6485496d5b40 ****************",'."\n" + .' "SourceName": "test2",'."\n" + .' "DataSource": "",'."\n" + .' "UserId": "1672753 ******************"'."\n" + .' },'."\n" + .' {'."\n" + .' "Headers":{'."\n" + ."\n" + .' },'."\n" + .' "RegionId": "cn zhangjiakou",'."\n" + .' "SourceType": "Alibaba Prometheus",'."\n" + .' "Extras":{'."\n" + ."\n" + .' },'."\n" + .' "ClusterId": "c261a4f3200c446 ****************",'."\n" + .' "SourceName": "test3",'."\n" + .' "DataSource": "",'."\n" + .' "UserId": "1672753 ******************"'."\n" + .' }'."\n" + .']', + ], + ], + [ + 'name' => 'AllSubClustersSuccess', + 'in' => 'query', + 'schema' => [ + 'title' => '创建GlobalView时,是否要求所有子实例都校验成功时,才创建GlobalView实例。后台默认是false,即可以部分成功。', + 'description' => 'Does it require all child instances to be verified successfully before creating a GlobalView instance. The default is false, which means partial success is possible.', + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'GrafanaInstanceId', + 'in' => 'query', + 'schema' => [ + 'title' => 'Grafana工作区ID;共享版Grafana时,填"free"。', + 'description' => 'The ID of the Grafana dedicated instance. This parameter is available if you set the ClusterType parameter to ecs.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'grafana-bp1*****', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'title' => '用户资源组ID', + 'description' => 'The ID of the custom resource group. You can configure this parameter to bind the instance to the resource group.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '可以传此参数,给实例创建标签进行管理', + 'description' => 'The tags of the instance. You can configure this parameter to manage tags for the instance.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签名', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'title' => '标签值', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'example' => '['."\n" + .' {'."\n" + .' "labelName":"labelValue"'."\n" + .' },'."\n" + .' {'."\n" + .' "testName":"clusterA"'."\n" + .' }'."\n" + .']', + 'maxItems' => 21, + ], + ], + [ + 'name' => 'Duration', + 'in' => 'query', + 'schema' => [ + 'title' => '存储时长(天)。', + 'description' => 'The data storage duration. Unit: days.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '90', + ], + ], + [ + 'name' => 'ArchiveDuration', + 'in' => 'query', + 'schema' => [ + 'title' => '存储到期后,自动归档保存的天数,0表示不归档保存。归档天数取值范围:'."\n" + .'V1:60、90、180、365天。'."\n" + .'V2:1~3650天(3650表示永久保存)。', + 'description' => 'The number of days for which data is automatically archived after the storage expires. Valid values: 60, 90, 180, and 365. 0 indicates that the data is not archived.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '90', + ], + ], + [ + 'name' => 'PaymentType', + 'in' => 'query', + 'schema' => [ + 'title' => '计费方式:'."\n" + .'POSTPAY:按指标上报量后付费。'."\n" + .'POSTPAY_GB:按指标写入量后付费。'."\n" + .'空:则使用用户的默认计费方式配置。若用户未配置默认值,则系统默认是按指标上报量计费。', + 'description' => 'The billing mode. Valid values: POSTPAY: charges fees based on the amount of reported metric data. POSTPAY_GB: charges fees based on the amount of written metric data. Empty: The user-defined default billing mode is used. If you do not specify a default value, you are charged based on the amount of reported metric data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'POSTPAY', + 'enum' => [ + 'POSTPAY', + 'POSTPAY_GB', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'title' => '集群id', + 'description' => 'The ID of the created Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'qduukd****', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '70675725-8F11-4817-8106-CFE0AD71****', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"qduukd****\\",\\n \\"RequestId\\": \\"70675725-8F11-4817-8106-CFE0AD71****\\",\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'CreatePrometheusInstance', + ], + 'UpdatePrometheusInstance' => [ + 'summary' => 'Updates the information about a Prometheus instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '217860', + 'abilityTreeNodes' => [ + 'FEATUREarmsFRX7PL', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus实例的资源组id', + 'description' => 'The ID of the Prometheus resource group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => 'prometheus实例ID', + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'vpc-xxx', + ], + ], + [ + 'name' => 'StorageDuration', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '数据保存时长(天)。', + 'description' => 'The data storage duration. Unit: days.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '90', + ], + ], + [ + 'name' => 'ArchiveDuration', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '存储到期后,自动归档保存的天数,0表示不归档保存。归档天数取值范围:'."\n" + .'V1:60、90、180、365天。'."\n" + .'V2:1~3650天(3650表示永久保存)。', + 'description' => 'The number of days for which data is automatically archived after the storage expires. Valid values: 60, 90, 180, and 365. 0 indicates that the data is not archived.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '90', + ], + ], + [ + 'name' => 'EnableAuthToken', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否开启访问Token鉴权', + 'description' => 'Specifies whether to enable access token authentication.'."\n", + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'EnableAuthFreeRead', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否开启免密读', + 'description' => 'Specifies whether to enable password-free read.'."\n", + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'AuthFreeReadPolicy', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否开启免密读的ip地址列表,支持CIDR配置。多个ip之间换行符分隔。', + 'description' => 'The IP addresses or CIDR blocks for which password-free read is enabled. Separate multiple IP addresses with line breaks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0.0.0.0/0', + ], + ], + [ + 'name' => 'EnableAuthFreeWrite', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否开启免密写', + 'description' => 'Specifies whether to enable password-free write.'."\n", + 'type' => 'boolean', + 'required' => false, + ], + ], + [ + 'name' => 'AuthFreeWritePolicy', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'title' => '是否开启免密写的ip地址列表,支持CIDR配置。多个ip之间换行符分隔。', + 'description' => 'The IP addresses or CIDR blocks for which password-free write is enabled. Separate multiple IP addresses with line breaks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0.0.0.0/0', + ], + ], + [ + 'name' => 'PaymentType', + 'in' => 'query', + 'schema' => [ + 'title' => '计费方式:'."\n" + .'POSTPAY:按指标上报量后付费。'."\n" + .'POSTPAY_GB:按指标写入量后付费。', + 'description' => 'The billing mode. Valid values: POSTPAY: charges fees based on the amount of reported metric data. POSTPAY_GB: charges fees based on the amount of written metric data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'POSTPAY', + 'enum' => [ + 'POSTPAY', + 'POSTPAY_GB', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response schema.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '6A9AEA84-7186-4D8D-B498-4585C6A2****', + ], + 'Data' => [ + 'description' => 'The result of the operation.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The returned status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6A9AEA84-7186-4D8D-B498-4585C6A2****\\",\\n \\"Data\\": \\"success\\",\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'UpdatePrometheusInstance', + ], + 'UpdatePrometheusGlobalView' => [ + 'summary' => 'Updates the data sources of Prometheus instance for GlobalView.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region in which the Prometheus instance resides.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-shenzhen', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'zyGlobalView', + ], + ], + [ + 'name' => 'MostRegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID of the global aggregation instance.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'global****', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'title' => 'prometheus实例的资源组id', + 'description' => 'The ID of the resource group to which the Prometheus instance belongs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'SubClustersJson', + 'in' => 'query', + 'schema' => [ + 'title' => '聚合的集群的信息列表;示例:[{"headers":{},"regionId":"cn-hangzhou","sourceType":"AlibabaPrometheus","extras":{},"clusterId":"c39a1048921e04fceb039db2fbb73ede6","sourceName":"arms-luyao-test","dataSource":"","userId":"1672753017899339"},{"headers":{},"regionId":"cn-beijing","sourceType":"AlibabaPrometheus","extras":{},"clusterId":"c6b6485496d5b400abde22cb47b5d790f","sourceName":"agent-321-测试","dataSource":"","userId":"1672753017899339"},{"headers":{},"regionId":"cn-zhangjiakou","sourceType":"AlibabaPrometheus","extras":{},"clusterId":"c261a4f3200c446659133f1ade789b15e","sourceName":"zaifeng-cardinality-01","dataSource":"","userId":"1672753017899339"}]', + 'description' => 'The data sources of the Prometheus instance for GlobalView.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '[ { "headers":{ }, "regionId":"cn-hangzhou", "sourceType":"AlibabaPrometheus", "extras":{ }, "clusterId":"c39a1048921e04f***********", "sourceName":"arms-luyao-test", "dataSource":"", "userId":"1672753***********" }, { "headers":{ }, "regionId":"cn-beijing", "sourceType":"AlibabaPrometheus", "extras":{ }, "clusterId":"c6b6485496d5b40***********", "sourceName":"agent-321-test", "dataSource":"", "userId":"1672753***********" }, { "headers":{ }, "regionId":"cn-zhangjiakou", "sourceType":"AlibabaPrometheus", "extras":{ }, "clusterId":"c261a4f3200c446***********", "sourceName":"zaifeng-cardinality-01", "dataSource":"", "userId":"1672753***********" } ]'."\n", + ], + ], + [ + 'name' => 'AllSubClustersSuccess', + 'in' => 'query', + 'schema' => [ + 'title' => '创建GlobalView时,是否要求所有子实例都校验成功时,才创建GlobalView实例。后台默认是false,即可以部分成功。', + 'description' => 'To edit a GlobalView aggregated instance, do you require all passed child instances to be verified successfully before creating a GlobalView instance (optional, default to false):'."\n" + .'- true'."\n" + .'- false', + 'type' => 'boolean', + 'required' => true, + 'docRequired' => true, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'FailedInstances' => [ + 'description' => 'The data sources that failed to be updated.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SourceName' => [ + 'description' => 'The name of the data source.'."\n", + 'type' => 'string', + 'example' => 'sourcename-test', + ], + 'SourceType' => [ + 'title' => 'AlibabaPrometheus'."\n" + .'MetricStore'."\n" + .'CustomPrometheus', + 'description' => 'The type of the data source. AlibabaPrometheus MetricStore CustomPrometheus'."\n", + 'type' => 'string', + 'example' => 'AlibabaPrometheus', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '23784673825*******', + ], + 'ClusterId' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'example' => 'cdb65ed2d527345*********', + ], + ], + 'description' => '', + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The ID of the request. You can use the ID to query logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => 'E9C9DA3D-10FE-472E-9EEF-2D0A3E41****', + ], + 'Message' => [ + 'description' => 'The error message that is returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"Success\\": true,\\n \\"FailedInstances\\": [\\n {\\n \\"SourceName\\": \\"sourcename-test\\",\\n \\"SourceType\\": \\"AlibabaPrometheus\\",\\n \\"UserId\\": \\"23784673825*******\\",\\n \\"ClusterId\\": \\"cdb65ed2d527345*********\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"E9C9DA3D-10FE-472E-9EEF-2D0A3E41****\\",\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200\\n}","type":"json"}]', + 'title' => 'UpdatePrometheusGlobalView', + ], + 'ListEnvironmentKubeResources' => [ + 'summary' => 'Queries the Kubernetes resources of an environment.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '195018', + 'abilityTreeNodes' => [ + 'FEATUREarmsC7S24K', + ], + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Kind', + 'in' => 'query', + 'schema' => [ + 'title' => '资源kind Pod | Deployment | Service ...等', + 'description' => 'The resource type. Valid values: Pod, Deployment, and Service.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Pod', + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => '命名空间', + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'default', + ], + ], + [ + 'name' => 'LabelSelectors', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '标签选择', + 'description' => 'The tags.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{"app":"mysql"}', + 'description' => 'The tags.'."\n", + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\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', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'ApiVersion' => [ + 'description' => 'The version number of the API.'."\n", + 'type' => 'string', + 'example' => 'v1', + ], + 'Kind' => [ + 'description' => 'The resource type.'."\n", + 'type' => 'string', + 'example' => 'Pod', + ], + 'Metadata' => [ + 'description' => 'The metadata.'."\n", + 'type' => 'object', + 'properties' => [ + 'Annotations' => [ + 'description' => 'The annotations.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => ' {'."\n" + .' "kubernetes.io/psp": "ack.privileged",'."\n" + .' "k8s.aliyun.com/pod-ips": "172.16.0.188"'."\n" + .' }', + 'description' => 'The annotations.'."\n", + ], + ], + 'Labels' => [ + 'description' => 'The tags.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The tags.'."\n", + 'example' => '{'."\n" + .' "app": "arms-prometheus-ack-arms-prometheus",'."\n" + .' "releaseRevision": "1",'."\n" + .' "release": "arms-prometheus",'."\n" + .' "pod-template-hash": "c577b6cc8",'."\n" + .' "heritage": "Helm",'."\n" + .' "chart": "ack-arms-prometheus-1.1.17"'."\n" + .' }', + ], + ], + 'Name' => [ + 'description' => 'The resource name.'."\n", + 'type' => 'string', + 'example' => 'arms-prometheus-ack-arms-prometheus-c577b6cc8-mvdwd', + ], + 'Namespace' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'arms-prom', + ], + ], + ], + 'Spec' => [ + 'description' => 'The resource specifications.'."\n", + 'type' => 'any', + 'example' => '{'."\n" + .' "dnsPolicy": "ClusterFirst",'."\n" + .' "nodeName": "cn-hangzhou.172.16.0.60",'."\n" + .' "terminationGracePeriodSeconds": 30,'."\n" + .' "enableServiceLinks": true,'."\n" + .' "serviceAccountName": "arms-prom-operator",'."\n" + .' "volumes": ['."\n" + .' {'."\n" + .' "name": "certs",'."\n" + .' "secret": {'."\n" + .' "secretName": "arms-prometheus-ack-arms-prometheus-cert",'."\n" + .' "defaultMode": 420'."\n" + .' }'."\n" + .' }'."\n", + ], + 'Status' => [ + 'description' => 'The status of the resource.'."\n", + 'type' => 'any', + 'example' => 'run', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"message\\",\\n \\"Data\\": [\\n {\\n \\"ApiVersion\\": \\"v1\\",\\n \\"Kind\\": \\"Pod\\",\\n \\"Metadata\\": {\\n \\"Annotations\\": {\\n \\"key\\": \\" {\\\\n \\\\\\"kubernetes.io/psp\\\\\\": \\\\\\"ack.privileged\\\\\\",\\\\n \\\\\\"k8s.aliyun.com/pod-ips\\\\\\": \\\\\\"172.16.0.188\\\\\\"\\\\n }\\"\\n },\\n \\"Labels\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"app\\\\\\": \\\\\\"arms-prometheus-ack-arms-prometheus\\\\\\",\\\\n \\\\\\"releaseRevision\\\\\\": \\\\\\"1\\\\\\",\\\\n \\\\\\"release\\\\\\": \\\\\\"arms-prometheus\\\\\\",\\\\n \\\\\\"pod-template-hash\\\\\\": \\\\\\"c577b6cc8\\\\\\",\\\\n \\\\\\"heritage\\\\\\": \\\\\\"Helm\\\\\\",\\\\n \\\\\\"chart\\\\\\": \\\\\\"ack-arms-prometheus-1.1.17\\\\\\"\\\\n }\\"\\n },\\n \\"Name\\": \\"arms-prometheus-ack-arms-prometheus-c577b6cc8-mvdwd\\",\\n \\"Namespace\\": \\"arms-prom\\"\\n },\\n \\"Spec\\": \\"{\\\\n \\\\\\"dnsPolicy\\\\\\": \\\\\\"ClusterFirst\\\\\\",\\\\n \\\\\\"nodeName\\\\\\": \\\\\\"cn-hangzhou.172.16.0.60\\\\\\",\\\\n \\\\\\"terminationGracePeriodSeconds\\\\\\": 30,\\\\n \\\\\\"enableServiceLinks\\\\\\": true,\\\\n \\\\\\"serviceAccountName\\\\\\": \\\\\\"arms-prom-operator\\\\\\",\\\\n \\\\\\"volumes\\\\\\": [\\\\n {\\\\n \\\\\\"name\\\\\\": \\\\\\"certs\\\\\\",\\\\n \\\\\\"secret\\\\\\": {\\\\n \\\\\\"secretName\\\\\\": \\\\\\"arms-prometheus-ack-arms-prometheus-cert\\\\\\",\\\\n \\\\\\"defaultMode\\\\\\": 420\\\\n }\\\\n }\\\\n\\",\\n \\"Status\\": \\"run\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListEnvironmentKubeResources', + ], + 'ListEnvironmentMetricTargets' => [ + 'summary' => 'Queries the targets of an environment.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '194431', + 'abilityTreeNodes' => [ + 'FEATUREarmsC7S24K', + ], + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'JobName', + 'in' => 'query', + 'schema' => [ + 'title' => 'job名称', + 'description' => 'The job name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'blackbox', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '16AF921B-8187-489F-9913-43C808B4****', + ], + 'Code' => [ + 'description' => 'The status code. 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', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'ActiveTargets' => [ + 'description' => 'The active targets.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The target information.'."\n", + 'type' => 'object', + 'properties' => [ + 'DiscoveredLabels' => [ + 'description' => 'The tags used for service discovery.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "__meta_kubernetes_pod_label_pod_template_hash": "7477c58b8d",'."\n" + .' "__meta_kubernetes_endpoints_name": "mysql-exporter-mysql-1694448841945-service",'."\n" + .' "__meta_kubernetes_endpoint_port_name": "metrics"'."\n" + .'}', + 'description' => 'The tag value.'."\n", + ], + ], + 'GlobalUrl' => [ + 'description' => 'The URL of the target.'."\n", + 'type' => 'string', + 'example' => 'http://xxx', + ], + 'Health' => [ + 'description' => 'The health status.'."\n", + 'type' => 'string', + 'example' => 'up', + ], + 'Labels' => [ + 'description' => 'The tags.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "endpoint": "metrics",'."\n" + .' "instance": "172.16.0.9:9104",'."\n" + .' "pod": "mysql-1694570927659-7655486df8-djg22",'."\n" + .' "service": "mysql-exporter-mysql-1694570927659-service",'."\n" + .' "namespace": "arms-prom",'."\n" + .' "job": "mysql-exporter-mysql-1694570927659-service"'."\n" + .' }', + 'description' => 'The tag value.'."\n", + ], + ], + 'LastError' => [ + 'description' => 'The last error message.'."\n", + 'type' => 'string', + 'example' => 'Get \\"http://172.16.0.86:9104/metrics\\": dial tcp 172.16.0.86:9104: connect: connection refused', + ], + 'LastScrape' => [ + 'description' => 'The last collection time.'."\n", + 'type' => 'string', + 'example' => '2023-10-12T07:15:47.306691514Z', + ], + 'LastScrapeDuration' => [ + 'description' => 'The duration of the last collection.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => ' 0.00127593', + ], + 'LastScrapeSeries' => [ + 'description' => 'The amount of metrics in the last collection.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '122', + ], + 'ScrapePool' => [ + 'description' => 'The name of the collection.'."\n", + 'type' => 'string', + 'example' => 'arms-prom/mysql-exporter-mysql-1694429267986-sm/0"', + ], + 'ScrapeUrl' => [ + 'description' => 'The URL of the collection.'."\n", + 'type' => 'string', + 'example' => 'http://xxxx', + ], + ], + ], + ], + 'DroppedTargets' => [ + 'description' => 'The deleted targets.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The target information.'."\n", + 'type' => 'object', + 'properties' => [ + 'DiscoveredLabels' => [ + 'description' => 'The tags used for service discovery.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The tag value.'."\n", + 'example' => '{'."\n" + .' "__meta_kubernetes_pod_label_pod_template_hash": "7477c58b8d",'."\n" + .' "__meta_kubernetes_endpoints_name": "mysql-exporter-mysql-1694448841945-service",'."\n" + .' "__meta_kubernetes_endpoint_port_name": "metrics"'."\n" + .'}', + ], + ], + 'GlobalUrl' => [ + 'description' => 'The URL of the target.'."\n", + 'type' => 'string', + 'example' => 'http://xxx', + ], + 'Health' => [ + 'description' => 'The health status.'."\n", + 'type' => 'string', + 'example' => 'up', + ], + 'Labels' => [ + 'description' => 'The tags.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "endpoint": "metrics",'."\n" + .' "instance": "172.16.0.9:9104",'."\n" + .' "pod": "mysql-1694570927659-7655486df8-djg22",'."\n" + .' "service": "mysql-exporter-mysql-1694570927659-service",'."\n" + .' "namespace": "arms-prom",'."\n" + .' "job": "mysql-exporter-mysql-1694570927659-service"'."\n" + .' }', + 'description' => 'The tag value.'."\n", + ], + ], + 'LastError' => [ + 'description' => 'The last error message.'."\n", + 'type' => 'string', + 'example' => 'Get \\"http://172.16.0.86:9104/metrics\\": dial tcp 172.16.0.86:9104: connect: connection refused', + ], + 'LastScrape' => [ + 'description' => 'The last collection time.'."\n", + 'type' => 'string', + 'example' => '2023-10-12T07:15:47.306691514Z', + ], + 'LastScrapeDuration' => [ + 'description' => 'The duration of the last collection.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => ' 0.00127593', + ], + 'LastScrapeSeries' => [ + 'description' => 'The amount of metrics in the last collection.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '122', + ], + 'ScrapePool' => [ + 'description' => 'The name of the collection.'."\n", + 'type' => 'string', + 'example' => 'arms-prom/mysql-exporter-mysql-1694429267986-sm/0"', + ], + 'ScrapeUrl' => [ + 'description' => 'The URL of the collection.'."\n", + 'type' => 'string', + 'example' => 'http://xxxx', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"16AF921B-8187-489F-9913-43C808B4****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"ActiveTargets\\": [\\n {\\n \\"DiscoveredLabels\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"__meta_kubernetes_pod_label_pod_template_hash\\\\\\": \\\\\\"7477c58b8d\\\\\\",\\\\n \\\\\\"__meta_kubernetes_endpoints_name\\\\\\": \\\\\\"mysql-exporter-mysql-1694448841945-service\\\\\\",\\\\n \\\\\\"__meta_kubernetes_endpoint_port_name\\\\\\": \\\\\\"metrics\\\\\\"\\\\n}\\"\\n },\\n \\"GlobalUrl\\": \\"http://xxx\\",\\n \\"Health\\": \\"up\\",\\n \\"Labels\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"endpoint\\\\\\": \\\\\\"metrics\\\\\\",\\\\n \\\\\\"instance\\\\\\": \\\\\\"172.16.0.9:9104\\\\\\",\\\\n \\\\\\"pod\\\\\\": \\\\\\"mysql-1694570927659-7655486df8-djg22\\\\\\",\\\\n \\\\\\"service\\\\\\": \\\\\\"mysql-exporter-mysql-1694570927659-service\\\\\\",\\\\n \\\\\\"namespace\\\\\\": \\\\\\"arms-prom\\\\\\",\\\\n \\\\\\"job\\\\\\": \\\\\\"mysql-exporter-mysql-1694570927659-service\\\\\\"\\\\n }\\"\\n },\\n \\"LastError\\": \\"Get \\\\\\\\\\\\\\"http://172.16.0.86:9104/metrics\\\\\\\\\\\\\\": dial tcp 172.16.0.86:9104: connect: connection refused\\",\\n \\"LastScrape\\": \\"2023-10-12T07:15:47.306691514Z\\",\\n \\"LastScrapeDuration\\": 0.00127593,\\n \\"LastScrapeSeries\\": 122,\\n \\"ScrapePool\\": \\"arms-prom/mysql-exporter-mysql-1694429267986-sm/0\\\\\\"\\",\\n \\"ScrapeUrl\\": \\"http://xxxx\\"\\n }\\n ],\\n \\"DroppedTargets\\": [\\n {\\n \\"DiscoveredLabels\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"__meta_kubernetes_pod_label_pod_template_hash\\\\\\": \\\\\\"7477c58b8d\\\\\\",\\\\n \\\\\\"__meta_kubernetes_endpoints_name\\\\\\": \\\\\\"mysql-exporter-mysql-1694448841945-service\\\\\\",\\\\n \\\\\\"__meta_kubernetes_endpoint_port_name\\\\\\": \\\\\\"metrics\\\\\\"\\\\n}\\"\\n },\\n \\"GlobalUrl\\": \\"http://xxx\\",\\n \\"Health\\": \\"up\\",\\n \\"Labels\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"endpoint\\\\\\": \\\\\\"metrics\\\\\\",\\\\n \\\\\\"instance\\\\\\": \\\\\\"172.16.0.9:9104\\\\\\",\\\\n \\\\\\"pod\\\\\\": \\\\\\"mysql-1694570927659-7655486df8-djg22\\\\\\",\\\\n \\\\\\"service\\\\\\": \\\\\\"mysql-exporter-mysql-1694570927659-service\\\\\\",\\\\n \\\\\\"namespace\\\\\\": \\\\\\"arms-prom\\\\\\",\\\\n \\\\\\"job\\\\\\": \\\\\\"mysql-exporter-mysql-1694570927659-service\\\\\\"\\\\n }\\"\\n },\\n \\"LastError\\": \\"Get \\\\\\\\\\\\\\"http://172.16.0.86:9104/metrics\\\\\\\\\\\\\\": dial tcp 172.16.0.86:9104: connect: connection refused\\",\\n \\"LastScrape\\": \\"2023-10-12T07:15:47.306691514Z\\",\\n \\"LastScrapeDuration\\": 0.00127593,\\n \\"LastScrapeSeries\\": 122,\\n \\"ScrapePool\\": \\"arms-prom/mysql-exporter-mysql-1694429267986-sm/0\\\\\\"\\",\\n \\"ScrapeUrl\\": \\"http://xxxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListEnvironmentMetricTargets', + ], + 'ListEnvironmentAddons' => [ + 'summary' => 'Queries the information about the add-ons that are installed in an environment.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '32940175-181B-4B93-966E-4BB69176****', + ], + 'Code' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'message', + ], + 'Success' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The result of the operation.'."\n", + 'type' => 'object', + 'properties' => [ + 'Addons' => [ + 'description' => 'The queried add-ons.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the add-on.'."\n", + 'type' => 'object', + 'properties' => [ + 'Alias' => [ + 'description' => 'The alias of the add-on.'."\n", + 'type' => 'string', + 'example' => 'MySQL', + ], + 'Categories' => [ + 'description' => 'The tags of the add-on.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags.'."\n", + 'type' => 'string', + 'example' => 'cloud', + ], + ], + 'Dashboards' => [ + 'description' => 'The dashboards.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'description' => 'The description of the dashboard.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Name' => [ + 'description' => 'The name of the dashboard.'."\n", + 'type' => 'string', + 'example' => 'mysql-overview', + ], + 'Url' => [ + 'description' => 'The URL of the dashboard.'."\n", + 'type' => 'string', + 'example' => 'http://xxxx', + ], + ], + ], + ], + 'Description' => [ + 'description' => 'The description of the add-on.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Environments' => [ + 'description' => 'The supported environments.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the environment.'."\n", + 'type' => 'object', + 'properties' => [ + 'Dependencies' => [ + 'description' => 'The dependencies of the environment.'."\n", + 'type' => 'object', + 'properties' => [ + 'Features' => [ + 'description' => 'The feature that can be installed in the environment.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'boolean', + 'description' => 'Indicates whether the feature is supported.'."\n", + 'example' => 'true', + ], + ], + 'Services' => [ + 'description' => 'The services.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The service name.'."\n", + 'type' => 'string', + 'example' => 'ResourceCenter', + ], + ], + 'ClusterTypes' => [ + 'description' => 'The cluster type.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The cluster type.'."\n", + 'type' => 'string', + 'example' => 'Edge', + ], + ], + ], + ], + 'Description' => [ + 'description' => 'The description of the environment.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Enable' => [ + 'description' => 'Indicates whether the feature is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Label' => [ + 'description' => 'The tag of the environment.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Name' => [ + 'description' => 'The name of the environment.'."\n", + 'type' => 'string', + 'example' => 'CS', + ], + 'Policies' => [ + 'description' => 'The control policies in the environment.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlertDefaultStatus' => [ + 'description' => 'The default alert status.'."\n", + 'type' => 'string', + 'example' => 'default', + ], + 'DefaultInstall' => [ + 'description' => 'The default installation status.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'TargetAddonName' => [ + 'description' => 'The target name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'cloud-rds-mysql', + ], + 'Protocols' => [ + 'description' => 'The supported protocols.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the protocol.'."\n", + 'type' => 'string', + 'example' => 'arms', + ], + 'Icon' => [ + 'description' => 'The URL of the protocol icon.'."\n", + 'type' => 'string', + 'example' => 'http://xxxxxxx', + ], + 'Label' => [ + 'description' => 'The tag of the protocol.'."\n", + 'type' => 'string', + 'example' => 'ARMS', + ], + 'Description' => [ + 'description' => 'The description of the protocol.'."\n", + 'type' => 'string', + 'example' => 'ARMS', + ], + ], + ], + ], + 'MetricCheckRule' => [ + 'description' => 'The metric check rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'PromQL' => [ + 'description' => 'The PromQL statements.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The PromQL statements.'."\n", + 'type' => 'string', + 'example' => 'max(flink_taskmanager_job_task_operator_currentEmitEventTimeLag{deploymentId=\'983d8f2d-14a9-4af0-a23d-751a7818c239\'}/1000) >= 600.0', + ], + ], + ], + ], + 'NeedRestartAfterIntegration' => [ + 'description' => 'Indicates whether a restart is required after the installation.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'EnableServiceAccount' => [ + 'description' => 'Indicates whether a service account is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + ], + 'Icon' => [ + 'description' => 'The URL of the icon.'."\n", + 'type' => 'string', + 'example' => 'http://xxxx', + ], + 'Keywords' => [ + 'description' => 'The collection of keywords.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The keyword.'."\n", + 'type' => 'string', + 'example' => 'Java', + ], + ], + 'Language' => [ + 'description' => 'The language.'."\n", + 'type' => 'string', + 'example' => 'zh', + ], + 'Name' => [ + 'description' => 'The name of the add-on.'."\n", + 'type' => 'string', + 'example' => 'mysql', + ], + 'Once' => [ + 'description' => 'Indicates whether the add-on can be installed only once.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'Scene' => [ + 'description' => 'The scenario.'."\n", + 'type' => 'string', + 'example' => 'database', + ], + 'Version' => [ + 'description' => 'The version of the agent.'."\n", + 'type' => 'string', + 'example' => '0.0.1', + ], + 'Weight' => [ + 'description' => 'The weight.'."\n", + 'type' => 'string', + 'example' => '857', + ], + 'LatestReleaseCreateTime' => [ + 'description' => 'The time when the instance was last created.'."\n", + 'type' => 'string', + 'example' => '2023-09-22T16:56:29+08:00', + ], + ], + ], + ], + 'Total' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"32940175-181B-4B93-966E-4BB69176****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Addons\\": [\\n {\\n \\"Alias\\": \\"MySQL\\",\\n \\"Categories\\": [\\n \\"cloud\\"\\n ],\\n \\"Dashboards\\": [\\n {\\n \\"Description\\": \\"MySQL监控大盘信息,监控了连接信息,使用信息等指标\\",\\n \\"Name\\": \\"mysql-overview\\",\\n \\"Url\\": \\"http://xxxx\\"\\n }\\n ],\\n \\"Description\\": \\"通过 MySQL Exporter 监控数据库指标\\",\\n \\"Environments\\": [\\n {\\n \\"Dependencies\\": {\\n \\"Features\\": {\\n \\"key\\": true\\n },\\n \\"Services\\": [\\n \\"ResourceCenter\\"\\n ],\\n \\"ClusterTypes\\": [\\n \\"Edge\\"\\n ]\\n },\\n \\"Description\\": \\"MySQL 服务部署在 Kubernetes 集群中。\\",\\n \\"Enable\\": true,\\n \\"Label\\": \\"容器环境\\",\\n \\"Name\\": \\"CS\\",\\n \\"Policies\\": {\\n \\"AlertDefaultStatus\\": \\"default\\",\\n \\"DefaultInstall\\": false,\\n \\"TargetAddonName\\": \\"cloud-rds-mysql\\",\\n \\"Protocols\\": [\\n {\\n \\"Name\\": \\"arms\\",\\n \\"Icon\\": \\"http://xxxxxxx\\",\\n \\"Label\\": \\"ARMS\\",\\n \\"Description\\": \\"ARMS\\"\\n }\\n ],\\n \\"MetricCheckRule\\": {\\n \\"PromQL\\": [\\n \\"max(flink_taskmanager_job_task_operator_currentEmitEventTimeLag{deploymentId=\'983d8f2d-14a9-4af0-a23d-751a7818c239\'}/1000) >= 600.0\\"\\n ]\\n },\\n \\"NeedRestartAfterIntegration\\": true,\\n \\"EnableServiceAccount\\": true\\n }\\n }\\n ],\\n \\"Icon\\": \\"http://xxxx\\",\\n \\"Keywords\\": [\\n \\"Java\\"\\n ],\\n \\"Language\\": \\"zh\\",\\n \\"Name\\": \\"mysql\\",\\n \\"Once\\": false,\\n \\"Scene\\": \\"database\\",\\n \\"Version\\": \\"0.0.1\\",\\n \\"Weight\\": \\"857\\",\\n \\"LatestReleaseCreateTime\\": \\"2023-09-22T16:56:29+08:00\\"\\n }\\n ],\\n \\"Total\\": 1\\n }\\n}","type":"json"}]', + 'title' => 'ListEnvironmentAddons', + ], + 'ListEnvironmentAlertRules' => [ + 'summary' => 'Queries the alert groups of an environment instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'EnvironmentId', + 'in' => 'query', + 'schema' => [ + 'title' => '环境id', + 'description' => 'The environment ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'env-xxx', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AddonName', + 'in' => 'query', + 'schema' => [ + 'title' => 'addon的名称,addonName和scene必填一个', + 'description' => 'The name of the add-on. You must specify AddonName or Scene.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mysql', + ], + ], + [ + 'name' => 'Scene', + 'in' => 'query', + 'schema' => [ + 'title' => '场景,addonName和scene必填一个', + 'description' => 'The scenario of the add-on. You must specify AddonName or Scene.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'database', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4C518054-852F-4023-ABC1-4AF95FF7****', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Groups' => [ + 'description' => 'The queried alert groups.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The alert group.'."\n", + 'type' => 'string', + 'example' => 'mysql-CS-MySQLdAlerts', + ], + ], + 'Rules' => [ + 'description' => 'The queried rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlertId' => [ + 'description' => 'The ID of the alert rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '9502571', + ], + 'Name' => [ + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'mysql-CS-MySQLInnoDBLogWaits_lu', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '26', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4C518054-852F-4023-ABC1-4AF95FF7****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"message\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Groups\\": [\\n \\"mysql-CS-MySQLdAlerts\\"\\n ],\\n \\"Rules\\": [\\n {\\n \\"AlertId\\": 9502571,\\n \\"Name\\": \\"mysql-CS-MySQLInnoDBLogWaits_lu\\"\\n }\\n ],\\n \\"Total\\": 26\\n }\\n}","type":"json"}]', + 'title' => 'ListEnvironmentAlertRules', + ], + 'ListGrafanaWorkspace' => [ + 'summary' => 'Obtain Specified Workspace List', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group to which the Prometheus instance belongs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0080BE65-167F-5CB6-A691-14E2EFD474BC', + ], + 'Data' => [ + 'description' => 'The returned result.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the Grafana workspace.'."\n", + '$ref' => '#/components/schemas/GrafanaWorkspace', + ], + ], + 'Message' => [ + 'description' => 'The error message returned if the request parameters are invalid.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The HTTP status code. 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: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'True', + ], + 'TraceId' => [ + 'description' => 'The trace ID that is used to query the details of the request.'."\n", + 'type' => 'string', + 'example' => 'eac0a8048716731735000007137d000b', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ResourceIdIsIllegal', + 'errorMessage' => 'The specified ResourceId is invalid.', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => 'The sub-account is not authorized and must be granted AliyunARMSFullAccess by a primary account.', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => 'STS authorization failed.', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => 'Illegal user access.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + [ + 'errorCode' => 'AccountUidAccessError', + 'errorMessage' => 'Failed to obtain the user information. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0080BE65-167F-5CB6-A691-14E2EFD474BC\\",\\n \\"Data\\": [\\n {\\n \\"status\\": \\"Starting/Running/Stop/DeleteSucceed\\",\\n \\"description\\": \\"\\",\\n \\"grafanaWorkspaceEdition\\": \\"experts_edition/advanced_edition/standard\\",\\n \\"endTime\\": 1652803200000,\\n \\"grafanaWorkspaceId\\": \\"g-thisisademo666\\",\\n \\"upgradeVersion\\": [\\n \\"\\"\\n ],\\n \\"grafanaWorkspaceIp\\": \\"127.0.0.1:3000\\",\\n \\"snatIp\\": \\"1.1.1.1\\",\\n \\"grafanaWorkspaceDomain\\": \\"\\",\\n \\"grafanaWorkspaceDomainStatus\\": \\"on\\",\\n \\"commercial\\": true,\\n \\"grafanaWorkspaceName\\": \\"\\",\\n \\"grafanaVersion\\": \\"\\",\\n \\"gmtCreate\\": 0,\\n \\"userId\\": \\"66666666\\",\\n \\"maxAccount\\": \\"10\\",\\n \\"regionId\\": \\"cn-hangzhou\\",\\n \\"protocol\\": \\"http/https\\",\\n \\"shareSynced\\": true,\\n \\"ntmId\\": \\"\\",\\n \\"personalDomain\\": \\"\\",\\n \\"personalDomainPrefix\\": \\"\\",\\n \\"resourceGroupId\\": \\"\\",\\n \\"deployType\\": \\"\\",\\n \\"tags\\": [\\n {\\n \\"key\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"privateIp\\": \\"\\",\\n \\"privateDomain\\": \\"\\"\\n }\\n ],\\n \\"Message\\": \\"success\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"TraceId\\": \\"eac0a8048716731735000007137d000b\\"\\n}","type":"json"}]', + 'title' => 'ListGrafanaWorkspace', + 'description' => '>The list returned by this operation includes the workspaces of Developer Edition, Expert Edition, and Advanced Edition. The list does not include the workspaces of Shared Edition.', + ], + 'GetGrafanaWorkspace' => [ + 'summary' => 'Queries the information about a Grafana workspace.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GrafanaWorkspaceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the workspace.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'grafana-cn-4xl3g******', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '2C3F217B-9AAE-5D51-974D-48********', + ], + 'Data' => [ + 'description' => 'The information about the Grafana workspace.'."\n", + '$ref' => '#/components/schemas/GrafanaWorkspace', + ], + 'Message' => [ + 'description' => 'The error message returned when the request parameters are invalid.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned for the request. Valid values:'."\n" + ."\n" + .'* `2XX`: The request is successful.'."\n" + .'* `3XX`: A redirection message is returned.'."\n" + .'* `4XX`: The request is invalid.'."\n" + .'* `5XX`: A server error occurs.'."\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', + ], + 'TraceId' => [ + 'description' => 'The ID of the trace. The ID is used to query the details of a request.'."\n", + 'type' => 'string', + 'example' => 'eac0a8048716731735000007137d000b', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ResourceIdIsIllegal', + 'errorMessage' => 'The specified ResourceId is invalid.', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => 'The sub-account is not authorized and must be granted AliyunARMSFullAccess by a primary account.', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => 'STS authorization failed.', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => 'Illegal user access.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + [ + 'errorCode' => 'AccountUidAccessError', + 'errorMessage' => 'Failed to obtain the user information. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2C3F217B-9AAE-5D51-974D-48********\\",\\n \\"Data\\": {\\n \\"status\\": \\"Starting/Running/Stop/DeleteSucceed\\",\\n \\"description\\": \\"\\",\\n \\"grafanaWorkspaceEdition\\": \\"experts_edition/advanced_edition/standard\\",\\n \\"endTime\\": 1652803200000,\\n \\"grafanaWorkspaceId\\": \\"g-thisisademo666\\",\\n \\"upgradeVersion\\": [\\n \\"\\"\\n ],\\n \\"grafanaWorkspaceIp\\": \\"127.0.0.1:3000\\",\\n \\"snatIp\\": \\"1.1.1.1\\",\\n \\"grafanaWorkspaceDomain\\": \\"\\",\\n \\"grafanaWorkspaceDomainStatus\\": \\"on\\",\\n \\"commercial\\": true,\\n \\"grafanaWorkspaceName\\": \\"\\",\\n \\"grafanaVersion\\": \\"\\",\\n \\"gmtCreate\\": 0,\\n \\"userId\\": \\"66666666\\",\\n \\"maxAccount\\": \\"10\\",\\n \\"regionId\\": \\"cn-hangzhou\\",\\n \\"protocol\\": \\"http/https\\",\\n \\"shareSynced\\": true,\\n \\"ntmId\\": \\"\\",\\n \\"personalDomain\\": \\"\\",\\n \\"personalDomainPrefix\\": \\"\\",\\n \\"resourceGroupId\\": \\"\\",\\n \\"deployType\\": \\"\\",\\n \\"tags\\": [\\n {\\n \\"key\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"privateIp\\": \\"\\",\\n \\"privateDomain\\": \\"\\"\\n },\\n \\"Message\\": \\"success\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"TraceId\\": \\"eac0a8048716731735000007137d000b\\"\\n}","type":"json"}]', + 'title' => 'GetGrafanaWorkspace', + 'description' => 'Note: The list returned by this operation includes the workspaces of Developer Edition, Expert Edition, and Advanced Edition. The list does not include the workspaces of Shared Edition.'."\n", + ], + 'CreateGrafanaWorkspace' => [ + 'summary' => 'Creates a workspace in Managed Service for Grafana.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '164616', + 'abilityTreeNodes' => [ + 'FEATUREarmsRY7LT8', + ], + 'autoTest' => false, + 'notSupportAutoTestReason' => '涉及数据库任务,为了客户恢复需求,数据库资源不做释放,自动化调用资源浪费', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GrafanaWorkspaceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the Grafana workspace.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'testgrafana', + ], + ], + [ + 'name' => 'GrafanaWorkspaceEdition', + 'in' => 'query', + 'schema' => [ + 'description' => 'The edition.'."\n" + ."\n" + .'**Valid values:**'."\n" + ."\n" + .'* standard: `Beta Edition or Standard Edition`'."\n" + .'* personal_edition: Developer Edition'."\n" + .'* experts_edition: Pro Edition'."\n" + .'* advanced_edition: Advanced Edition'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [], + 'example' => 'experts_edition', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => 'The description of the workspace', + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'GrafanaVersion', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '10.0.x', + ], + ], + [ + 'name' => 'Password', + 'in' => 'query', + 'schema' => [ + 'description' => 'The password of the workspace. The password must be 8 to 30 characters in length. It must include at least three of the following characters types: uppercase letter, lowercase letter, digit, and special character. Special characters include () \' ~ ! @ # $ % ^ & \\* - \\_ + =.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Test123456!', + ], + ], + [ + 'name' => 'AutoRenew', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'PricingCycle', + 'in' => 'query', + 'schema' => [ + 'description' => '包年包月的计费周期,取值: Month(默认值):按月购买。 Year:按年购买。', + 'type' => 'string', + 'required' => false, + 'example' => 'Month', + ], + ], + [ + 'name' => 'Duration', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '6', + ], + ], + [ + 'name' => 'AccountNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'CustomAccountNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'description' => 'The language. Default value: zh. Valid values:'."\n" + ."\n" + .'* zh'."\n" + .'* en'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + 'default' => 'zh', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'D80ADAAC-8C32-5479-BD14-C28CF832****', + ], + 'Data' => [ + 'description' => 'The information about the Grafana workspace.'."\n", + '$ref' => '#/components/schemas/GrafanaWorkspace', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\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', + ], + 'TraceId' => [ + 'description' => 'The ID of the trace.'."\n", + 'type' => 'string', + 'example' => 'eac0a8048716731735000007137d000b', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ResourceIdIsIllegal', + 'errorMessage' => 'The specified ResourceId is invalid.', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => 'The sub-account is not authorized and must be granted AliyunARMSFullAccess by a primary account.', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => 'STS authorization failed.', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => 'Illegal user access.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + [ + 'errorCode' => 'AccountUidAccessError', + 'errorMessage' => 'Failed to obtain the user information. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D80ADAAC-8C32-5479-BD14-C28CF832****\\",\\n \\"Data\\": {\\n \\"status\\": \\"Starting/Running/Stop/DeleteSucceed\\",\\n \\"description\\": \\"\\",\\n \\"grafanaWorkspaceEdition\\": \\"experts_edition/advanced_edition/standard\\",\\n \\"endTime\\": 1652803200000,\\n \\"grafanaWorkspaceId\\": \\"g-thisisademo666\\",\\n \\"upgradeVersion\\": [\\n \\"\\"\\n ],\\n \\"grafanaWorkspaceIp\\": \\"127.0.0.1:3000\\",\\n \\"snatIp\\": \\"1.1.1.1\\",\\n \\"grafanaWorkspaceDomain\\": \\"\\",\\n \\"grafanaWorkspaceDomainStatus\\": \\"on\\",\\n \\"commercial\\": true,\\n \\"grafanaWorkspaceName\\": \\"\\",\\n \\"grafanaVersion\\": \\"\\",\\n \\"gmtCreate\\": 0,\\n \\"userId\\": \\"66666666\\",\\n \\"maxAccount\\": \\"10\\",\\n \\"regionId\\": \\"cn-hangzhou\\",\\n \\"protocol\\": \\"http/https\\",\\n \\"shareSynced\\": true,\\n \\"ntmId\\": \\"\\",\\n \\"personalDomain\\": \\"\\",\\n \\"personalDomainPrefix\\": \\"\\",\\n \\"resourceGroupId\\": \\"\\",\\n \\"deployType\\": \\"\\",\\n \\"tags\\": [\\n {\\n \\"key\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ],\\n \\"privateIp\\": \\"\\",\\n \\"privateDomain\\": \\"\\"\\n },\\n \\"Message\\": \\"success\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"TraceId\\": \\"eac0a8048716731735000007137d000b\\"\\n}","type":"json"}]', + 'title' => 'CreateGrafanaWorkspace', + 'description' => 'Before you call the operation, make sure that you have learned about the billing methods and [pricing](https://www.alibabacloud.com/help/zh/grafana/product-overview/billing-4?spm=a2c4g.11186623.0.0.14c2d253B3SDbt) of Managed Service for Grafana.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* To create workspaces, you must complete real-name verification.'."\n" + ."\n" + .'* Regular users can create workspaces only in Managed Service for Grafana Developer Edition, Pro Edition, and Advanced Edition. `These editions charge fees.`'."\n" + ."\n" + .'* Internal users can create workspaces only in Managed Service for Grafana Beta Edition and Standard Edition. `These editions do not charge fees.`'."\n", + ], + 'UpdateGrafanaWorkspace' => [ + 'summary' => 'Updates the information about a Grafana workspace.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The region ID. Default value: `cn-hangzhou`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GrafanaWorkspaceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the workspace.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'grafana-cn-4xl3g******', + ], + ], + [ + 'name' => 'GrafanaWorkspaceName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The workspace name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testGrafana', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'description' => 'The description of the workspace.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '16AF921B-8187-489F-9913-43C808B4****', + ], + 'Message' => [ + 'description' => 'The error message returned for the request.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned for the request. Valid values:'."\n" + ."\n" + .'* `2XX`: The request is successful.'."\n" + .'* `3XX`: A redirection message is returned.'."\n" + .'* `4XX`: The request is invalid.'."\n" + .'* `5XX`: A server error occurs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TraceId' => [ + 'description' => 'The ID of the trace. The ID is used to query the details of a request.'."\n", + 'type' => 'string', + 'example' => 'eac0a8048716731735000007137d000b', + ], + 'Data' => [ + 'description' => 'Indicates whether the update is successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ResourceIdIsIllegal', + 'errorMessage' => 'The specified ResourceId is invalid.', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => 'The sub-account is not authorized and must be granted AliyunARMSFullAccess by a primary account.', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => 'STS authorization failed.', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => 'Illegal user access.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + [ + 'errorCode' => 'AccountUidAccessError', + 'errorMessage' => 'Failed to obtain the user information. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"16AF921B-8187-489F-9913-43C808B4****\\",\\n \\"Message\\": \\"message\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"TraceId\\": \\"eac0a8048716731735000007137d000b\\",\\n \\"Data\\": true\\n}","type":"json"}]', + 'title' => 'UpdateGrafanaWorkspace', + ], + 'UpdateGrafanaWorkspaceVersion' => [ + 'summary' => 'Updates the version of a Grafana workspace.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GrafanaWorkspaceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the workspace.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'grafana-cn-4xl3g******', + ], + ], + [ + 'name' => 'GrafanaVersion', + 'in' => 'query', + 'schema' => [ + 'description' => 'The Grafana version.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '10.0.x', + ], + ], + [ + 'name' => 'AliyunLang', + 'in' => 'query', + 'schema' => [ + 'description' => 'The language. Valid values: zh and en. Default value: zh.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '2A0CEDF1-06FE-44AC-8E21-21A5BE65****', + ], + 'Message' => [ + 'description' => 'The error message returned for the request.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned for the request. Valid values:'."\n" + ."\n" + .'* `2XX`: The request is successful.'."\n" + .'* `3XX`: A redirection message is returned.'."\n" + .'* `4XX`: The request is invalid.'."\n" + .'* `5XX`: A server error occurs.'."\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', + ], + 'TraceId' => [ + 'description' => 'The ID of the trace. The ID is used to query the details of a request.'."\n", + 'type' => 'string', + 'example' => 'eac0a8048716731735000007137d000b', + ], + 'Data' => [ + 'description' => 'Indicates whether the update is successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ResourceIdIsIllegal', + 'errorMessage' => 'The specified ResourceId is invalid.', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => 'The sub-account is not authorized and must be granted AliyunARMSFullAccess by a primary account.', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => 'STS authorization failed.', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => 'Illegal user access.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + [ + 'errorCode' => 'AccountUidAccessError', + 'errorMessage' => 'Failed to obtain the user information. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2A0CEDF1-06FE-44AC-8E21-21A5BE65****\\",\\n \\"Message\\": \\"success\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"TraceId\\": \\"eac0a8048716731735000007137d000b\\",\\n \\"Data\\": true\\n}","type":"json"}]', + 'title' => 'UpdateGrafanaWorkspaceVersion', + 'description' => 'Note: The list returned by this operation includes the workspaces of Developer Edition, Expert Edition, and Advanced Edition. The list does not include the workspaces of Shared Edition.'."\n", + ], + 'DeleteGrafanaWorkspace' => [ + 'summary' => 'Deletes a Managed Service for Prometheus workspace.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'autoTest' => false, + 'notSupportAutoTestReason' => '涉及数据库任务,为了客户恢复需求,数据库资源不做释放,自动化调用资源浪费', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'GrafanaWorkspaceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the workspace.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'grafana-rnglkcdrntlhk0****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '27E653FA-5958-45BE-8AA9-14D884DC****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\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', + ], + 'TraceId' => [ + 'description' => 'The ID of the trace. The ID is used to query the details of a request.'."\n", + 'type' => 'string', + 'example' => 'eac0a8048716731735000007137d000b', + ], + 'Data' => [ + 'description' => 'Indicates whether the workspace was deleted. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ResourceIdIsIllegal', + 'errorMessage' => 'The specified ResourceId is invalid.', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => 'The sub-account is not authorized and must be granted AliyunARMSFullAccess by a primary account.', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => 'STS authorization failed.', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => 'Illegal user access.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + [ + 'errorCode' => 'AccountUidAccessError', + 'errorMessage' => 'Failed to obtain the user information. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"27E653FA-5958-45BE-8AA9-14D884DC****\\",\\n \\"Message\\": \\"success\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"TraceId\\": \\"eac0a8048716731735000007137d000b\\",\\n \\"Data\\": true\\n}","type":"json"}]', + 'title' => 'DeleteGrafanaWorkspace', + 'description' => '* You can delete workspaces only in Managed Service for Prometheus Beta Edition, which is `free of charge`.'."\n" + ."\n" + .'* You cannot delete workspaces in Managed Service for Prometheus Developer Edition, Pro Edition, and Advanced Edition. You can go to the [User Center](https://usercenter2.aliyun.com/refund/refund) to unsubscribe from workspaces.', + ], + 'ApplyScenario' => [ + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-zhangjaikou', + ], + ], + [ + 'name' => 'Scenario', + 'in' => 'query', + 'schema' => [ + 'description' => 'The scenario where you want to use the business monitoring job. Valid values:'."\n" + ."\n" + .'* `USER-DEFINED`: user-defined. This is the default value.'."\n" + .'* `EDAS-ROLLOUT`: application release in Enterprise Distributed Application Service (EDAS)'."\n" + .'* `OAM-ROLLOUT`: application release based on Open Application Model (OAM)'."\n" + .'* `MSC-CANARY`: canary release based on Microservice Engine (MSE)'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'USER-DEFINED', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the business monitoring job.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'ScenarioName', + ], + ], + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the application.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'b590lhguqs@28f515462f******', + ], + ], + [ + 'name' => 'Sign', + 'in' => 'query', + 'schema' => [ + 'description' => 'The code of the business monitoring job. This parameter is not required when you create a business monitoring job. However, this parameter is required when you update a business monitoring job.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'a9f8****', + ], + ], + [ + 'name' => 'Config', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The configuration of the business monitoring job. The value is a JSON string. For more information about this parameter, see the following additional information about the **Config** parameter.'."\n", + 'type' => 'object', + 'required' => true, + 'docRequired' => true, + 'example' => '{"rpcType":"0","nameMatchType":"EQUALS","service":"/api/pop/test","operator":"and","filterItems":[{"type":"HttpHeaders","key":"uid","opt":"==","value":"123456789"}],"group":{"type":"HttpRequestParameters","key":"name"}}', + ], + ], + [ + 'name' => 'SnTransfer', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether the coloring sign is transparently passed down to downstream application nodes in the trace.'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`: This is the default value.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'SnStat', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to count traffic based on the coloring sign.'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`: This is the default value.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'SnDump', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to record business parameters to the trace marked with the coloring sign.'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`: This is the default value.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'SnForce', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether traffic in the trace marked with the coloring sign is all collected.'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`: This is the default value.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'UpdateOption', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether the operation is an update operation.'."\n" + ."\n" + .'* `true`: update'."\n" + .'* `false`: insert'."\n", + 'type' => 'boolean', + 'required' => true, + 'docRequired' => true, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Result' => [ + 'description' => 'The code of the business monitoring job, which is the coloring sign.'."\n", + 'type' => 'string', + 'example' => '2b97****', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'EA24D522-AD35-47B8-8CB2-ADBC38******', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Result\\": \\"2b97****\\",\\n \\"RequestId\\": \\"EA24D522-AD35-47B8-8CB2-ADBC38******\\"\\n}","errorExample":""},{"type":"xml","example":"<ApplyScenarioResponse>\\n <RequestId>EA24D522-AD35-47B8-8CB2-ADBC38******</RequestId>\\n <Result>2b97****</Result>\\n</ApplyScenarioResponse>","errorExample":""}]', + 'title' => 'ApplyScenario', + 'requestParamsDescription' => '## Additional information about the **Config** parameter'."\n" + ."\n" + .'**JSON string example and description**'."\n" + ."\n" + .'```'."\n" + ."\n" + .'{'."\n" + .' "rpcType":"0", //The service type. 0: HTTP ingress. 255: Kubernete Pod Metadata.'."\n" + .' "nameMatchType":"EQUALS", //The matching mode of the service name. EQUALS: equal. STARTSWITH: equal to the start. CONTAINS: contains. ENDSWITH: equal to the end. PATTERNS: mode matching.'."\n" + .' "service":"/api/pop/test", // The name of the service.'."\n" + .' "operator":"and", //The relationship among filter rules. and: All the rules are met. or: A rule is met.'."\n" + .' "filterItems": //The filter rules.'."\n" + .' [{'."\n" + .' "type":"HttpHeaders", //The matching parameters for the filter rules. For more information, see the next section.'."\n" + .' "key":"uid", //The value of the key that matches the filter field.'."\n" + .' "opt":"==", //The matching mode. Support ==, !=, and contains.'."\n" + .' "value":"123456789" //The threshold of the filter field.'."\n" + .' }],'."\n" + .' "group": //The grouping rule.'."\n" + .' {'."\n" + .' "type":"HttpRequestParameters", //The matching parameters for the grouping rule. For more information, see the next section.'."\n" + .' "key":"name" //The value of the key that matches the grouping rule.'."\n" + .' }'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'**Matching parameters for the filter rules**'."\n" + ."\n" + .'When rpcType is set to 0, the service type is HTTP ingress and the matching parameters are the following parameters:'."\n" + ."\n" + .'* HttpRequestParameters'."\n" + .'* HttpHeaders'."\n" + .'* HttpCookies'."\n" + .'* HttpMethod'."\n" + .'* HttpPathVariables'."\n" + ."\n" + .'When rpcType is set to 255, the service type is Kubernete Pod Metadata and the matching parameters are the following parameters:'."\n" + ."\n" + .'* k8sPodLabel'."\n" + .'* k8sPodAnnotation'."\n" + .'* k8sPodName'."\n" + .'* k8sPodNamespace'."\n" + .'* k8sPodUID'."\n" + .'* k8sPodIp'."\n" + .'* k8sPodServiceAccount'."\n" + ."\n" + .'**Matching parameters for the grouping rule**'."\n" + ."\n" + .'When rpcType is set to 0, the service type is HTTP ingress and the matching parameters are the following parameters:'."\n" + ."\n" + .'* HttpRequestParameters'."\n" + .'* HttpHeaders'."\n" + .'* HttpCookies'."\n" + .'* HttpMethod'."\n" + .'* HttpPathVariables'."\n" + ."\n" + .'When rpcType is set to 255, the service type is Kubernete Pod Metadata and the matching parameters are the following parameters:'."\n" + ."\n" + .'* k8sPodLabel'."\n" + .'* k8sPodAnnotation'."\n" + .'* k8sPodName'."\n" + .'* k8sPodNamespace'."\n" + .'* k8sPodUID'."\n" + .'* k8sPodIp'."\n" + .'* k8sPodServiceAccount'."\n", + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteScenario' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ScenarioId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the business monitoring job. You can obtain the ID by calling the ListScenario operation.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'minimum' => '1', + 'example' => '132', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-zhangjaikou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Result' => [ + 'description' => 'Indicates whether the request is successful.'."\n" + ."\n" + .'* `true`: successful'."\n" + .'* `false`: failed'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'EA24D522-AD35-47B8-8CB2-ADBC382B****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Result\\": true,\\n \\"RequestId\\": \\"EA24D522-AD35-47B8-8CB2-ADBC382B****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteScenarioResponse>\\n <RequestId>EA24D522-AD35-47B8-8CB2-ADBC382B****</RequestId>\\n <Result>true</Result>\\n</DeleteScenarioResponse>","errorExample":""}]', + 'title' => 'DeleteScenario', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ListScenario' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-zhangjaikou', + ], + ], + [ + 'name' => 'Scenario', + 'in' => 'query', + 'schema' => [ + 'description' => 'The scenario where the business monitoring job is used. Valid values:'."\n" + ."\n" + .'* `USER-DEFINED`: user-defined. This is the default value.'."\n" + .'* `EDAS-ROLLOUT`: application release in Enterprise Distributed Application Service (EDAS)'."\n" + .'* `OAM-ROLLOUT`: application release based on Open Application Model (OAM)'."\n" + .'* `MSC-CANARY`: canary release based on Microservice Engine (MSE)'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'USER-DEFINED', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the business monitoring job.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'pro-content', + ], + ], + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the application.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'b590lhguqs@28f515462******', + ], + ], + [ + 'name' => 'Sign', + 'in' => 'query', + 'schema' => [ + 'description' => 'The code of the business monitoring job. Set this parameter when you know the code of the business monitoring job you want to query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'a9f8****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '98027D1F-3AEB-492C-A4AA-E9217992****', + ], + 'ArmsScenarios' => [ + 'description' => 'The detailed information of the business monitoring job.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'UpdateTime' => [ + 'description' => 'The time when the business monitoring job was updated.'."\n", + 'type' => 'string', + 'example' => '1585214916000', + ], + 'AppId' => [ + 'description' => 'The ID of the application.'."\n", + 'type' => 'string', + 'example' => 'b590lhguqs@28f515462******', + ], + 'Sign' => [ + 'description' => 'The code of the business monitoring job.'."\n", + 'type' => 'string', + 'example' => 'a9f8****', + ], + 'CreateTime' => [ + 'description' => 'The time when the business monitoring job was created.'."\n", + 'type' => 'string', + 'example' => '1585214916000', + ], + 'UserId' => [ + 'description' => 'The ID of the user.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'Extensions' => [ + 'description' => 'The extended information. The value is a JSON string.'."\n", + 'type' => 'string', + 'example' => '{"_MODE": "CUSTOM-TRANSACTION","_SCENARIO": "USER-DEFINED"}', + ], + 'Name' => [ + 'description' => 'The name of the business monitoring job.'."\n", + 'type' => 'string', + 'example' => 'k8s_deployment_css-guns-vip-main-prod_silence', + ], + 'Id' => [ + 'description' => 'The ID of the business monitoring job.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '132', + ], + 'RegionId' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'example' => 'cn-zhangjiakou', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"98027D1F-3AEB-492C-A4AA-E9217992****\\",\\n \\"ArmsScenarios\\": [\\n {\\n \\"UpdateTime\\": \\"1585214916000\\",\\n \\"AppId\\": \\"b590lhguqs@28f515462******\\",\\n \\"Sign\\": \\"a9f8****\\",\\n \\"CreateTime\\": \\"1585214916000\\",\\n \\"UserId\\": \\"113197164949****\\",\\n \\"Extensions\\": \\"{\\\\\\"_MODE\\\\\\": \\\\\\"CUSTOM-TRANSACTION\\\\\\",\\\\\\"_SCENARIO\\\\\\": \\\\\\"USER-DEFINED\\\\\\"}\\",\\n \\"Name\\": \\"测试业务监控\\",\\n \\"Id\\": 132,\\n \\"RegionId\\": \\"cn-zhangjiakou\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListScenarioResponse>\\n<RequestId>98027D1F-3AEB-492C-A4AA-E9217992****</RequestId>\\n<ArmsScenarios>\\n <AppId>b590lhguqs@28f515462******</AppId>\\n <UserId>113197164949****</UserId>\\n <CreateTime>1585214916000</CreateTime>\\n <UpdateTime>1585214916000</UpdateTime>\\n <Sign>a9f8****</Sign>\\n <RegionId>cn-zhangjiakou</RegionId>\\n <Id>132</Id>\\n <Extensions>{\\"_MODE\\": \\"CUSTOM-TRANSACTION\\",\\"_SCENARIO\\": \\"USER-DEFINED\\"}</Extensions>\\n <Name>测试业务监控</Name>\\n</ArmsScenarios>\\n</ListScenarioResponse>","errorExample":""}]', + 'title' => 'ListScenario', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CreateTimingSyntheticTask' => [ + 'summary' => 'Creates a scheduled synthetic test task.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'title' => '地域ID。', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '拨测任务名称,不允许重复。', + 'description' => 'The name of the task.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'demo-test', + ], + ], + [ + 'name' => 'TaskType', + 'in' => 'query', + 'schema' => [ + 'title' => '任务类型:'."\n" + .'1:ICMP'."\n" + .'2:TCP'."\n" + .'3:DNS'."\n" + .'4:HTTP'."\n" + .'5:网站测速'."\n" + .'6:文件下载'."\n", + 'description' => 'The type of the task. Valid values:'."\n" + ."\n" + .'1: ICMP. 2: TCP. 3: DNS. 4: HTTP. 5: website speed measurement. 6: file download.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '4', + ], + ], + [ + 'name' => 'MonitorConf', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'title' => '监测配置。', + 'description' => 'The monitoring configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'NetICMP' => [ + 'title' => 'ICMP拨测配置参数。当TaskType为1时必填。', + 'description' => 'The parameters of the ICMP synthetic test. This parameter is required if the TaskType parameter is set to 1.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'title' => '拨测目标地址(主机)。', + 'description' => 'The destination IP address or domain name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'www.example.com', + ], + 'Interval' => [ + 'title' => 'ICMP(Ping)数据包发送的时间间隔。单位为毫秒(ms),最小值为200,最大值为2000,默认为200。', + 'description' => 'The interval at which ICMP packets are sent. Unit: milliseconds. Minimum value: 200. Maximum value: 2000. Default value: 200.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '200', + ], + 'PackageNum' => [ + 'title' => '发送ICMP(Ping)数据包的数量。最小值为1,最大值为16,默认为4。', + 'description' => 'The number of ICMP packets that are sent. Minimum value: 1. Maximum value: 50. Default value: 4.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '4', + ], + 'PackageSize' => [ + 'title' => '发送ICMP(Ping)数据包的大小。单位为byte,允许设置为32, 64, 128, 256, 512, 1024。', + 'description' => 'The size of each ICMP packet. Unit: bytes. Valid values: 32, 64, 128, 256, 512, 1024, 1080, and 1450.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [], + 'example' => '32', + ], + 'SplitPackage' => [ + 'title' => '是否拆分ICMP(Ping)数据包。默认为true。', + 'description' => 'Specifies whether to split ICMP packets. Default value: true.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'Timeout' => [ + 'title' => 'ICMP拨测的超时时间。单位为毫秒(ms),最小值为1000,最大值为300000,默认为20000。', + 'description' => 'The timeout period for the ICMP synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 20000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '20000', + ], + 'TracertEnable' => [ + 'title' => '是否开启tracert。默认为true。', + 'description' => 'Specifies whether to enable the tracert command. Default value: true.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'TracertNumMax' => [ + 'title' => 'tracert的最大跃点数。最小值为1,最大值为128,默认为20。', + 'description' => 'The maximum number of hops for the tracert command. Minimum value: 1. Maximum value: 128. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + 'TracertTimeout' => [ + 'title' => 'tracert的超时时间。单位为毫秒(ms),最小值为1000,最大值为300000,默认为60000。', + 'description' => 'The timeout period of the tracert command. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '60000', + ], + ], + 'required' => false, + ], + 'NetTCP' => [ + 'title' => 'TCP拨测的配置参数。当TaskType为2时必填。', + 'description' => 'The parameters of the TCP synthetic test. This parameter is required if the TaskType parameter is set to 2.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'title' => '拨测目标地址(主机)。', + 'description' => 'The IP address of the destination host.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'www.example.com'."\n", + ], + 'ConnectTimes' => [ + 'title' => '建立TCP连接的次数。最小值为1,最大值为16,默认为4。', + 'description' => 'The number of TCP connections that are established. Minimum value: 1. Maximum value: 16. Default value: 4.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '4', + ], + 'Interval' => [ + 'title' => '建立TCP连接的时间间隔。单位为毫秒(ms),最小值为200,最大值为2000,默认为200。', + 'description' => 'The interval at which TCP connections are established. Unit: milliseconds. Minimum value: 200. Maximum value: 10000. Default value: 200.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '200', + ], + 'Timeout' => [ + 'title' => 'TCP拨测超时时间。单位为毫秒(ms),最小值为1000,最大值为300000,默认为20000。', + 'description' => 'The timeout period for the TCP synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 20000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '20000', + ], + 'TracertEnable' => [ + 'title' => '是否开启tracert。默认为true。', + 'description' => 'Specifies whether to enable the tracert command. Default value: true.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'TracertNumMax' => [ + 'title' => 'tracert的最大跃点数。最小值为1,最大值为128,默认为20。', + 'description' => 'The maximum number of hops for the tracert command. Minimum value: 1. Maximum value: 128. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + 'TracertTimeout' => [ + 'title' => 'tracert的超时时间。单位为毫秒(ms),最小值为1000,最大值为300000,默认为60000。', + 'description' => 'The timeout period of the tracert command. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '60000', + ], + ], + 'required' => false, + ], + 'NetDNS' => [ + 'title' => 'DNS拨测的配置参数。当TaskType为3时必填。', + 'description' => 'The parameters of the DNS synthetic test. This parameter is required if the TaskType parameter is set to 3.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'title' => 'DNS拨测的目标地址(域名)。', + 'description' => 'The destination domain name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'www.aliyun.com', + ], + 'DnsServerIpType' => [ + 'title' => 'DNS服务器IP类型。0-自动, 1-IPv4,2-IPv6,默认为0。', + 'description' => 'The IP version of the DNS server.'."\n" + ."\n" + .'* 0 (default): IPv4.'."\n" + .'* 1: IPv6.'."\n" + .'* 2: A version is automatically selected.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'NsServer' => [ + 'title' => 'NS服务器IP,默认114.114.114.114。', + 'description' => 'The IP address of the DNS server. Default value: 114.114.114.114.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '114.114.114.114', + ], + 'QueryMethod' => [ + 'title' => 'DNS查询方式,0-递归,1-迭代,默认为0。', + 'description' => 'The DNS query method. Valid values:'."\n" + ."\n" + .'* 0 (default): recursive'."\n" + .'* 1: iterative'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'Timeout' => [ + 'title' => 'DNS拨测超时时间。单位为毫秒(ms),最小值为1000,最大值为45000,默认为5000。', + 'description' => 'The timeout period for the DNS synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 45000. Default value: 5000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + ], + 'required' => false, + ], + 'ApiHTTP' => [ + 'description' => 'The parameters of the HTTP(S) synthetic test.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The URL or request path for synthetic monitoring.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'http://www.demo.com/api/list', + ], + 'Method' => [ + 'description' => 'The request method. Valid values: GET and POST.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'GET', + ], + 'RequestHeaders' => [ + 'description' => 'The HTTP request header.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + 'description' => 'Format: JSON map.'."\n", + ], + ], + 'RequestBody' => [ + 'description' => 'The HTTP request body.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => 'The content of the request body. Format: JSON string. The parameter is required if the Type parameter is set to text/plain, application/json, application/xml, or text/html. Format: JSON string.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + ], + 'Type' => [ + 'description' => 'The type of the request body. Valid values: text/plain, application/json, application/x-www-form-urlencoded, multipart/form-data, application/xml, and text/html.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'application/json', + ], + ], + 'required' => false, + ], + 'ConnectTimeout' => [ + 'description' => 'The connection timeout period. Unit: milliseconds. Default value: 5000. Minimum value: 1000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'Timeout' => [ + 'description' => 'The timeout period. Unit: milliseconds. Default value: 10000. Minimum value: 1000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10000', + ], + 'CheckCert' => [ + 'description' => 'Specifies whether to verify the certificate. Default value: no.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'ProtocolAlpnProtocol' => [ + 'description' => 'The ALPN protocol version. You can configure this parameter when you perform an HTTPS synthetic test on a WAP mobile client. Valid values:'."\n" + ."\n" + .'0: default'."\n" + ."\n" + .'1: http/1.1'."\n" + ."\n" + .'2: h2'."\n" + ."\n" + .'3: disables the ALPN protocol'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + 'required' => false, + ], + 'Website' => [ + 'description' => 'The parameters of the website speed measurement.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The URL of the website.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://www.aliyun.com', + ], + 'AutomaticScrolling' => [ + 'description' => 'Specifies whether to automatically scroll up and down the screen to load a page.'."\n" + ."\n" + .'* 0 (default): no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'CustomHeader' => [ + 'description' => 'Specifies whether to create a custom header.'."\n" + ."\n" + .'* 0 (default): No custom header is created.'."\n" + .'* 1: A custom header is created for the first packet.'."\n" + .'* 2: A custom header is created for all packets.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'CustomHeaderContent' => [ + 'description' => 'The custom header. Format: JSON map.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'JSON Map'."\n", + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}'."\n", + ], + ], + 'DisableCache' => [ + 'description' => 'Specifies whether to disable caching.'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1 (default): yes'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'DisableCompression' => [ + 'description' => 'Specifies whether to accept compressed files based on the HTTP Accept-Encoding request header. Valid values: 0: no. 1: yes. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'FilterInvalidIP' => [ + 'description' => 'Specifies whether to exclude invalid IP addresses. Valid values: 0: yes. 1: no. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'IgnoreCertificateError' => [ + 'description' => 'Specifies whether to ignore certificate errors during certificate verification in the SSL handshake process and continue browsing. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'MonitorTimeout' => [ + 'description' => 'The monitoring timeout period. Unit: milliseconds. This parameter is optional. Default value: 20000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '20000', + ], + 'Redirection' => [ + 'description' => 'Specifies whether to continue browsing after redirection. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'SlowElementThreshold' => [ + 'description' => 'The time threshold that is used to define a slow element. Unit: milliseconds. Default value: 5000. Minimum value: 1. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'WaitCompletionTime' => [ + 'description' => 'The maximum waiting time. Unit: milliseconds. Default value: 5000. Minimum value: 5000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'VerifyStringBlacklist' => [ + 'description' => 'An arbitrary string in the source code of the page for verification. If the source code returned by the client contains a string that is in the blacklist, the 650 error code is reported, which indicates that the string fails to be verified. Separate multiple strings with vertical bars (|).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'error', + ], + 'VerifyStringWhitelist' => [ + 'description' => 'An arbitrary string in the source code of the page for verification. If the source code returned by the client contains a string that is not in the whitelist, the 650 error code is reported, which indicates that the string fails to be verified. Separate multiple strings with vertical bars (|).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'success', + ], + 'ElementBlacklist' => [ + 'description' => 'The elements not to be loaded in the page loading process.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com/a.jpg', + ], + 'DNSHijackWhitelist' => [ + 'description' => 'If the IP address or CNAME record resolved from a domain name is not included in the DNS whitelist, you cannot access the domain name, or an IP address that belongs to a different domain name is returned. If the IP address or CNAME record is included in the DNS whitelist, DNS hijacking does not occur.'."\n" + ."\n" + .'Format: \\<domain name>:\\<objects>. The objects can be IP addresses, wildcard mask, subnet mask, or CNAME records. Separate multiple objects with vertical bars (|). Example: www.aliyun.com:203.0.3.55|203.3.44.67. It indicates that all IP addresses that belong to the www.aliyun.com domain name except 203.0.3.55 and 203.3.44.67 are hijacked.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:203.0.3.55|203.3.44.67', + ], + 'PageTamper' => [ + 'description' => 'Elements that are not included in the whitelist and appear on the page are tampered with. These elements can be pop-up ads, floating ads, and page redirection.'."\n" + ."\n" + .'Format: \\<domain name>:\\<elements>. The elements can be wildcard masks. Separate multiple elements with vertical bars (|). Example: www.aliyun.com:|/cc/bb/a.gif|/vv/bb/cc.jpg. It indicates that all elements that belong to the www.aliyun.com domain name except the basic documents, /cc/bb/a.gif, and /vv/bb/cc.jpg are tampered with.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:|/cc/bb/a.gif|/vv/bb/cc.jpg', + ], + 'FlowHijackJumpTimes' => [ + 'description' => 'The total number of elements on the page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + 'FlowHijackLogo' => [ + 'description' => 'The keyword that is used to identify hijacking. Asterisks (\\*) are allowed.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aliyun', + ], + ], + 'required' => false, + ], + 'FileDownload' => [ + 'description' => 'The parameters of file downloading.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The URL that is used to download the file.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://img.alicdn.com/tfs/TB13DzOjXP7gK0jSZFjXXc5aXXa-212-48.png', + ], + 'DownloadKernel' => [ + 'description' => 'The kernel type. Valid values:'."\n" + ."\n" + .'* 1: curl'."\n" + .'* 0: WinInet'."\n" + ."\n" + .'Default value: 1'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'QuickProtocol' => [ + 'description' => 'The QUIC protocol type. Valid values:'."\n" + ."\n" + .'* 1: HTTP/1'."\n" + .'* 2: HTTP/2'."\n" + .'* 3: HTTP/3'."\n" + ."\n" + .'Default value: 1'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'ConnectionTimeout' => [ + 'description' => 'Unit: milliseconds. Minimum value: 1000. Maximum value: 120000. Default value: 5000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'MonitorTimeout' => [ + 'description' => 'The monitoring timeout period. Unit: milliseconds. Minimum value: 1000. Maximum value: 120000. Default value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '60000', + ], + 'CustomHeaderContent' => [ + 'description' => 'The content of the custom request header.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + 'description' => 'Format: JSON map.'."\n", + ], + ], + 'IgnoreCertificateStatusError' => [ + 'description' => 'Specifies whether to ignore certificate status errors. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'IgnoreCertificateUntrustworthyError' => [ + 'description' => 'Specifies whether to ignore certificate incredibility. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'IgnoreInvalidHostError' => [ + 'description' => 'Specifies whether to ignore host invalidity. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'Redirection' => [ + 'description' => 'Specifies whether to support redirection. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'TransmissionSize' => [ + 'description' => 'The maximum file size of a single transfer. Unit: KB. Minimum value: 1. Maximum value: 20480. Valid values: 2048.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2048', + ], + 'IgnoreCertificateCanceledError' => [ + 'description' => 'Specifies whether to ignore certificate revocation errors. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'IgnoreCertificateAuthError' => [ + 'description' => 'Specifies whether to ignore CA certificate authentication errors. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'IgnoreCertificateOutOfDateError' => [ + 'description' => 'Specifies whether to ignore certificate invalidity. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'IgnoreCertificateUsingError' => [ + 'description' => 'Specifies whether to ignore certificate usage errors. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'VerifyWay' => [ + 'description' => 'The verification method. Valid values:'."\n" + ."\n" + .'* 0: no verification'."\n" + .'* 1: string verification'."\n" + .'* 2: MD5 verification'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'ValidateKeywords' => [ + 'description' => 'The keyword that is used in verification.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aliyun', + ], + 'WhiteList' => [ + 'description' => 'The whitelisted objects that are used to avoid DNS hijacking. The objects can be IP addresses, wildcard mask, subnet mask, or CNAME records. Separate multiple objects with vertical bars (|). Example: www.aliyun.com:203.0.3.55|203.3.44.67. It indicates that all IP addresses that belong to the www.aliyun.com domain name except 203.0.3.55 and 203.3.44.67 are hijacked.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:203.0.3.55|203.3.44.67', + ], + ], + 'required' => false, + ], + 'Stream' => [ + 'description' => 'The parameters of the streaming-media synthetic test.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The resource URL of the streaming media.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://www.aliyun.com/stream/test.mp4'."\n", + ], + 'StreamType' => [ + 'description' => 'Specifies whether the resource is a video or audio. Valid values: 0: video. 1: audio.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'StreamMonitorTimeout' => [ + 'description' => 'The monitoring duration. Unit: seconds. Maximum and default value: 60.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '30', + ], + 'StreamAddressType' => [ + 'description' => 'The address type of the resource. Valid values:'."\n" + ."\n" + .'* 1: resource URL'."\n" + .'* 0 (default): page URL'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'PlayerType' => [ + 'description' => 'The player. Default value: 12. Valid values:'."\n" + ."\n" + .'* 12: VLC'."\n" + .'* 2: Flash Player'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '12', + ], + 'CustomHeaderContent' => [ + 'description' => 'The custom header. Format: JSON map.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}'."\n", + 'description' => 'The custom header. Format: JSON map.'."\n", + ], + ], + 'WhiteList' => [ + 'description' => 'The whitelisted objects that are used to avoid DNS hijacking. The objects can be IP addresses, wildcard mask, subnet mask, or CNAME records. Separate multiple objects with vertical bars (|). Example: www.aliyun.com:203.0.3.55|203.3.44.67. It indicates that all IP addresses that belong to the www.aliyun.com domain name except 203.0.3.55 and 203.3.44.67 are hijacked.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:203.0.3.55|203.3.44.67', + ], + ], + 'required' => false, + ], + ], + 'required' => true, + ], + ], + [ + 'name' => 'MonitorCategory', + 'in' => 'query', + 'schema' => [ + 'description' => 'The detection point type. Valid values:'."\n" + ."\n" + .'- 1: PC'."\n" + .'- 2: mobile device', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Monitors', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The list of detection points.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'CityCode' => [ + 'description' => 'The city code.', + 'type' => 'string', + 'required' => true, + 'example' => '100023', + ], + 'OperatorCode' => [ + 'description' => 'The carrier code.', + 'type' => 'string', + 'required' => true, + 'example' => '1', + ], + 'ClientType' => [ + 'description' => 'The client type of the detection point. Valid values:'."\n" + ."\n" + .'- 1: data center'."\n" + .'- 2: Internet'."\n" + .'- 3: mobile device'."\n" + .'- 4: ECS instance', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + 'required' => true, + ], + 'required' => true, + ], + ], + [ + 'name' => 'Frequency', + 'in' => 'query', + 'schema' => [ + 'description' => 'The detection frequency. Valid values: 1m, 5m, 10m, 15m, 20m, 30m, 1h, 2h, 3h, 4h, 6h, 8h, 12h, and 24h.', + 'type' => 'string', + 'required' => true, + 'example' => '5m', + ], + ], + [ + 'name' => 'CustomPeriod', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The general settings.', + 'type' => 'object', + 'properties' => [ + 'EndHour' => [ + 'description' => 'The custom host settings.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '22', + ], + 'StartHour' => [ + 'description' => 'The list of hosts.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '8', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'CommonSetting', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The general settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'CustomHost' => [ + 'description' => 'The custom host settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Hosts' => [ + 'description' => 'The list of hosts.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The custom host settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Domain' => [ + 'description' => 'The domain name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'www.aliyun.com', + ], + 'IpType' => [ + 'description' => 'The IP version. Valid values:'."\n" + ."\n" + .'* 0: A version is automatically selected.'."\n" + .'* 1: IPv4.'."\n" + .'* 2: IPv6.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '0', + ], + 'Ips' => [ + 'description' => 'The list of IP addresses.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IP address.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '10.176.141.63', + ], + 'required' => true, + ], + ], + 'required' => true, + ], + 'required' => true, + ], + 'SelectType' => [ + 'description' => 'The selection mode. Valid values:'."\n" + ."\n" + .'* 0: random'."\n" + .'* 1: polling'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '0', + ], + ], + 'required' => false, + ], + 'IpType' => [ + 'description' => 'The IP version. Valid values:'."\n" + ."\n" + .'* 0: A version is automatically selected.'."\n" + .'* 1: IPv4.'."\n" + .'* 2: IPv6.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'MonitorSamples' => [ + 'description' => 'Specifies whether to evenly distribute monitoring samples. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'IsOpenTrace' => [ + 'description' => 'Specifies whether to enable tracing.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'TraceClientType' => [ + 'description' => 'The type of the client for tracing. Valid values:'."\n" + ."\n" + .'* 0: ARMS agent'."\n" + .'* 1: OpenTelemetry'."\n" + .'* 2: Jaeger'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'XtraceRegion' => [ + 'description' => 'The region to which trace data is reported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + 'CustomVPCSetting' => [ + 'description' => 'The information about the virtual private cloud (VPC). If the destination URL is an Alibaba Cloud internal endpoint, you need to configure a VPC.'."\n", + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + 'VpcId' => [ + 'description' => 'VPC ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-bp1muectbr8f90vjxxxxx', + ], + 'VSwitchId' => [ + 'description' => 'The vSwitch ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vsw-bp14crq29vpycxp8xxxxx', + ], + 'SecureGroupId' => [ + 'description' => 'The ID of the security group to which the client belongs. The security group specifies the inbound and outbound rules of the client for the VPC. You need to allow the security group to which the client belongs to access the security group to which the VPC belongs. Otherwise, the client cannot access resources in the VPC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'sg-bp13wzf9vuwegmpxxxxx', + ], + ], + 'required' => false, + ], + 'CustomPrometheusSetting' => [ + 'description' => 'The reserved parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'PrometheusLabels' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'A reserved parameter.'."\n", + 'example' => 'null', + ], + ], + 'PrometheusClusterId' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'null', + ], + 'PrometheusClusterRegion' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'null', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'AvailableAssertions', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The list of assertions.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The assertion type. Valid values: HttpResCode, HttpResHead, HttpResBody, HttpResBodyJson, HttpResponseTime, IcmpPackLoss (packet loss rate), IcmpPackMaxLatency (maximum packet latency), IcmpPackAvgLatency (average packet latency), TraceRouteHops (number of hops), DnsARecord (A record), DnsCName (CNAME), websiteTTFB (time to first packet), websiteTTLB (time to last packet), websiteFST (first paint time), websiteFFST (first meaningful paint), websiteOnload (full loaded time). For more information, see the following description.', + 'type' => 'string', + 'required' => true, + 'example' => 'DnsARecord', + ], + 'Target' => [ + 'description' => 'The check target. If you set the type parameter to HttpResCode, HttpResBody, or HttpResponseTime, you do not need to set the target parameter. If you set the type parameter to HttpResHead, you must specify the key in the header. If you set the type parameter to HttpResBodyJson, use jsonPath.', + 'type' => 'string', + 'required' => false, + 'example' => 'key', + ], + 'Operator' => [ + 'description' => 'The condition. gt: greater than. gte: greater than or equal to. lt: less than. lte: less than or equal to. eq: equal to. neq: not equal to. ctn: contain. nctn: does not contain. exist: exist. n_exist: does not exist. belong: belong to. n_belong: does not belong to. reg_match: regular expression.', + 'type' => 'string', + 'required' => true, + 'example' => 'eq', + ], + 'Expect' => [ + 'description' => 'The expected value.', + 'type' => 'string', + 'required' => true, + 'example' => '200', + ], + ], + 'required' => true, + ], + 'required' => false, + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The parameter is optional.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxxx', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The tag list.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.', + 'type' => 'string', + 'required' => false, + 'example' => 'Key', + ], + 'Value' => [ + 'description' => 'The value of the tag.', + 'type' => 'string', + 'required' => false, + 'example' => '500', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '53B5874D-EBC1-5567-B787-E4B7267F5CEB', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned. The status code 200 indicates that the request was successful.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The message returned.', + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The struct returned.', + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The ID of the synthetic monitoring task.', + 'type' => 'string', + 'example' => '5308a2691f59422c8c3b7aeccec9cd3b', + ], + 'Status' => [ + 'description' => 'The task status. Valid values:'."\n" + ."\n" + .'- INIT: The task is in the initial state.'."\n" + .'- RELEASE: The task is being parsed.'."\n" + .'- RUNNING: The task is running.'."\n" + .'- STOP: The task is suspended.'."\n" + .'- SYSTEM_STOP: The task is suspended by the system.'."\n" + .'- CANCEL: The task is canceled.'."\n" + .'- SYSTEM_CANCEL: The task is canceled by the system.'."\n" + .'- DONE: The task is complete.', + 'type' => 'string', + 'example' => 'RUNNING', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'TaskQuotaLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'CommercialStatusException', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticTrailExpired', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticInDebt', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyTimesExhausted', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => 'The current user is not authorized to access the interface.', + ], + [ + 'errorCode' => 'INNER_PROHIBIT', + 'errorMessage' => '内部用户禁用云拨测服务, 如需使用, 请加钉钉群31359689联系白玙', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"53B5874D-EBC1-5567-B787-E4B7267F5CEB\\",\\n \\"Success\\": true,\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"5308a2691f59422c8c3b7aeccec9cd3b\\",\\n \\"Status\\": \\"RUNNING\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateTimingSyntheticTask', + 'requestParamsDescription' => 'Assertion description:'."\n" + ."\n" + .'### HTTP synthetic tests'."\n" + ."\n" + .'If the type parameter is set to HttpResCode, the Operator parameter supports the following values: eq, neq, gt, gte, lt, lte, belong, and n_belong.'."\n" + .'If the type parameter is set to HttpResHead, the Operator parameter supports all values.'."\n" + .'If the type parameter is set to HttpResBody, the Operator parameter supports all values.'."\n" + .'If the type parameter is set to HttpResBodyJson, the Operator parameter supports all values.'."\n" + .'If the type parameter is set to HttpResponseTime, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'### ICMP synthetic tests'."\n" + ."\n" + .'If the type parameter is set to IcmpPackLoss, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + .'If the type parameter is set to IcmpPackMaxLatency, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + .'If the type parameter is set to IcmpPackAvgLatency, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + .'If the type parameter is set to TraceRouteHops, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + .'### DNS synthetic tests'."\n" + ."\n" + .'If the type parameter is set to DnsCName, the Operator parameter supports the following values: eq, ctn, nctn, reg_match, not_reg_match. CNAME records can be selectively displayed.'."\n" + .'If the type parameter is set to DnsCName, the Operator parameter supports the following values: eq, ctn, nctn, reg_match, not_reg_match. CNAME records can be selectively displayed.'."\n" + .'### Website speed measurement'."\n" + ."\n" + .'If the type parameter is set to websiteTTFB, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + .'If the type parameter is set to websiteTTLB, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + .'If the type parameter is set to websiteFST, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + .'If the type parameter is set to websiteFFST, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + .'If the type parameter is set to websiteOnload, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.', + ], + 'UpdateTimingSyntheticTask' => [ + 'summary' => 'Updates a scheduled synthetic test task.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5308a2691f59422c8c3b7aeccxxxxxxx', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AlibabaCloud DNS Task', + ], + ], + [ + 'name' => 'MonitorConf', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The monitoring configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'NetICMP' => [ + 'description' => 'The parameters of the ICMP synthetic test.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The IP address or domain name of the destination host. The value cannot contain port numbers, protocol headers, or request paths.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com', + ], + 'Interval' => [ + 'description' => 'The interval at which ICMP packets are sent. Unit: milliseconds. Minimum value: 200. Maximum value: 10000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '300', + ], + 'PackageNum' => [ + 'description' => 'The number of ICMP packets that are sent. Minimum value: 1. Maximum value: 50. Default value: 4.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '4', + ], + 'PackageSize' => [ + 'description' => 'The size of each ICMP packet. Unit: bytes. Valid values: 32, 64, 128, 256, 512, 1024, 1080, and 1450.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '32', + ], + 'SplitPackage' => [ + 'description' => 'Specifies whether to split ICMP packets. Default value: true.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true'."\n", + ], + 'Timeout' => [ + 'description' => 'The timeout period for the ICMP synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 20000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'TracertEnable' => [ + 'description' => 'Specifies whether to enable the tracert command. Default value: true.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'TracertNumMax' => [ + 'description' => 'The maximum number of hops for the tracert command. Minimum value: 1. Maximum value: 128. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + 'TracertTimeout' => [ + 'description' => 'The timeout period of the tracert command. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '60000', + ], + ], + 'required' => false, + ], + 'NetTCP' => [ + 'description' => 'The parameters of the TCP synthetic test.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The IP address of the destination host.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '127.0.0.1:8888', + ], + 'ConnectTimes' => [ + 'description' => 'The number of TCP connections that are established. Minimum value: 1. Maximum value: 16. Default value: 4.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '4', + ], + 'Interval' => [ + 'description' => 'The interval at which TCP connections are established. Unit: milliseconds. Minimum value: 200. Maximum value: 10000. Default value: 200.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '300', + ], + 'Timeout' => [ + 'description' => 'The timeout period for the TCP synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 20000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1000', + ], + 'TracertEnable' => [ + 'description' => 'Specifies whether to enable the tracert command. Default value: true.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'TracertNumMax' => [ + 'description' => 'The maximum number of hops for the tracert command. Minimum value: 1. Maximum value: 128. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + 'TracertTimeout' => [ + 'description' => 'The timeout period of the tracert command. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1000', + ], + ], + 'required' => false, + ], + 'NetDNS' => [ + 'description' => 'The parameters of the DNS synthetic test.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The domain name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com', + ], + 'Dig' => [ + 'description' => 'Specifies whether to use the dig command to display the data. Valid values: 0: no. 1: yes.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'DnsServerIpType' => [ + 'description' => 'The IP version of the DNS server. Valid values: 0: IPv4. 1: IPv6. 2: A version is automatically selected. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'NsServer' => [ + 'description' => 'The IP address of the DNS server. Default value: 114.114.114.114.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '114.114.114.114', + ], + 'QueryMethod' => [ + 'description' => 'The DNS query method. Valid values: 0: recursive. 1: iterative. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'Timeout' => [ + 'description' => 'The timeout period for the DNS synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 45000. Default value: 5000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1000', + ], + ], + 'required' => false, + ], + 'ApiHTTP' => [ + 'description' => 'The parameters of the HTTP(S) synthetic test.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The URL or request path for synthetic monitoring.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://********', + ], + 'Method' => [ + 'description' => 'The request method. Valid values:'."\n" + ."\n" + .'* POST'."\n" + .'* GET'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'POST', + ], + 'RequestHeaders' => [ + 'description' => 'The custom header field.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + 'description' => 'The HTTP request header.'."\n", + ], + ], + 'RequestBody' => [ + 'description' => 'The HTTP request body.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => 'The content of the request body. Format: JSON string. The parameter is required if the Type parameter is set to text/plain, application/json, application/xml, or text/html. Format: JSON string.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + ], + 'Type' => [ + 'description' => 'The type of the request body. Valid values: text/plain, application/json, application/x-www-form-urlencoded, multipart/form-data, application/xml, and text/html.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'application/json', + ], + ], + 'required' => false, + ], + 'ConnectTimeout' => [ + 'description' => 'The connection timeout period. Unit: milliseconds. Default value: 5000. Minimum value: 1000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'Timeout' => [ + 'description' => 'The timeout period. Unit: milliseconds. Default value: 10000. Minimum value: 1000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'CheckCert' => [ + 'description' => 'Specifies whether to verify the certificate. Default value: false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'ProtocolAlpnProtocol' => [ + 'description' => 'The ALPN protocol version. You can configure this parameter when you perform an HTTPS synthetic test on a WAP mobile client. Valid values:'."\n" + ."\n" + .'0: default'."\n" + ."\n" + .'1-http/1.1'."\n" + ."\n" + .'2-h2'."\n" + ."\n" + .'3: disables the ALPN protocol'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + ], + 'required' => false, + ], + 'Website' => [ + 'description' => 'The parameters of the website speed measurement.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The URL of the website.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://********', + ], + 'AutomaticScrolling' => [ + 'description' => 'Specifies whether to automatically scroll up and down the screen to load a page. Valid values: 0: no. 1: yes. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'CustomHeader' => [ + 'description' => 'Specifies whether to create a custom header. Valid values: 0: no. 1: The first packet is modified. 2: All packets are modified. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'CustomHeaderContent' => [ + 'description' => 'The custom header. Format: JSON map.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The custom header. Format: JSON map.'."\n", + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + ], + ], + 'DisableCache' => [ + 'description' => 'Specifies whether to disable the cache. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'DisableCompression' => [ + 'description' => 'Specifies whether to accept compressed files based on the HTTP Accept-Encoding request header. Valid values: 0: no. 1: yes. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'FilterInvalidIP' => [ + 'description' => 'Specifies whether to exclude invalid IP addresses. Valid values:'."\n" + ."\n" + .'* 1: no'."\n" + .'* 0: yes'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'IgnoreCertificateError' => [ + 'description' => 'Specifies whether to ignore SSL certificate errors during browsing. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'MonitorTimeout' => [ + 'description' => 'The monitoring timeout period. Unit: milliseconds. Minimum value: 5000. Maximum value: 300000. Default value: 40000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '20000', + ], + 'Redirection' => [ + 'description' => 'Specifies whether to continue browsing after redirection. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'SlowElementThreshold' => [ + 'description' => 'The time threshold that is used to define a slow element. Unit: milliseconds. Default value: 5000. Minimum value: 1. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'WaitCompletionTime' => [ + 'description' => 'The maximum waiting time. Unit: milliseconds. Default value: 5000. Minimum value: 5000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'VerifyStringBlacklist' => [ + 'description' => 'An arbitrary string in the source code of the page for verification. If the source code returned by the client contains a string that is in the blacklist, the 650 error code is reported, which indicates that the string fails to be verified. Separate multiple strings with vertical bars (|).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'error', + ], + 'VerifyStringWhitelist' => [ + 'description' => 'An arbitrary string in the source code of the page for verification. If the source code returned by the client contains a string that is not in the whitelist, the 650 error code is reported, which indicates that the string fails to be verified. Separate multiple strings with vertical bars (|).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'success', + ], + 'ElementBlacklist' => [ + 'description' => 'The elements not to be loaded in the page loading process.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'a.jpg', + ], + 'DNSHijackWhitelist' => [ + 'description' => 'If the IP address or CNAME record resolved from a domain name is not included in the DNS whitelist, you cannot access the domain name, or an IP address that belongs to a different domain name is returned. If the IP address or CNAME record is included in the DNS whitelist, DNS hijacking does not occur.'."\n" + ."\n" + .'Format: \\<domain name>:\\<objects>. The objects can be IP addresses, wildcard mask, subnet mask, or CNAME records. Separate multiple objects with vertical bars (|). Example: www.aliyun.com:203.0.3.55|203.3.44.67. It indicates that all IP addresses that belong to the www.aliyun.com domain name except 203.0.3.55 and 203.3.44.67 are hijacked.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:203.0.3.55|203.3.44.67', + ], + 'PageTamper' => [ + 'description' => 'Elements that are not included in the whitelist and appear on the page are manipulated. These elements can be pop-up ads, floating ads, and page redirection.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:|/cc/bb/a.gif|/vv/bb/cc.jpg', + ], + 'FlowHijackJumpTimes' => [ + 'description' => 'The total number of elements on the page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'FlowHijackLogo' => [ + 'description' => 'The keyword that is used to identify hijacking. Asterisks (\\*) are allowed.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aliyun', + ], + ], + 'required' => false, + ], + 'FileDownload' => [ + 'description' => 'The parameters of file downloading.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The URL that is used to download the file.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://img.alicdn.com/tfs/TB13DzOjXP7gK0jSZFjXXc5aXXa-212-48.png', + ], + 'DownloadKernel' => [ + 'description' => 'The kernel type. Valid values:'."\n" + ."\n" + .'* 1: curl'."\n" + .'* 0: WinInet'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'QuickProtocol' => [ + 'description' => 'The QUIC protocol type. Valid values:'."\n" + ."\n" + .'* 1: HTTP/1'."\n" + .'* 2: HTTP/2'."\n" + .'* 3: http3'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'ConnectionTimeout' => [ + 'description' => 'Unit: milliseconds. Minimum value: 1000. Maximum value: 120000. Default value: 5000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5000', + ], + 'MonitorTimeout' => [ + 'description' => 'The monitoring timeout period. Unit: milliseconds. Minimum value: 1000. Maximum value: 120000. Default value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '60000', + ], + 'CustomHeaderContent' => [ + 'description' => 'The content of the custom request header. Format: JSON map.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + 'description' => 'The content of the custom request header. Format: JSON map.'."\n", + ], + ], + 'IgnoreCertificateStatusError' => [ + 'description' => 'Specifies whether to ignore certificate status errors. 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'IgnoreCertificateUntrustworthyError' => [ + 'description' => 'Specifies whether to ignore certificate incredibility. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'IgnoreInvalidHostError' => [ + 'description' => 'Specifies whether to ignore host invalidity. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'Redirection' => [ + 'description' => 'Specifies whether to support redirection. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'TransmissionSize' => [ + 'description' => 'The maximum file size of a single transfer. Unit: KB. Minimum value: 1. Maximum value: 20480. Valid values: 2048.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2048', + ], + 'IgnoreCertificateCanceledError' => [ + 'description' => 'Specifies whether to ignore certificate revocation errors. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'IgnoreCertificateAuthError' => [ + 'description' => 'Specifies whether to ignore CA certificate authentication errors. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'IgnoreCertificateOutOfDateError' => [ + 'description' => 'Specifies whether to ignore certificate invalidity. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'IgnoreCertificateUsingError' => [ + 'description' => 'Specifies whether to ignore certificate usage errors. Valid values: 0: no. 1: yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'VerifyWay' => [ + 'description' => 'The verification method. Valid values:'."\n" + ."\n" + .'* 0: no verification'."\n" + .'* 1: string verification'."\n" + .'* 2: MD5 verification'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'ValidateKeywords' => [ + 'description' => 'The keyword that is used in verification.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aliyun', + ], + 'WhiteList' => [ + 'description' => 'The whitelisted objects that are used to avoid DNS hijacking. The objects can be IP addresses, wildcard mask, subnet mask, or CNAME records. Separate multiple objects with vertical bars (|). Example: www.aliyun.com:203.0.3.55|203.3.44.67. It indicates that all IP addresses that belong to the www.aliyun.com domain name except 203.0.3.55 and 203.3.44.67 are hijacked.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:203.0.3.55|203.3.44.67', + ], + ], + 'required' => false, + ], + 'Stream' => [ + 'description' => 'The parameters of the streaming-media synthetic test.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The resource URL of the streaming media.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://www.aliyun.com/stream/test.mp4', + ], + 'StreamType' => [ + 'description' => 'Specifies whether the resource is a video or audio. Valid values: 0: video. 1: audio.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'StreamMonitorTimeout' => [ + 'description' => 'The monitoring duration. Unit: seconds. Maximum and default value: 60.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '30', + ], + 'StreamAddressType' => [ + 'description' => 'The address type of the resource. Valid values:'."\n" + ."\n" + .'* 1: resource URL.'."\n" + .'* 0: page URL. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'PlayerType' => [ + 'description' => 'The player. Default value: 12. Valid values:'."\n" + ."\n" + .'* 12: VLC'."\n" + .'* 2: Flash Player'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + 'CustomHeaderContent' => [ + 'description' => 'The custom header. Format: JSON map.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + 'description' => 'The custom header. Format: JSON map.'."\n", + ], + ], + 'WhiteList' => [ + 'description' => 'The whitelisted objects that are used to avoid DNS hijacking. The objects can be IP addresses, wildcard mask, subnet mask, or CNAME records. Separate multiple objects with vertical bars (|). Example: www.aliyun.com:203.0.3.55|203.3.44.67. It indicates that all IP addresses that belong to the www.aliyun.com domain name except 203.0.3.55 and 203.3.44.67 are hijacked.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:203.0.3.55|203.3.44.67', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Monitors', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The list of monitoring points.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'CityCode' => [ + 'description' => 'The city code.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '100001', + ], + 'OperatorCode' => [ + 'description' => 'The carrier code.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + 'ClientType' => [ + 'description' => 'The client type of the monitoring point. Valid values: 1: data center. 2: Internet. 3: mobile device. 4: ECS instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '4', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'Frequency', + 'in' => 'query', + 'schema' => [ + 'description' => 'The detection frequency. Valid values: 1m, 5m, 10m, 15m, 20m, 30m, 1h, 2h, 3h, 4h, 6h, 8h, 12h, and 24h.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5m', + ], + ], + [ + 'name' => 'CustomPeriod', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The custom cycle.'."\n", + 'type' => 'object', + 'properties' => [ + 'EndHour' => [ + 'description' => 'The hour at which the test ends. Valid values: 0 to 24.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '22', + ], + 'StartHour' => [ + 'description' => 'The hour at which the test starts. Valid values: 0 to 24.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '14', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'CommonSetting', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The general settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'CustomHost' => [ + 'description' => 'The custom host settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Hosts' => [ + 'description' => 'The list of hosts.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The custom host settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Domain' => [ + 'description' => 'The domain name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com', + ], + 'IpType' => [ + 'description' => 'The IP version. Valid values:'."\n" + ."\n" + .'* 0: A version is automatically selected.'."\n" + .'* 1: IPv4'."\n" + .'* 2: IPv6'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'Ips' => [ + 'description' => 'The list of IP addresses.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IP address.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '127.0.0.1', + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'SelectType' => [ + 'description' => 'The selection mode. Valid values:'."\n" + ."\n" + .'* 0: random'."\n" + .'* 1: polling'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + ], + 'required' => false, + ], + 'IpType' => [ + 'description' => 'The IP version. Valid values:'."\n" + ."\n" + .'* 0: A version is automatically selected.'."\n" + .'* 1: IPv4'."\n" + .'* 2: IPv6'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'MonitorSamples' => [ + 'description' => 'Specifies whether to evenly distribute monitoring samples. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + 'IsOpenTrace' => [ + 'description' => 'Specifies whether to enable tracing.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'TraceClientType' => [ + 'description' => 'The type of the client for tracing. Valid values:'."\n" + ."\n" + .'* 0: ARMS agent'."\n" + .'* 1: OpenTelemetry'."\n" + .'* 2: Jaeger'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'XtraceRegion' => [ + 'description' => 'The region to which trace data is reported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + 'CustomVPCSetting' => [ + 'description' => 'The information about the virtual private cloud (VPC). If the destination URL is an Alibaba Cloud internal endpoint, you need to configure a VPC.'."\n", + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + 'VpcId' => [ + 'description' => 'VPC ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-bp15bjtubjytclwxxxxxx', + ], + 'VSwitchId' => [ + 'description' => 'The vSwitch ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vsw-2zevek6r3mpny7wxxxxxv', + ], + 'SecureGroupId' => [ + 'description' => 'The ID of the security group to which the client belongs. The security group specifies the inbound and outbound rules of the client for the VPC. You need to allow the security group to which the client belongs to access the security group to which the VPC belongs. Otherwise, the client cannot access resources in the VPC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'sg-xxxxxxxx', + ], + ], + 'required' => false, + ], + 'CustomPrometheusSetting' => [ + 'description' => 'The reserved parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'PrometheusLabels' => [ + 'description' => 'The reserved parameters.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'The reserved parameters.'."\n", + 'example' => 'A reserved parameter.', + ], + ], + 'PrometheusClusterId' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'A reserved parameter.', + ], + 'PrometheusClusterRegion' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'A reserved parameter.', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'AvailableAssertions', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The list of assertions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The assertion type. Valid values: HttpResCode, HttpResHead, HttpResBody, HttpResBodyJson, HttpResponseTime, IcmpPackLoss (packet loss rate), IcmpPackMaxLatency (maximum packet latency), IcmpPackAvgLatency (average packet latency), TraceRouteHops (number of hops), DnsARecord (A record), DnsCName (CNAME), websiteTTFB (time to first packet), websiteTTLB (time to last packet), websiteFST (first paint time), websiteFFST (first meaningful paint), websiteOnload (full loaded time). For more information, see the following description.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TraceRouteHops', + ], + 'Target' => [ + 'description' => 'The check target. If you set the type parameter to HttpResCode, HttpResBody, or HttpResponseTime, you do not need to set the target parameter. If you set the type parameter to HttpResHead, you must specify the key in the header. If you set the type parameter to HttpResBodyJson, use jsonPath.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'HttpResponseTime', + ], + 'Operator' => [ + 'description' => 'The condition. gt: greater than. gte: greater than or equal to. lt: less than. lte: less than or equal to. eq: equal to. neq: not equal to. ctn: contain. nctn: does not contain. exist: exist. n_exist: does not exist. belong: belong to. n_belong: does not belong to. reg_match: regular expression.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'eq'."\n", + ], + 'Expect' => [ + 'description' => 'The expected value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '200', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'key'."\n", + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'value', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'F7781D4A-2818-41E7-B7BB-79D809E9****', + ], + '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. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => '1eeb351722c84e05b52c82fd0dc9953e', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'TaskQuotaLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'CommercialStatusException', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticTrailExpired', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticInDebt', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyTimesExhausted', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'INNER_PROHIBIT', + 'errorMessage' => '内部用户禁用云拨测服务, 如需使用, 请加钉钉群31359689联系白玙', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F7781D4A-2818-41E7-B7BB-79D809E9****\\",\\n \\"Success\\": true,\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"1eeb351722c84e05b52c82fd0dc9953e\\"\\n }\\n}","type":"json"}]', + 'title' => 'UpdateTimingSyntheticTask', + 'requestParamsDescription' => 'Assertion description:'."\n" + ."\n" + .'HTTP synthetic tests:'."\n" + ."\n" + .'● If the type parameter is set to HttpResCode, the Operator parameter supports the following values: eq, neq, gt, gte, lt, lte, belong, and n_belong.'."\n" + ."\n" + .'● If the type parameter is set to HttpResHead, the Operator parameter supports all values.'."\n" + ."\n" + .'● If the type parameter is set to HttpResBody, the Operator parameter supports all values.'."\n" + ."\n" + .'● If the type parameter is set to HttpResBodyJson, the Operator parameter supports all values.'."\n" + ."\n" + .'● If the type parameter is set to HttpResponseTime, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'ICMP synthetic tests:'."\n" + ."\n" + .'● If the type parameter is set to IcmpPackLoss, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'● If the type parameter is set to IcmpPackMaxLatency, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'● If the type parameter is set to IcmpPackAvgLatency, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'● If the type parameter is set to TraceRouteHops, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'DNS synthetic tests:'."\n" + ."\n" + .'● If the type parameter is set to DnsARecord, the Operator parameter supports the following values: eq, ctn, nctn, reg_match, not_reg_match. A records can be selectively displayed.'."\n" + ."\n" + .'● If the type parameter is set to DnsCName, the Operator parameter supports the following values: eq, ctn, nctn, reg_match, not_reg_match. CNAME records can be selectively displayed.'."\n" + ."\n" + .'Website speed measurement:'."\n" + ."\n" + .'● If the type parameter is set to websiteTTFB, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'● If the type parameter is set to websiteTTLB, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'● If the type parameter is set to websiteFST, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'● If the type parameter is set to websiteFFST, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n" + ."\n" + .'● If the type parameter is set to websiteOnload, the Operator parameter supports the following values: gt, gte, lt, lte, eq, and belong.'."\n", + ], + 'StopTimingSyntheticTask' => [ + 'summary' => 'Stops scheduled synthetic monitoring tasks.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskIds', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The task IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '3cee3d23ev4342342csc', + ], + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'TaskQuotaLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'CommercialStatusException', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticTrailExpired', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticInDebt', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyTimesExhausted', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'INNER_PROHIBIT', + 'errorMessage' => '内部用户禁用云拨测服务, 如需使用, 请加钉钉群31359689联系白玙', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": true\\n}","type":"json"}]', + 'title' => 'StopTimingSyntheticTask', + ], + 'StartTimingSyntheticTask' => [ + 'summary' => 'Starts scheduled synthetic monitoring tasks.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskIds', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The task IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The task IDs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '12312jejcc23dcewd', + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2A0CEDF1-06FE-44AC-8E21-21A5BE65****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'TaskQuotaLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'CommercialStatusException', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticTrailExpired', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticInDebt', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyTimesExhausted', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyLimit', + 'errorMessage' => '%s', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2A0CEDF1-06FE-44AC-8E21-21A5BE65****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": true\\n}","type":"json"}]', + 'title' => 'StartTimingSyntheticTask', + ], + 'DeleteTimingSyntheticTask' => [ + 'summary' => 'Deletes a scheduled synthetic monitoring task.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5308a2691f59422c8c3b7aeccec9cd3b', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-aek2eq4peca****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'Indicates whether the synthetic monitoring task was deleted. true: The synthetic monitoring task was deleted. false: The synthetic monitoring task failed to be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'TaskQuotaLimit', + 'errorMessage' => 'task count limited', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => 'You must specify the parameter.', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => 'The specified region is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'SyntheticTrailExpired', + 'errorMessage' => 'synthetic trail has expired', + ], + [ + 'errorCode' => 'SyntheticInDebt', + 'errorMessage' => 'synthetic is in debt', + ], + [ + 'errorCode' => 'SyntheticDailyTimesExhausted', + 'errorMessage' => 'synthetic dailly times has exhausted', + ], + [ + 'errorCode' => 'SyntheticDailyLimit', + 'errorMessage' => 'synthetic dailly limited', + ], + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => 'SubUser permission verification failed, the caller is not authorized to perform %s on resource %s.', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => 'STS authorization failed.', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => 'Illegal user access.', + ], + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => 'The current user is not authorized to access the interface.', + ], + [ + 'errorCode' => 'CommercialStatusException', + 'errorMessage' => 'Abnormal commercialization status. Please contact your administrator.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": true\\n}","type":"json"}]', + 'title' => 'DeleteTimingSyntheticTask', + ], + 'GetSyntheticMonitors' => [ + 'summary' => 'Obtains detection points.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Filter', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The query conditions.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskType' => [ + 'description' => 'The type of the monitoring task. Valid values:'."\n" + ."\n" + .'1: ICMP. 2: TCP. 3: DNS. 4: HTTP. 5: website speed. 6: file download.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + 'MonitorCategory' => [ + 'description' => 'The type of the monitoring point. Valid values: 1: PC. 2: mobile device.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + 'Network' => [ + 'description' => 'The network type. Valid values: 1: private network. 2: Internet.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2FD473FF-5398-5A85-9BF6-7AB45561522F', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The list of monitoring points.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Country' => [ + 'description' => 'The country.'."\n", + 'type' => 'string', + 'example' => 'China', + ], + 'Region' => [ + 'description' => 'The region.'."\n", + 'type' => 'string', + 'example' => 'Beijing', + ], + 'City' => [ + 'description' => 'The city.'."\n", + 'type' => 'string', + 'example' => 'Beijing', + ], + 'CityCode' => [ + 'description' => 'The city code.'."\n", + 'type' => 'string', + 'example' => '1100101', + ], + 'Operator' => [ + 'description' => 'The carrier.'."\n", + 'type' => 'string', + 'example' => 'Alibaba Cloud', + ], + 'OperatorCode' => [ + 'description' => 'The carrier code.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'ClientType' => [ + 'description' => 'The client type of the monitoring point. Valid values: 1: data center. 2: Internet. 3: mobile device. 4: ECS instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'CanBeSelected' => [ + 'description' => 'Indicates whether the monitoring point is selected. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Available' => [ + 'description' => 'Indicates whether the monitoring point is available. Valid values: true and false.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Ipv6' => [ + 'description' => 'Indicates whether IPv6 is supported. Valid values: 0: IPv6 is not supported. 1: IPv6 is supported.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'TaskQuotaLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'CommercialStatusException', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticTrailExpired', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticInDebt', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyTimesExhausted', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyLimit', + 'errorMessage' => '%s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2FD473FF-5398-5A85-9BF6-7AB45561522F\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": [\\n {\\n \\"Country\\": \\"中国\\",\\n \\"Region\\": \\"浙江\\",\\n \\"City\\": \\"北京市\\",\\n \\"CityCode\\": \\"1100101\\",\\n \\"Operator\\": \\"阿里云\\",\\n \\"OperatorCode\\": \\"1\\",\\n \\"ClientType\\": 1,\\n \\"CanBeSelected\\": true,\\n \\"Available\\": \\"true\\",\\n \\"Ipv6\\": 0\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetSyntheticMonitors', + ], + 'ListTimingSyntheticTasks' => [ + 'summary' => 'Queries scheduled synthetic monitoring tasks.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Search', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The search keyword.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskTypes' => [ + 'description' => 'The task types.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The task type. 1: ICMP. 2: TCP. 3: DNS. 4: HTTP. 5: website speed. 6: file download.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'required' => false, + ], + 'TaskIds' => [ + 'description' => 'The task IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '181248', + ], + 'required' => false, + ], + 'Name' => [ + 'description' => 'The task name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'AlibabaCloud DNS Task', + ], + 'Status' => [ + 'description' => 'The task status. CREATING: The task is being created. RUNNING: The task is running. PARTIAL_RUNNING: The task is partially running. STOP: The task is stopped. LIMIT_STOP: The task is stopped due to quota limit. EXCEPTION: The task is abnormal. DELETE: The task is deleted. DELETE_EXCEPTION: An exception occurs while deleting the task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CREATING', + ], + 'OrderField' => [ + 'description' => 'The condition by which tasks are sorted. You can sort tasks by gmtCreate, gmtModified, status, or monitorCount.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'status', + ], + 'Order' => [ + 'description' => 'The order by which tasks are sorted. 1: ascending order. -1: descending order.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'Page' => [ + 'description' => 'The page number. This parameter is required.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. This parameter is required.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'mark', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'value1111', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '730E90FE-996A-5638-99F3-4F0F9038CC6C', + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Items' => [ + 'description' => 'The queried tasks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the task.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'string', + 'example' => '5308a2691f59422c8c3b7aeccec9cd3b', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Name' => [ + 'description' => 'The task name.'."\n", + 'type' => 'string', + 'example' => 'AlibabaCloud DNS Task', + ], + 'TaskType' => [ + 'description' => 'The type of the task. Valid values:'."\n" + ."\n" + .'1: ICMP. 2: TCP. 3: DNS. 4: HTTP. 5: website speed. 6: file download.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Url' => [ + 'description' => 'The URL for synthetic monitoring.'."\n", + 'type' => 'string', + 'example' => 'https://www.example.com', + ], + 'MonitorCategory' => [ + 'description' => 'The detection point type. 1: PC. 2: mobile device.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Frequency' => [ + 'description' => 'The detection frequency. Valid values: 1m, 5m, 10m, 15m, 20m, 30m, 1h, 2h, 3h, 4h, 6h, 8h, 12h, and 24h.'."\n", + 'type' => 'string', + 'example' => '1m', + ], + 'MonitorNum' => [ + 'description' => 'The number of detection points.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Status' => [ + 'description' => 'The task status. CREATING: The task is being created. RUNNING: The task is running. PARTIAL_RUNNING: The task is partially running. STOP: The task is stopped. LIMIT_STOP: The task is stopped due to quota limit. EXCEPTION: The task is abnormal. DELETE: The task is deleted. DELETE_EXCEPTION: An exception occurs while deleting the task.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'GmtCreate' => [ + 'description' => 'The time when the task was created.'."\n", + 'type' => 'string', + 'example' => '1671454758000', + ], + 'GmtModified' => [ + 'description' => 'The time when the task was modified.'."\n", + 'type' => 'string', + 'example' => '1673085633000', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-aekzgwtq5vxxxxx', + ], + 'CommonSetting' => [ + 'description' => 'The general settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'CustomHost' => [ + 'description' => 'The custom host settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Hosts' => [ + 'description' => 'The custom host settings.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The custom host settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Domain' => [ + 'description' => 'The destination domain name.'."\n", + 'type' => 'string', + 'example' => 'www.aliyun.com', + ], + 'IpType' => [ + 'description' => 'The IP version. Valid values:'."\n" + ."\n" + .'* 0: A version is automatically selected.'."\n" + .'* 1: IPv4.'."\n" + .'* 2: IPv6.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Ips' => [ + 'description' => 'The IP address.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IP address.'."\n", + 'type' => 'string', + 'example' => '39.104.85.210', + ], + ], + ], + ], + ], + 'SelectType' => [ + 'description' => 'The selection mode. Valid values:'."\n" + ."\n" + .'* 0: random'."\n" + .'* 1: polling'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + ], + ], + 'IpType' => [ + 'description' => 'The IP version. Valid values:'."\n" + ."\n" + .'* 0: A version is automatically selected.'."\n" + .'* 1: IPv4.'."\n" + .'* 2: IPv6.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'MonitorSamples' => [ + 'description' => 'Indicates whether monitoring samples are evenly distributed. Valid values:'."\n" + ."\n" + .'* 0: No'."\n" + .'* 1: Yes'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'IsOpenTrace' => [ + 'description' => 'Indicates whether tracing is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'TraceClientType' => [ + 'description' => 'The type of the client for tracing. Valid values:'."\n" + ."\n" + .'* 0: ARMS agent'."\n" + .'* 1: OpenTelemetry'."\n" + .'* 2: Jaeger'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'XtraceRegion' => [ + 'description' => 'The region to which trace data is reported.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'CustomVPCSetting' => [ + 'description' => 'The information about the virtual private cloud (VPC). If the destination URL is an Alibaba Cloud internal endpoint, you need to configure a VPC.'."\n", + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-zhangjiakou', + ], + 'VpcId' => [ + 'description' => 'The VPC ID.'."\n", + 'type' => 'string', + 'example' => 'vpc-2zehbd4dfzahxxxxxxx', + ], + 'VSwitchId' => [ + 'description' => 'The vSwitch ID.'."\n", + 'type' => 'string', + 'example' => 'vsw-bp1bcmj81kxxxxxxx', + ], + 'SecureGroupId' => [ + 'description' => 'The ID of the security group to which the client belongs. The security group specifies the inbound and outbound rules of the client for the VPC. You need to allow the security group to which the client belongs to access the security group to which the VPC belongs. Otherwise, the client cannot access resources in the VPC.'."\n", + 'type' => 'string', + 'example' => 'sg-xxxxxxxxxxxxxx', + ], + ], + ], + 'CustomPrometheusSetting' => [ + 'description' => 'A reserved field.'."\n", + 'type' => 'object', + 'properties' => [ + 'PrometheusLabels' => [ + 'description' => 'A reserved field.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'A reserved field.'."\n", + 'example' => 'Reserved field'."\n", + ], + ], + 'PrometheusClusterId' => [ + 'description' => 'A reserved field.'."\n", + 'type' => 'string', + 'example' => 'Reserved field'."\n", + ], + 'PrometheusClusterRegion' => [ + 'description' => 'A reserved field.'."\n", + 'type' => 'string', + 'example' => 'Reserved field'."\n", + ], + ], + ], + ], + ], + 'Tags' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'key', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'value', + ], + ], + ], + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of tasks.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'Page' => [ + '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', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'TaskQuotaLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'CommercialStatusException', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticTrailExpired', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticInDebt', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyTimesExhausted', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyLimit', + 'errorMessage' => '%s', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"730E90FE-996A-5638-99F3-4F0F9038CC6C\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": {\\n \\"Items\\": [\\n {\\n \\"TaskId\\": \\"5308a2691f59422c8c3b7aeccec9cd3b\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Name\\": \\"拨测任务\\",\\n \\"TaskType\\": 1,\\n \\"Url\\": \\"https://www.example.com\\",\\n \\"MonitorCategory\\": 1,\\n \\"Frequency\\": \\"1m\\",\\n \\"MonitorNum\\": \\"10\\",\\n \\"Status\\": \\"RUNNING\\",\\n \\"GmtCreate\\": \\"1671454758000\\",\\n \\"GmtModified\\": \\"1673085633000\\",\\n \\"ResourceGroupId\\": \\"rg-aekzgwtq5vxxxxx\\",\\n \\"CommonSetting\\": {\\n \\"CustomHost\\": {\\n \\"Hosts\\": [\\n {\\n \\"Domain\\": \\"www.aliyun.com\\",\\n \\"IpType\\": 0,\\n \\"Ips\\": [\\n \\"39.104.85.210\\"\\n ]\\n }\\n ],\\n \\"SelectType\\": 0\\n },\\n \\"IpType\\": 0,\\n \\"MonitorSamples\\": 0,\\n \\"IsOpenTrace\\": false,\\n \\"TraceClientType\\": 1,\\n \\"XtraceRegion\\": \\"cn-hangzhou\\",\\n \\"CustomVPCSetting\\": {\\n \\"RegionId\\": \\"cn-zhangjiakou\\",\\n \\"VpcId\\": \\"vpc-2zehbd4dfzahxxxxxxx\\",\\n \\"VSwitchId\\": \\"vsw-bp1bcmj81kxxxxxxx\\",\\n \\"SecureGroupId\\": \\"sg-xxxxxxxxxxxxxx\\"\\n },\\n \\"CustomPrometheusSetting\\": {\\n \\"PrometheusLabels\\": {\\n \\"key\\": \\"保留字段。\\\\n\\"\\n },\\n \\"PrometheusClusterId\\": \\"保留字段。\\\\n\\",\\n \\"PrometheusClusterRegion\\": \\"保留字段。\\"\\n }\\n },\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n }\\n ],\\n \\"Total\\": 100,\\n \\"Page\\": 1,\\n \\"PageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'ListTimingSyntheticTasks', + ], + 'GetTimingSyntheticTask' => [ + 'summary' => 'Obtains the details of a synthetic monitoring task.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '856566a9cb2a4cafa05aa95ed0ec8f21', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'E13430A6-57A9-56E9-9D8D-28FE8DEBCA40', + ], + 'Code' => [ + 'description' => 'The status code returned. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The message returned.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'string', + 'example' => '5308a2691f59422c8c3b7aeccec9cd3b', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Name' => [ + 'description' => 'The name of the task.'."\n", + 'type' => 'string', + 'example' => 'AlibabaCloud DNS Task', + ], + 'TaskType' => [ + 'description' => 'The type of the task. Valid values:'."\n" + ."\n" + .'ICMP TCP DNS HTTP Website speed measurement File download'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'MonitorConf' => [ + 'description' => 'The monitoring configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'NetICMP' => [ + 'description' => 'The ICMP synthetic test parameters. This parameter is required if the TaskType parameter is set to 1.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The destination host IP address or domain name'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'www.aliyun.com', + ], + 'Interval' => [ + 'description' => 'The interval at which ICMP packets are sent. Unit: milliseconds. Minimum value: 200. Maximum value: 2000. Default value: 200.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'PackageNum' => [ + 'description' => 'The number of ICMP packets that are sent. Minimum value: 1. Maximum value: 50. Default value: 4.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'PackageSize' => [ + 'description' => 'The size of each ICMP packet. Unit: bytes. Valid values: 32, 64, 128, 256, 512, 1024.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1024', + ], + 'SplitPackage' => [ + 'description' => 'Specifies whether to split ICMP packets. Default value: true.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Timeout' => [ + 'description' => 'The timeout period for the TCP synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 20000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000', + ], + 'TracertEnable' => [ + 'description' => 'Specifies whether to enable the tracert command. Default value: true.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TracertNumMax' => [ + 'description' => 'The maximum number of hops for tracert. Minimum value: 1. Maximum value: 128. Default value: 64.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '64', + ], + 'TracertTimeout' => [ + 'description' => 'The timeout period of tracert. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '60000', + ], + ], + ], + 'NetTCP' => [ + 'description' => 'The TCP synthetic tests parameters. This parameter is required if the TaskType parameter is set to 2.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The destination host IP address.'."\n", + 'type' => 'string', + 'example' => '127.0.0.1:8888', + ], + 'ConnectTimes' => [ + 'description' => 'The number of TCP connections that are established in a test. Minimum value: 1. Maximum value: 16. Default value: 4.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'Interval' => [ + 'description' => 'The interval at which TCP connections are established. Unit: milliseconds. Minimum value: 200. Maximum value: 10000. Default value: 200.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Timeout' => [ + 'description' => 'The timeout period for the TCP synthetic test. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 20000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20000', + ], + 'TracertEnable' => [ + 'description' => 'Specifies whether to enable the tracert command. Default value: true.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TracertNumMax' => [ + 'description' => 'The maximum number of hops for tracert. Minimum value: 1. Maximum value: 128. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'TracertTimeout' => [ + 'description' => 'The timeout period of tracert. Unit: milliseconds. Minimum value: 1000. Maximum value: 300000. Default value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '60000', + ], + ], + ], + 'NetDNS' => [ + 'description' => 'The DNS synthetic test parameters. This parameter is required if the TaskType parameter is set to 3.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The destination domain name.'."\n", + 'type' => 'string', + 'example' => 'www.aliyun.com', + ], + 'DnsServerIpType' => [ + 'description' => 'The IP version of the DNS server. 0: IPv4. 1: IPv6. 2: A version is automatically selected. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'NsServer' => [ + 'description' => 'The IP address of the DNS server. Default value: 114.114.114.114.'."\n", + 'type' => 'string', + 'example' => '114.114.114.114', + ], + 'QueryMethod' => [ + 'description' => 'The DNS query. 0: recursive, 1: iterative. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Timeout' => [ + 'description' => 'The timeout period for the DNS synthetic test. Unit: milliseconds. The minimum value is 1000 and the maximum value is 45000. Default value: 5000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5000', + ], + ], + ], + 'ApiHTTP' => [ + 'description' => 'The parameters of the HTTP(S) synthetic test.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The URL for synthetic monitoring.'."\n", + 'type' => 'string', + 'example' => 'http://127.0.0.1:8090/api/list', + ], + 'Method' => [ + 'description' => 'The request method.'."\n" + ."\n" + .'* POST'."\n" + .'* GET'."\n", + 'type' => 'string', + 'example' => 'POST', + ], + 'RequestHeaders' => [ + 'description' => 'The HTTP request header.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'Format: JSON map.'."\n", + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + ], + ], + 'RequestBody' => [ + 'description' => 'The HTTP request body.'."\n", + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => 'The content of the request body. Format: JSON string. The parameter is required if the type parameter is set to text/plain, application/json, application/xml, or text/html. Format: JSON string.'."\n", + 'type' => 'string', + 'example' => 'text/plain', + ], + 'Type' => [ + 'description' => 'The type of the request body. Valid values: text/plain, application/json, application/x-www-form-urlencoded, multipart/form-data, application/xml, and text/html.'."\n", + 'type' => 'string', + 'example' => 'multipart/form-data', + ], + ], + ], + 'ConnectTimeout' => [ + 'description' => 'The connection timeout period. Unit: milliseconds. Default value: 5000. Minimum value: 1000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5000', + ], + 'Timeout' => [ + 'description' => 'The timeout period. Unit: milliseconds. Default value: 10000. Minimum value: 1000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'CheckCert' => [ + 'description' => 'Whether to verify the certificate. The default is no.', + 'type' => 'boolean', + 'example' => 'false', + ], + 'ProtocolAlpnProtocol' => [ + 'description' => 'The ALPN protocol version. You can configure this parameter when you perform an HTTPS synthetic test on a WAP mobile client. Valid values:'."\n" + ."\n" + .'0: default'."\n" + ."\n" + .'1: HTTP/1.1'."\n" + ."\n" + .'2: HTTP/2'."\n" + ."\n" + .'3: disables the ALPN protocol'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + 'FileDownload' => [ + 'description' => 'The file download parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The file download URL.'."\n", + 'type' => 'string', + 'example' => 'https://********', + ], + 'DownloadKernel' => [ + 'description' => 'The kernel type.'."\n" + ."\n" + .'* 1: curl'."\n" + .'* 0: WinInet'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'QuickProtocol' => [ + 'description' => 'The QUIC protocol type.'."\n" + ."\n" + .'* 1: http1'."\n" + .'* 2: http2'."\n" + .'* 3: http3'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ConnectionTimeout' => [ + 'description' => 'The connection timeout period. Unit: milliseconds. Minimum value: 1000. Maximum value: 120000. Default value: 5000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5000', + ], + 'CustomHeaderContent' => [ + 'description' => 'The content of the custom request header.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + 'description' => 'Format: JSON map.'."\n", + ], + ], + 'IgnoreCertificateStatusError' => [ + 'description' => 'Specifies whether to ignore certificate status errors. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'IgnoreCertificateUntrustworthyError' => [ + 'description' => 'Specifies whether to ignore certificate incredibility. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'IgnoreInvalidHostError' => [ + 'description' => 'Specifies whether to ignore host invalidity. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'MonitorTimeout' => [ + 'description' => 'The monitoring timeout period. Unit: milliseconds. Minimum value: 1000. Maximum value: 120000. Default value: 60000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '6000', + ], + 'Redirection' => [ + 'description' => 'Specifies whether to support redirection. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'TransmissionSize' => [ + 'description' => 'The maximum file size of a single transfer. Unit: KB. Minimum value: 1. Maximum value: 20480. Valid values: 2048.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2048', + ], + 'IgnoreCertificateCanceledError' => [ + 'description' => 'Specifies whether to ignore certificate revocation errors. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'IgnoreCertificateAuthError' => [ + 'description' => 'Specifies whether to ignore CA certificate authentication errors. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'IgnoreCertificateOutOfDateError' => [ + 'description' => 'Specifies whether to ignore certificate invalidity. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'IgnoreCertificateUsingError' => [ + 'description' => 'Specifies whether to ignore certificate usage errors. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'VerifyWay' => [ + 'description' => 'Verification method.'."\n" + ."\n" + .'- 0: No verification'."\n" + .'- 1: Verification string'."\n" + .'- 2: MD5 verification', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'ValidateKeywords' => [ + 'description' => 'Verify keywords.', + 'type' => 'string', + 'example' => 'success', + ], + 'WhiteList' => [ + 'description' => 'DNS hijacking whitelist. Matching rules support IP, IP wildcard, subnet mask and CNAME. You can fill in multiple matching rules, and multiple matching rules are separated by vertical bars (|). For example: `www.aliyun.com:203.0.3.55|203.3.44.67`, which means that all IPs except 203.0.3.55 and 203.3.44.67 under the www.aliyun.com domain name are hijacked.', + 'type' => 'string', + 'example' => 'www.aliyun.com:203.0.3.55|203.3.44.67', + ], + ], + ], + 'Website' => [ + 'description' => 'The website-speed measurement parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'The destination URL.'."\n", + 'type' => 'string', + 'example' => 'http://www.aliyun.com', + ], + 'AutomaticScrolling' => [ + 'description' => 'Specifies whether to automatically scroll up and down the screen to load a page. 0: No. 1: Yes. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'CustomHeader' => [ + 'description' => 'Specifies whether to create a custom header. 0: No. 1: The first packet is modified. 2: All packets are modified. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'CustomHeaderContent' => [ + 'description' => 'The custom header. Format: JSON map.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}'."\n", + 'description' => 'JSON Map'."\n", + ], + ], + 'DisableCache' => [ + 'description' => 'Specifies whether to disable the cache. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1'."\n", + ], + 'DisableCompression' => [ + 'description' => 'Specifies whether to accept compressed files based on the HTTP Accept-Encoding request header. 0: No. 1: Yes. Default value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'FilterInvalidIP' => [ + 'description' => 'Specifies whether to exclude invalid IP addresses.'."\n" + ."\n" + .'* 1: No'."\n" + .'* 0: Yes'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'IgnoreCertificateError' => [ + 'description' => 'Specifies whether to ignore SSL certificate errors during browsing. 0: No. 1: Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'MonitorTimeout' => [ + 'description' => 'The monitoring timeout period. Unit: milliseconds. Default value: 20000. Minimum value: 5000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20000', + ], + 'Redirection' => [ + 'description' => 'Specifies whether to continue browsing after redirection. 0: No, 1:Yes. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'SlowElementThreshold' => [ + 'description' => 'The time threshold that is used to define a slow element. Unit: milliseconds. Default value: 5000. Minimum value: 1. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5000', + ], + 'WaitCompletionTime' => [ + 'description' => 'The maximum waiting time. Unit: milliseconds. Default value: 5000. Minimum value: 5000. Maximum value: 300000.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5000', + ], + 'VerifyStringBlacklist' => [ + 'description' => 'The verification string is an arbitrary string in the source code of the monitoring page. If the source code returned by the client contains any string in the blacklist, an error 650 "Verification string failed" will be reported. Multiple strings are separated by vertical bars (|).', + 'type' => 'string', + 'example' => 'error', + ], + 'VerifyStringWhitelist' => [ + 'description' => 'The verification string is an arbitrary string in the source code of the monitoring page. The source code returned by the client must contain all the strings in the whitelist, otherwise an error 650 "Verification string failed" will be reported. Multiple strings are separated by a vertical bar (|).', + 'type' => 'string', + 'example' => 'success', + ], + 'ElementBlacklist' => [ + 'description' => 'If an element configured in the element blacklist appears during page loading, no request will be made to load the element.', + 'type' => 'string', + 'example' => 'www.example.com/a.jpg', + ], + 'DNSHijackWhitelist' => [ + 'description' => 'When resolving a domain name (such as www.aliyun.com), if the resolved IP address or CNAME is not in the DNS hijacking whitelist, the user will fail to access or return a non-Aliyun target IP; if the IP or CNAME in the resolution result is in the DNS whitelist, it will be deemed that no DNS hijacking has occurred.'."\n" + ."\n" + .'Fill in the format: `domain name: matching rule`. Matching rules support IP, IP wildcard, subnet mask and CNAME. You can fill in multiple matching rules, and multiple matching rules are separated by vertical bars (|). '."\n" + ."\n" + .'For example: `www.aliyun.com:203.0.3.55|203.3.44.67`, which means that all IPs except 203.0.3.55 and 203.3.44.67 under the www.aliyun.com domain name are hijacked.', + 'type' => 'string', + 'example' => 'www.aliyun.com:203.0.3.55|203.3.44.67', + ], + 'PageTamper' => [ + 'description' => 'If any element other than the domain name setting appears on the monitoring page, it means that the page has been tampered. Common manifestations include pop-up ads, floating ads, jumps, etc.'."\n" + ."\n" + .'Fill in the format: `domain name: element`. Elements support wildcards, and multiple elements can be filled in. Multiple elements are separated by vertical bars (|). For example: `www.aliyun.com:|/cc/bb/a.gif|/vv/bb/cc.jpg`, which means that all elements except the basic document, /cc/bb/a.gif and /vv/bb/cc.jpg under the www.aliyun.com domain name are considered to be tampered with.', + 'type' => 'string', + 'example' => 'www.aliyun.com:|/cc/bb/a.gif|/vv/bb/cc.jpg', + ], + 'FlowHijackJumpTimes' => [ + 'description' => 'Identify elements: Set the total number of elements to browse the page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'FlowHijackLogo' => [ + 'description' => 'Hijacking flag: Set the key information for matching. Fill in the hijacking judgment keyword or key element, and asterisks (*) are allowed.', + 'type' => 'string', + 'example' => 'aliyun', + ], + ], + ], + 'Stream' => [ + 'description' => 'Streaming media dial test configuration.', + 'type' => 'object', + 'properties' => [ + 'TargetUrl' => [ + 'description' => 'Streaming media resource address.', + 'type' => 'string', + 'example' => 'http://www.aliyun.com/stream/test.mp4', + ], + 'StreamType' => [ + 'description' => 'Audio and video flag:'."\n" + ."\n" + .'- 0: video'."\n" + .'- 1: audio', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'StreamMonitorTimeout' => [ + 'description' => 'Monitoring duration, in seconds, supports up to 60 seconds. If not specified, the default value is 60 seconds.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '30', + ], + 'StreamAddressType' => [ + 'description' => 'Resource address type:'."\n" + ."\n" + .'- 1: Resource address.'."\n" + .'- 0: Page address. If not passed, the default value is 0.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'PlayerType' => [ + 'description' => 'Player, default is 12 if not specified.'."\n" + ."\n" + .'- 12: VLC'."\n" + .'- 2: Flash Player', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '12', + ], + 'CustomHeaderContent' => [ + 'description' => 'Custom header, JSON Map format.', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'description' => 'Custom header, JSON Map format.', + 'example' => '{'."\n" + .' "key1": "value1",'."\n" + .' "key2": "value2"'."\n" + .'}', + ], + ], + 'WhiteList' => [ + 'description' => 'DNS hijacking whitelist. Matching rules support IP, IP wildcard, subnet mask and CNAME. You can fill in multiple matching rules, and multiple matching rules are separated by vertical bars (|). For example: `www.aliyun.com:203.0.3.55|203.3.44.67`, which means that all IPs except 203.0.3.55 and 203.3.44.67 under the www.aliyun.com domain name are hijacked.', + 'type' => 'string', + 'example' => 'www.aliyun.com:203.0.3.55|203.3.44.67', + ], + ], + ], + ], + ], + 'MonitorCategory' => [ + 'description' => 'The detection point type. 1: PC. 2: mobile device.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Monitors' => [ + 'description' => 'The list of monitoring points.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of monitoring points.', + 'type' => 'object', + 'properties' => [ + 'CityCode' => [ + 'description' => 'The city code.'."\n", + 'type' => 'string', + 'example' => '110100', + ], + 'OperatorCode' => [ + 'description' => 'The carrier code.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'ClientType' => [ + 'description' => 'The client type of the monitoring point. Valid values: 1: data center. 2: Internet. 3: mobile device. 4: ECS instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + 'Frequency' => [ + 'description' => 'The detection frequency. Valid values: 1m, 5m, 10m, 15m, 20m, 30m, 1h, 2h, 3h, 4h, 6h, 8h, 12h, and 24h.'."\n", + 'type' => 'string', + 'example' => '5m', + ], + 'CustomPeriod' => [ + 'description' => 'The custom cycle.'."\n", + 'type' => 'object', + 'properties' => [ + 'EndHour' => [ + 'description' => 'The hour at which the test ends. Valid values: 0 to 24.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '22', + ], + 'StartHour' => [ + 'description' => 'The hour at which the test starts. Valid values: 0 to 24.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '14', + ], + ], + ], + 'CommonSetting' => [ + 'description' => 'The general settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'CustomHost' => [ + 'description' => 'The custom host.'."\n", + 'type' => 'object', + 'properties' => [ + 'Hosts' => [ + 'description' => 'The list of hosts.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of hosts.', + 'type' => 'object', + 'properties' => [ + 'Domain' => [ + 'description' => 'The domain name.'."\n", + 'type' => 'string', + 'example' => 'www.aliyun.com', + ], + 'IpType' => [ + 'description' => 'The IP version. Valid values:'."\n" + ."\n" + .'* 0: A version is automatically selected.'."\n" + .'* 1: IPv4'."\n" + .'* 2: IPv6'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Ips' => [ + 'description' => 'The list of IP addresses.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IP address.'."\n", + 'type' => 'string', + 'example' => '10.0.114.17', + ], + ], + ], + ], + ], + 'SelectType' => [ + 'description' => 'The selection mode. 0: Random. 1: Polling.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + ], + ], + 'IpType' => [ + 'description' => 'The IP version. Valid values:'."\n" + ."\n" + .'* 0: A version is automatically selected.'."\n" + .'* 1: IPv4'."\n" + .'* 2: IPv6'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'MonitorSamples' => [ + 'description' => 'Specifies whether to evenly distribute monitoring samples. Valid values:'."\n" + ."\n" + .'* 0: No'."\n" + .'* 1: Yes'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'IsOpenTrace' => [ + 'description' => 'Whether to enable tracing.', + 'type' => 'boolean', + 'example' => 'true', + ], + 'TraceClientType' => [ + 'description' => 'Tracing client type:'."\n" + ."\n" + .'- 0: ARMS Agent'."\n" + .'- 1: Open Telemetry'."\n" + .'- 2: Jaeger', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'XtraceRegion' => [ + 'description' => 'Tracing data reporting region.', + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'CustomVPCSetting' => [ + 'description' => 'User VPC information. If the dial-up is to the Alibaba Cloud intranet address, you need to configure the VPC information.', + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'VpcId' => [ + 'description' => 'VPC ID.', + 'type' => 'string', + 'example' => 'vpc-2zexy5nae9q2otaxxxx', + ], + 'VSwitchId' => [ + 'description' => 'The vSwitch ID.'."\n", + 'type' => 'string', + 'example' => 'vsw-bp1i0xezblf1yrz4xxxxx', + ], + 'SecureGroupId' => [ + 'description' => 'Security group ID. This security group is where the dial-up client is located. The security group limits the inbound and outbound rules of the dial-up client in the VPC. You need to set the inbound rules of the security group where your VPC is located to allow the security group where the dial-up client is located to access. Otherwise, the dial-up client cannot smoothly access the resources in your VPC.', + 'type' => 'string', + 'example' => 'sg-xxxxxxx', + ], + ], + ], + 'CustomPrometheusSetting' => [ + 'description' => 'The reserved parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'PrometheusLabels' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'string', + 'example' => 'Reserved parameter'."\n", + 'description' => 'A reserved parameter.'."\n", + ], + ], + 'PrometheusClusterId' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'Reserved parameter'."\n", + ], + 'PrometheusClusterRegion' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'Reserved parameter'."\n", + ], + ], + ], + ], + ], + 'AvailableAssertions' => [ + 'description' => 'The list of assertions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The assertion type. Valid values: HttpResCode, HttpResHead, HttpResBody, HttpResBodyJson, HttpResponseTime, IcmpPackLoss (packet loss rate), IcmpPackMaxLatency (maximum packet latency), IcmpPackAvgLatency (average packet latency), TraceRouteHops (number of hops), DnsARecord (A record), DnsCName (CNAME), websiteTTFB (time to first packet), websiteTTLB (time to last packet), websiteFST (first paint time), websiteFFST (first meaningful paint), websiteOnload (full loaded time). For more information, see the following description.'."\n", + 'type' => 'string', + 'example' => 'websiteTTLB', + ], + 'Target' => [ + 'description' => 'The check target. If you set the type parameter to HttpResCode, HttpResBody, or HttpResponseTime, you do not need to set the target parameter. If you set the type parameter to HttpResHead, you must specify the key in the header. If you set the type parameter to HttpResBodyJson, use jsonPath.'."\n", + 'type' => 'string', + 'example' => 'key'."\n", + ], + 'Operator' => [ + 'description' => 'The condition. gt: greater than. gte: greater than or equal to. lt: less than. lte: less than or equal to. eq: equal to. neq: not equal to. ctn: contain. nctn: does not contain. exist: exist. n_exist: does not exist. belong: belong to. n_belong: does not belong to. reg_match: regular expression.'."\n", + 'type' => 'string', + 'example' => 'gt', + ], + 'Expect' => [ + 'description' => 'The expected value.'."\n", + 'type' => 'string', + 'example' => '100', + ], + ], + ], + ], + 'Status' => [ + 'description' => 'CREATING: The task is being created. RUNNING: The task is running. PARTIAL_RUNNING: The task is partially running. STOP: The task is stopped. LIMIT_STOP: The task is stopped due to quota insufficiency. EXCEPTION: The task is abnormal. DELETE: The task is deleted. DELETE_EXCEPTION: The task failed to be deleted.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'default', + ], + 'Tags' => [ + 'description' => 'The tag.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'example' => 'user1', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => 'myweb', + ], + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'TaskQuotaLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'CommercialStatusException', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticTrailExpired', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticInDebt', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyTimesExhausted', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyLimit', + 'errorMessage' => '%s', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E13430A6-57A9-56E9-9D8D-28FE8DEBCA40\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"5308a2691f59422c8c3b7aeccec9cd3b\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Name\\": \\"拨测任务\\",\\n \\"TaskType\\": 5,\\n \\"MonitorConf\\": {\\n \\"NetICMP\\": {\\n \\"TargetUrl\\": \\"www.aliyun.com\\",\\n \\"Interval\\": 200,\\n \\"PackageNum\\": 4,\\n \\"PackageSize\\": 1024,\\n \\"SplitPackage\\": true,\\n \\"Timeout\\": 2000,\\n \\"TracertEnable\\": true,\\n \\"TracertNumMax\\": 64,\\n \\"TracertTimeout\\": 60000\\n },\\n \\"NetTCP\\": {\\n \\"TargetUrl\\": \\"127.0.0.1:8888\\",\\n \\"ConnectTimes\\": 4,\\n \\"Interval\\": 200,\\n \\"Timeout\\": 20000,\\n \\"TracertEnable\\": true,\\n \\"TracertNumMax\\": 20,\\n \\"TracertTimeout\\": 60000\\n },\\n \\"NetDNS\\": {\\n \\"TargetUrl\\": \\"www.aliyun.com\\",\\n \\"DnsServerIpType\\": 0,\\n \\"NsServer\\": \\"114.114.114.114\\",\\n \\"QueryMethod\\": 0,\\n \\"Timeout\\": 5000\\n },\\n \\"ApiHTTP\\": {\\n \\"TargetUrl\\": \\"http://127.0.0.1:8090/api/list\\",\\n \\"Method\\": \\"POST\\",\\n \\"RequestHeaders\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"key1\\\\\\": \\\\\\"value1\\\\\\",\\\\n \\\\\\"key2\\\\\\": \\\\\\"value2\\\\\\"\\\\n}\\"\\n },\\n \\"RequestBody\\": {\\n \\"Content\\": \\"text/plain\\",\\n \\"Type\\": \\"multipart/form-data\\"\\n },\\n \\"ConnectTimeout\\": 5000,\\n \\"Timeout\\": 10000,\\n \\"CheckCert\\": false,\\n \\"ProtocolAlpnProtocol\\": 1\\n },\\n \\"FileDownload\\": {\\n \\"TargetUrl\\": \\"https://********\\",\\n \\"DownloadKernel\\": 0,\\n \\"QuickProtocol\\": 1,\\n \\"ConnectionTimeout\\": 5000,\\n \\"CustomHeaderContent\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"key1\\\\\\": \\\\\\"value1\\\\\\",\\\\n \\\\\\"key2\\\\\\": \\\\\\"value2\\\\\\"\\\\n}\\"\\n },\\n \\"IgnoreCertificateStatusError\\": 0,\\n \\"IgnoreCertificateUntrustworthyError\\": 0,\\n \\"IgnoreInvalidHostError\\": 0,\\n \\"MonitorTimeout\\": 6000,\\n \\"Redirection\\": 0,\\n \\"TransmissionSize\\": 2048,\\n \\"IgnoreCertificateCanceledError\\": 0,\\n \\"IgnoreCertificateAuthError\\": 0,\\n \\"IgnoreCertificateOutOfDateError\\": 0,\\n \\"IgnoreCertificateUsingError\\": 0,\\n \\"VerifyWay\\": 0,\\n \\"ValidateKeywords\\": \\"success\\",\\n \\"WhiteList\\": \\"www.aliyun.com:203.0.3.55|203.3.44.67\\"\\n },\\n \\"Website\\": {\\n \\"TargetUrl\\": \\"http://www.aliyun.com\\",\\n \\"AutomaticScrolling\\": 0,\\n \\"CustomHeader\\": 0,\\n \\"CustomHeaderContent\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"key1\\\\\\": \\\\\\"value1\\\\\\",\\\\n \\\\\\"key2\\\\\\": \\\\\\"value2\\\\\\"\\\\n}\\\\n\\"\\n },\\n \\"DisableCache\\": 1,\\n \\"DisableCompression\\": 0,\\n \\"FilterInvalidIP\\": 0,\\n \\"IgnoreCertificateError\\": 0,\\n \\"MonitorTimeout\\": 20000,\\n \\"Redirection\\": 1,\\n \\"SlowElementThreshold\\": 5000,\\n \\"WaitCompletionTime\\": 5000,\\n \\"VerifyStringBlacklist\\": \\"error\\",\\n \\"VerifyStringWhitelist\\": \\"success\\",\\n \\"ElementBlacklist\\": \\"www.example.com/a.jpg\\",\\n \\"DNSHijackWhitelist\\": \\"www.aliyun.com:203.0.3.55|203.3.44.67\\",\\n \\"PageTamper\\": \\"www.aliyun.com:|/cc/bb/a.gif|/vv/bb/cc.jpg\\",\\n \\"FlowHijackJumpTimes\\": 0,\\n \\"FlowHijackLogo\\": \\"aliyun\\"\\n },\\n \\"Stream\\": {\\n \\"TargetUrl\\": \\"http://www.aliyun.com/stream/test.mp4\\",\\n \\"StreamType\\": 0,\\n \\"StreamMonitorTimeout\\": 30,\\n \\"StreamAddressType\\": 0,\\n \\"PlayerType\\": 12,\\n \\"CustomHeaderContent\\": {\\n \\"key\\": \\"{\\\\n \\\\\\"key1\\\\\\": \\\\\\"value1\\\\\\",\\\\n \\\\\\"key2\\\\\\": \\\\\\"value2\\\\\\"\\\\n}\\"\\n },\\n \\"WhiteList\\": \\"www.aliyun.com:203.0.3.55|203.3.44.67\\"\\n }\\n },\\n \\"MonitorCategory\\": 1,\\n \\"Monitors\\": [\\n {\\n \\"CityCode\\": \\"110100\\",\\n \\"OperatorCode\\": \\"1\\",\\n \\"ClientType\\": 1\\n }\\n ],\\n \\"Frequency\\": \\"5m\\",\\n \\"CustomPeriod\\": {\\n \\"EndHour\\": 22,\\n \\"StartHour\\": 14\\n },\\n \\"CommonSetting\\": {\\n \\"CustomHost\\": {\\n \\"Hosts\\": [\\n {\\n \\"Domain\\": \\"www.aliyun.com\\",\\n \\"IpType\\": 0,\\n \\"Ips\\": [\\n \\"10.0.114.17\\"\\n ]\\n }\\n ],\\n \\"SelectType\\": 0\\n },\\n \\"IpType\\": 0,\\n \\"MonitorSamples\\": 0,\\n \\"IsOpenTrace\\": true,\\n \\"TraceClientType\\": 1,\\n \\"XtraceRegion\\": \\"cn-hangzhou\\",\\n \\"CustomVPCSetting\\": {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"VpcId\\": \\"vpc-2zexy5nae9q2otaxxxx\\",\\n \\"VSwitchId\\": \\"vsw-bp1i0xezblf1yrz4xxxxx\\",\\n \\"SecureGroupId\\": \\"sg-xxxxxxx\\"\\n },\\n \\"CustomPrometheusSetting\\": {\\n \\"PrometheusLabels\\": {\\n \\"key\\": \\"保留字段。\\"\\n },\\n \\"PrometheusClusterId\\": \\"保留字段。\\",\\n \\"PrometheusClusterRegion\\": \\"保留字段。\\"\\n }\\n },\\n \\"AvailableAssertions\\": [\\n {\\n \\"Type\\": \\"websiteTTLB\\",\\n \\"Target\\": \\"key\\\\n\\",\\n \\"Operator\\": \\"gt\\",\\n \\"Expect\\": \\"100\\"\\n }\\n ],\\n \\"Status\\": \\"RUNNING\\",\\n \\"ResourceGroupId\\": \\"default\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"user1\\",\\n \\"Value\\": \\"p_运维\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetTimingSyntheticTask', + ], + 'ListSyntheticDetail' => [ + 'summary' => 'Obtains the results of one or more synthetic tests.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region. Set the value to cn-hangzhou.', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'SyntheticType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the synthetic test. Valid values: 1 and 2. 1 represents an immediate test, and 2 represents a scheduled test.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Category', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the results. Set the value to SYNTHETIC.', + 'type' => 'string', + 'required' => false, + 'example' => 'SYNTHETIC', + ], + ], + [ + 'name' => 'Detail', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the list that contains the results. This parameter is required. Valid values:'."\n" + ."\n" + .'* ICMP_LIST'."\n" + .'* TCP_LIST'."\n" + .'* DNS_LIST'."\n" + .'* HTTP_LIST'."\n" + .'* WEBSITE_LIST'."\n" + .'* DOWNLOAD_LIST'."\n" + .'* ALL'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ICMP_LIST', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The filter condition. This parameter is required.'."\n" + ."\n" + .'* To query the result of a synthetic monitoring task, set this parameter in the following format: {"taskId":"${taskId}"}.'."\n" + .'* To query the result details of a synthetic monitoring task, set this parameter in the following format: {"taskId":"${taskId}","dataId":"${dataId}"}.'."\n", + 'type' => 'object', + 'required' => false, + 'additionalProperties' => [ + 'type' => 'string', + 'example' => '{"taskId":"xxxaaabbbcccdddeeefffggg"} ', + 'description' => 'The filter condition.'."\n", + ], + ], + ], + [ + 'name' => 'AdvancedFilters', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'An array of filter conditions. This parameter is required.'."\n" + ."\n" + .'* To query the list of synthetic test results, set this parameter in the following format: \\[{"Key":"taskType","OpType":"in","Value":\\[Task type]}].'."\n" + .'* To query the result details of a synthetic monitoring task, set this parameter in the following format: \\[{"Key":"dataId","OpType":"eq","Value":"dataId"}]. dataId is returned when you query the list of synthetic test results.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'An array of filter conditions.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The filter condition. The taskType and dataId fields are supported.'."\n" + ."\n" + .'* To query the list of synthetic test results, set the key to taskType.'."\n" + .'* To query the result details of a synthetic monitoring task, set the key to dataId.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'taskType', + ], + 'OpType' => [ + 'description' => 'The type of the filter condition. Valid values: eq and in. eq: equal to. in: include.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'eq', + ], + 'Value' => [ + 'description' => 'The value of the filter condition. The type of the task. Valid values: 1: ICMP 2: TCP 3: DNS 4: HTTP 5: website speed measurement 6: file download'."\n", + 'type' => 'any', + 'required' => false, + 'example' => '1', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'ExactFilters', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'A reserved field.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'A reserved field.', + 'type' => 'string', + 'required' => false, + 'example' => 'null', + ], + 'OpType' => [ + 'description' => 'A reserved field.', + 'type' => 'string', + 'required' => false, + 'example' => 'null', + ], + 'Value' => [ + 'description' => 'A reserved field.', + 'type' => 'any', + 'required' => false, + 'example' => 'null', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The timestamp of the start time of the query. Unit: milliseconds.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1684110343127', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The timestamp of the end time of the query. Unit: milliseconds.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1684480557772', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The field based on which results are sorted. Set the value to timestamp.', + 'type' => 'string', + 'required' => false, + 'example' => 'timestamp', + ], + ], + [ + 'name' => 'Order', + 'in' => 'query', + 'schema' => [ + 'description' => 'The order in which results are sorted. Valid values:'."\n" + ."\n" + .'- `ASC`: ascending order'."\n" + .'- `DESC`: descending order', + 'type' => 'string', + 'required' => false, + 'example' => 'DESC', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '70675725-8F11-4817-8106-CFE0AD71****', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned. The status code 200 indicates that the request was successful.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message returned.', + 'type' => 'string', + 'example' => 'null', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Items' => [ + 'description' => 'The list of results.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of results.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'any', + 'description' => 'The results details.'."\n", + 'example' => '{'."\n" + .' "requestId": "9A82BD90-4A42-5E25-9DA1-D85A2D4AA696",'."\n" + .' "code": "200",'."\n" + .' "message": null,'."\n" + .' "action": null,'."\n" + .' "apiName": null,'."\n" + .' "extendedCode": null,'."\n" + .' "bizCode": null,'."\n" + .' "httpStatusCode": "200",'."\n" + .' "accessDeniedDetail": null,'."\n" + .' "data": {'."\n" + .' "RequestId": "9A82BD90-4A42-5E25-9DA1-D85A2D4xxxxx",'."\n" + .' "Data": {'."\n" + .' "PageSize": 999,'."\n" + .' "Total": 1,'."\n" + .' "Page": 1,'."\n" + .' "Items": ['."\n" + .' {'."\n" + .' "__time__": 1710115743,'."\n" + .' "ipIsp": "aliyun",'."\n" + .' "targetCity": "",'."\n" + .' "ipCity": "Virginia",'."\n" + .' "__source__": "",'."\n" + .' "resultCode": "2400",'."\n" + .' "icmpLossRate": "20",'."\n" + .' "ipCountry": "USA",'."\n" + .' "tracertHops": "0",'."\n" + .' "url": "www.aliyun.com",'."\n" + .' "targetIp": "47.88.XX.XX",'."\n" + .' "targetOperator": "aliyun",'."\n" + .' "clientType": "4",'."\n" + .' "dataId": "377a04e1cd5a4adc8fb0f249666xxxxx",'."\n" + .' "tracertTime": "null",'."\n" + .' "clientLastIp": "21.0.XX.XX",'."\n" + .' "errName": "null",'."\n" + .' "ipRegion": "USA",'."\n" + .' "taskName": "Aliyun Dial-up Test Point",'."\n" + .' "icmpTime": "229",'."\n" + .' "timestamp": "1710137152606"'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "Code": 200'."\n" + .' },'."\n" + .' "successResponse": true'."\n" + .'}', + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of entries.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '12', + ], + 'Page' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries returned on each page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'TaskCreateTime' => [ + 'description' => 'A reserved field.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => 'null', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMissing', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'TaskQuotaLimit', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ParameterRegionIllegal', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + ], + 403 => [ + [ + 'errorCode' => 'RAMNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'STSNotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'IllegalUserAccess', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'CommercialStatusException', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticTrailExpired', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticInDebt', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyTimesExhausted', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'SyntheticDailyLimit', + 'errorMessage' => '%s', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"70675725-8F11-4817-8106-CFE0AD71****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"null\\",\\n \\"Data\\": {\\n \\"Items\\": [\\n {\\n \\"key\\": \\"{\\\\n \\\\\\"requestId\\\\\\": \\\\\\"9A82BD90-4A42-5E25-9DA1-D85A2D4AA696\\\\\\",\\\\n \\\\\\"code\\\\\\": \\\\\\"200\\\\\\",\\\\n \\\\\\"message\\\\\\": null,\\\\n \\\\\\"action\\\\\\": null,\\\\n \\\\\\"apiName\\\\\\": null,\\\\n \\\\\\"extendedCode\\\\\\": null,\\\\n \\\\\\"bizCode\\\\\\": null,\\\\n \\\\\\"httpStatusCode\\\\\\": \\\\\\"200\\\\\\",\\\\n \\\\\\"accessDeniedDetail\\\\\\": null,\\\\n \\\\\\"data\\\\\\": {\\\\n \\\\\\"RequestId\\\\\\": \\\\\\"9A82BD90-4A42-5E25-9DA1-D85A2D4xxxxx\\\\\\",\\\\n \\\\\\"Data\\\\\\": {\\\\n \\\\\\"PageSize\\\\\\": 999,\\\\n \\\\\\"Total\\\\\\": 1,\\\\n \\\\\\"Page\\\\\\": 1,\\\\n \\\\\\"Items\\\\\\": [\\\\n {\\\\n \\\\\\"__time__\\\\\\": 1710115743,\\\\n \\\\\\"ipIsp\\\\\\": \\\\\\"阿里云\\\\\\",\\\\n \\\\\\"targetCity\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"ipCity\\\\\\": \\\\\\"弗吉尼亚\\\\\\",\\\\n \\\\\\"__source__\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"resultCode\\\\\\": \\\\\\"2400\\\\\\",\\\\n \\\\\\"icmpLossRate\\\\\\": \\\\\\"20\\\\\\",\\\\n \\\\\\"ipCountry\\\\\\": \\\\\\"美国\\\\\\",\\\\n \\\\\\"tracertHops\\\\\\": \\\\\\"0\\\\\\",\\\\n \\\\\\"url\\\\\\": \\\\\\"www.aliyun.com\\\\\\",\\\\n \\\\\\"targetIp\\\\\\": \\\\\\"47.88.XX.XX\\\\\\",\\\\n \\\\\\"targetOperator\\\\\\": \\\\\\"阿里云\\\\\\",\\\\n \\\\\\"clientType\\\\\\": \\\\\\"4\\\\\\",\\\\n \\\\\\"dataId\\\\\\": \\\\\\"377a04e1cd5a4adc8fb0f249666xxxxx\\\\\\",\\\\n \\\\\\"tracertTime\\\\\\": \\\\\\"null\\\\\\",\\\\n \\\\\\"clientLastIp\\\\\\": \\\\\\"21.0.XX.XX\\\\\\",\\\\n \\\\\\"errName\\\\\\": \\\\\\"null\\\\\\",\\\\n \\\\\\"ipRegion\\\\\\": \\\\\\"美国\\\\\\",\\\\n \\\\\\"taskName\\\\\\": \\\\\\"阿里云拨测点\\\\\\",\\\\n \\\\\\"icmpTime\\\\\\": \\\\\\"229\\\\\\",\\\\n \\\\\\"timestamp\\\\\\": \\\\\\"1710137152606\\\\\\"\\\\n }\\\\n ]\\\\n },\\\\n \\\\\\"Code\\\\\\": 200\\\\n },\\\\n \\\\\\"successResponse\\\\\\": true\\\\n}\\"\\n }\\n ],\\n \\"Total\\": 12,\\n \\"Page\\": 1,\\n \\"PageSize\\": 10,\\n \\"TaskCreateTime\\": 0\\n }\\n}","type":"json"}]', + 'title' => 'ListSyntheticDetail', + 'requestParamsDescription' => 'The query of synthetic test results contains two steps. Take a ping synthetic test as an example.'."\n" + ."\n" + .'Step 1: Query a result list:'."\n" + ."\n" + .'{"SyntheticType":1,"RegionId":"cn-hangzhou","Category":"SYNTHETIC","Detail":"ICMP_LIST","Filters":{"taskId":"xxxx"},"AdvancedFilters":[{"Key":"taskType","OpType":"in","Value":[1]}],"StartTime":1710124284000,"EndTime":1710125544000,"Page":1,"PageSize":999}'."\n" + ."\n" + .'Step 2: Query the result details:'."\n" + ."\n" + .'{"RegionId":"cn-hangzhou","StartTime":1710115743153,"EndTime":1710137343153,"SyntheticType":2,"Category":"SYNTHETIC","Detail":"ICMP_LIST","AdvancedFilters":[{"Key":"dataId","OpType":"eq","Value":"$dataId"}],"Page":1,"PageSize":999,"Filters":{"dataId":"$dataId"}}'."\n" + ."\n" + .'Replace $dataId with the dataId field in each record that is returned in Step 1.', + ], + 'CreateSyntheticTask' => [ + 'summary' => 'Creates or updates a synthetic monitoring task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region in which the application is located.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the task. To update a synthetic monitoring task, enter the task name and set the **UpdateTask** parameter to **true**.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Network synthetic monitoring task'."\n", + ], + ], + [ + 'name' => 'Url', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL for synthetic monitoring.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://www.example.com', + ], + ], + [ + 'name' => 'MonitorList', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The list of monitoring points.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CityCode' => [ + 'description' => 'The ID of the city to which the monitoring point belongs.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1100101', + ], + 'NetServiceId' => [ + 'description' => 'The ID of the carrier.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '18', + ], + 'MonitorType' => [ + 'description' => 'The carrier type:'."\n" + ."\n" + .'* IDC'."\n" + .'* LastMilie'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => 'IDC', + ], + ], + 'required' => false, + ], + 'required' => true, + ], + ], + [ + 'name' => 'TaskType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the monitoring task. Valid values:'."\n" + ."\n" + .'1. 3: web page performance - IE'."\n" + .'2. 34: web Page Performance - Chrome'."\n" + .'3. 0: network quality'."\n" + .'4. 40: file download'."\n" + .'5. 7:API performance'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '0', + ], + ], + [ + 'name' => 'IntervalTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The interval at which synthetic monitoring is performed. Unit: minutes. Valid values:'."\n" + ."\n" + .'* 1'."\n" + .'* 5'."\n" + .'* 10'."\n" + .'* 15'."\n" + .'* 20'."\n" + .'* 30'."\n" + .'* 60'."\n" + .'* 120'."\n" + .'* 180'."\n" + .'* 240'."\n" + .'* 360'."\n" + .'* 480'."\n" + .'* 720'."\n" + .'* 1440'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '5', + ], + ], + [ + 'name' => 'IntervalType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The interval type.'."\n" + ."\n" + .'* 0: daily'."\n" + .'* 1: custom frequency'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '0', + ], + ], + [ + 'name' => 'ExtendInterval', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The frequency.'."\n", + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The time when synthetic monitoring starts. The format is `yyyy-MM-dd HH`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-07-20 10', + ], + 'EndTime' => [ + 'description' => 'The time when synthetic monitoring ends. The format is `yyyy-MM-dd HH`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-08-20 10', + ], + 'Days' => [ + 'description' => 'The day on which synthetic monitoring is performed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The day on which synthetic monitoring is performed.'."\n" + ."\n" + .'* \\-1: every day'."\n" + .'* 0: Sunday'."\n" + .'* 1: Monday'."\n" + .'* 2: Tuesday'."\n" + .'* 3: Wednesday'."\n" + .'* 4: Thursday'."\n" + .'* 5: Friday'."\n" + .'* 6: Saturday'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '-1', + ], + 'required' => false, + ], + 'StartHour' => [ + 'description' => 'The hour at which synthetic monitoring starts.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '00', + ], + 'StartMinute' => [ + 'description' => 'The minute at which synthetic monitoring starts.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '00', + ], + 'EndHour' => [ + 'description' => 'The hour at which synthetic monitoring ends.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '23', + ], + 'EndMinute' => [ + 'description' => 'The minute at which synthetic monitoring ends.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '00', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'IpType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP address type:'."\n" + ."\n" + .'* 0: an automatic IP address'."\n" + .'* 1: IPv4'."\n" + .'* 2: IPv6'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '0', + ], + ], + [ + 'name' => 'Net', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The network synthetic monitoring task.'."\n", + 'type' => 'object', + 'properties' => [ + 'NetICMPSwitch' => [ + 'description' => 'Specifies whether to enable ping monitoring.'."\n" + ."\n" + .'* 0: Off.'."\n" + .'* 1: On. You must set Internet control message protocol (ICMP) parameters if you want to enable ping monitoring.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'NetICMPActive' => [ + 'description' => 'The protocol type. Valid values:'."\n" + ."\n" + .'* 0: ICMP'."\n" + .'* 1: TCP'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + 'NetICMPInterval' => [ + 'description' => 'The interval at which the network synthetic monitoring task is executed. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'NetICMPNum' => [ + 'description' => 'The number of packages.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '4', + ], + 'NetICMPSize' => [ + 'description' => 'The package size.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '32', + ], + 'NetDNSSwitch' => [ + 'description' => 'Specifies whether to enable domain name system (DNS) monitoring.'."\n" + ."\n" + .'* 0: Off.'."\n" + .'* 1: On. You must set DNS parameters if you want to enable DNS monitoring.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'NetDNSTimeout' => [ + 'description' => 'The timeout period of DNS monitoring. Default value: 5 seconds. Valid values: 0 to 45 seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '5', + ], + 'NetDNSQueryMethod' => [ + 'description' => 'The DNS query method. Valid values:'."\n" + ."\n" + .'* 1: recursion'."\n" + .'* 2: iteration'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'NetDNSNs' => [ + 'description' => 'The DNS server.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '114.114.XX.XX', + ], + 'NetDigSwitch' => [ + 'description' => 'Specifies whether to display the data in the DIG format. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + 'NetDNSServer' => [ + 'description' => 'The IP address type of the DNS server.'."\n" + ."\n" + .'* 0: IPv4'."\n" + .'* 1: IPv6'."\n" + .'* 2: an automatic IP address'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + 'NetTraceRouteSwitch' => [ + 'description' => 'Specifies whether to enable tracert monitoring.'."\n" + ."\n" + .'* 0: Off.'."\n" + .'* 1: On. You must set the tracert parameters if you want to enable tracert monitoring.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'NetTraceRouteTimeout' => [ + 'description' => 'The timeout period of tracert monitoring. Valid values: 0 to 300 seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '60', + ], + 'NetTraceRouteNum' => [ + 'description' => 'The maximum number of active monitoring points.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '20', + ], + 'WhiteList' => [ + 'description' => 'The whitelist for DNS hijacking. The format is `Domain name: Matching rule`.'."\n" + ."\n" + .'> Wireless application protocol (WAP) networks do not support DNS hijacking.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:202.0.3.55|203.3.44.67', + ], + 'NetICMPTimeout' => [ + 'description' => 'The timeout period of Ping monitoring.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '20', + ], + 'NetICMPDataCut' => [ + 'description' => 'Specifies whether to split packages.'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'CommonParam', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The common parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlarmFlag' => [ + 'description' => 'Specifies whether to create an alert rule.'."\n" + ."\n" + .'* 1: creates an alert.'."\n" + .'* 0: does not create an alert.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + 'AlertList' => [ + 'description' => 'The alert parameters.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the alert rule.'."\n" + ."\n" + .'For network synthetic monitoring, use the following names:'."\n" + ."\n" + .'* Latency: PING_SET'."\n" + .'* Packet loss rate: PING_LOST_RATE'."\n" + .'* Hijacking: HIJACKPER'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'PING_SET', + ], + 'IsCritical' => [ + 'description' => 'Specifies whether the condition must be met.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => 'true', + ], + 'Symbols' => [ + 'description' => 'Specifies how the condition is evaluated. Valid values:'."\n" + ."\n" + .'* 1: greater than'."\n" + .'* 0: less than'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'AlertPolicyId' => [ + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1234', + ], + 'AlertNotifierId' => [ + 'description' => 'The ID of the alert recipient. Separate multiple recipients with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + 'StartExecutionTime' => [ + 'description' => 'The time when execution starts.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2022-07-20 10', + ], + 'MonitorSamples' => [ + 'description' => 'Specifies whether to evenly distribute monitoring samples. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Navigation', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The monitoring items that are associated with the browse tasks.'."\n", + 'type' => 'object', + 'properties' => [ + 'NavDisableCache' => [ + 'description' => 'Specifies whether to disable caching.'."\n" + ."\n" + .'* 1: disable'."\n" + .'* 0: enable'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'NavReturnElement' => [ + 'description' => 'Specifies whether to return the elements on the page.'."\n" + ."\n" + .'* 1: no. Returns the basic document data.'."\n" + .'* 2: yes. Returns all document data.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2', + ], + 'NavRedirection' => [ + 'description' => 'Specifies whether to continue browsing after a redirection occurs.'."\n" + ."\n" + .'* 1: yes'."\n" + .'* 0: no'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'NavDisableCompression' => [ + 'description' => 'Specifies whether to enable the feature of using the Accept-Encoding field to determine whether to accept compressed files.'."\n" + ."\n" + .'* 1: disable'."\n" + .'* 0: enable'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + 'NavAutomaticScrolling' => [ + 'description' => 'Specifies whether to automatically scroll up and down the screen to load a page.'."\n" + ."\n" + .'* 1: yes'."\n" + .'* 0: no'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + 'NavIgnoreCertificateError' => [ + 'description' => 'Specifies whether to ignore certificate errors during certificate verification in the SSL handshake and continue browsing.'."\n" + ."\n" + .'* 1: ignore'."\n" + .'* 0: does not ignore'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'FilterInvalidIP' => [ + 'description' => 'Specifies whether to filter invalid IP addresses.'."\n" + ."\n" + .'* 1: no'."\n" + .'* 0: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'ExecuteApplication' => [ + 'description' => 'Specifies whether to run applets.'."\n" + ."\n" + .'* 1: yes'."\n" + .'* 0: no'."\n" + ."\n" + .'> This parameter is supported only by IE Full Elements.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'ExecuteActiveX' => [ + 'description' => 'Specifies whether to execute ActiveX.'."\n" + ."\n" + .'* 3: yes'."\n" + .'* 0: no'."\n" + ."\n" + .'> This parameter is supported only by IE Full Elements.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3', + ], + 'ExecuteScript' => [ + 'description' => 'Specifies whether to execute scripts.'."\n" + ."\n" + .'* 1: yes'."\n" + .'* 0: no'."\n" + ."\n" + .'> This parameter is supported only by IE Full Elements.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'QUICVersion' => [ + 'description' => 'The Quick UDP Internet Connections (QUIC) protocol version. Default value: 0. Valid values:'."\n" + ."\n" + .'*'."\n" + .'* 35'."\n" + .'* 39'."\n" + .'* 43'."\n" + .'* 44'."\n" + ."\n" + .'> This parameter is supported by all elements of only Chrome'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + 'QUICDomain' => [ + 'description' => 'The domain name of the QUIC request element.'."\n" + ."\n" + .'> This parameter is supported by all elements of only Chrome'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com', + ], + 'RequestHeader' => [ + 'description' => 'Specifies whether to return the request header.'."\n" + ."\n" + .'* 0: does not return the response header.'."\n" + .'* 1: returns the basic document header.'."\n" + .'* 2: returns all headers.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + 'NavCustomHost' => [ + 'description' => 'The custom host mode.'."\n" + ."\n" + .'* 1: round robin'."\n" + .'* 0: random'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'NavCustomHostIp' => [ + 'description' => 'The custom host IP address. You can enter multiple IP addresses. Separate the IP addresses with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ipv4:192.168.2.1,192.168.2.5:img.a.com|192.168.2.1[8080]:img.a.com', + ], + 'NavCustomHeader' => [ + 'description' => 'The method that is used to customize the header. Valid values:'."\n" + ."\n" + .'* 0: disables the customer header.'."\n" + .'* 1: modifies the first package.'."\n" + .'* 2: modifies all packages.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0', + ], + 'NavCustomHeaderContent' => [ + 'description' => 'The format of the custom header. You can specify multiple fields. Separate the fields with vertical bars (|).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Host:www.example.com|Referer:www.example.com', + ], + 'ElementBlacklist' => [ + 'description' => 'The element blacklist.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '*.a.com', + ], + 'ProcessName' => [ + 'description' => 'The process ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ssh', + ], + 'VerifyStringBlacklist' => [ + 'description' => 'The blacklist for string verification.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Regex:*.example|expalme|', + ], + 'VerifyStringWhiteList' => [ + 'description' => 'The whitelist for string verification.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Regex:*.example|expalme|', + ], + 'MonitorTimeout' => [ + 'description' => 'The timeout period of monitoring. Unit: seconds.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '20', + ], + 'WaitCompletionTime' => [ + 'description' => 'The timeout period of waiting for the monitoring to complete.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => false, + 'example' => '15', + ], + 'SlowElementThreshold' => [ + 'description' => 'The time threshold that is used to define a slow element. Unit: seconds.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => false, + 'example' => '5', + ], + 'DNSHijackWhiteList' => [ + 'description' => 'The whitelist for DNS hijacking.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.aliyun.com:202.0.3.55|203.3.44.67', + ], + 'PageTamper' => [ + 'description' => 'The web page defacement.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com:202.0.3.55|203.3.44.67', + ], + 'FlowHijackJumpTimes' => [ + 'description' => 'The element that is used in DNS hijacking.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '50', + ], + 'FlowHijackLogo' => [ + 'description' => 'The tag that is used in DNS hijacking.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + 'ResponseHeader' => [ + 'description' => 'The method that is used to return the response header. Valid values:'."\n" + ."\n" + .'* 0: does not return the response header.'."\n" + .'* 1: returns the basic document header.'."\n" + .'* 2: returns all headers.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Download', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The file download task.'."\n", + 'type' => 'object', + 'properties' => [ + 'DownloadTransmissionSize' => [ + 'description' => 'The size of the download file. Unit: KB.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10240', + ], + 'DownloadCustomHost' => [ + 'description' => 'The custom host mode.'."\n" + ."\n" + .'* 1: round robin'."\n" + .'* 0: random'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'DownloadCustomHostIp' => [ + 'description' => 'The custom host IP address. You can enter multiple IP addresses. Separate the IP addresses with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ipv4:192.168.2.1,192.168.2.5:img.a.com|192.168.2.1[8080]:img.a.com', + ], + 'WhiteList' => [ + 'description' => 'The whitelist for DNS hijacking.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{\\"src\\":\\"211.154.166.174\\"}]', + ], + 'DownloadKernel' => [ + 'description' => 'The kernel type.'."\n" + ."\n" + .'* 1: curl'."\n" + .'* 0: WinInet'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'QuickProtocol' => [ + 'description' => 'The QUIC protocol type.'."\n" + ."\n" + .'* 1: http1'."\n" + .'* 2: http2'."\n" + .'* 3: http3'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + 'MonitorTimeout' => [ + 'description' => 'The monitoring duration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '30', + ], + 'ConnectionTimeout' => [ + 'description' => 'The connection timeout period.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => false, + 'example' => '200', + ], + 'VerifyWay' => [ + 'description' => 'The verification method.'."\n" + ."\n" + .'* 0: no verification'."\n" + .'* 1: string verification'."\n" + .'* 2: MD5 verification'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + 'ValidateKeywords' => [ + 'description' => 'The keyword that is used in verification.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'keyword', + ], + 'DownloadRedirection' => [ + 'description' => 'Specifies whether to support redirection.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + 'DownloadCustomHeaderContent' => [ + 'description' => 'The items to be ignored in a certificate error. Pass the values of the check boxes that are separated with vertical bars (|).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Host:www.example.com|Referer:www.example.com', + ], + 'DownloadIgnoreCertificateError' => [ + 'description' => 'The items to be ignored in a certificate error. Pass the values of the check boxes that are separated with vertical bars (|).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1|2|4', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Protocol', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The API performance synthetic monitoring task.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestContent' => [ + 'description' => 'The request content, including the request header and request body.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'description' => 'The request method.'."\n" + ."\n" + .'* POST'."\n" + .'* GET'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'POST', + ], + 'Header' => [ + 'description' => 'The custom header of a request to initiate an API performance synthetic monitoring task.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the request header.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'regionId', + ], + 'Value' => [ + 'description' => 'The value of the request header.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'Body' => [ + 'description' => 'The custom body of a request to initiate an API performance synthetic monitoring task.'."\n", + 'type' => 'object', + 'properties' => [ + 'Mode' => [ + 'description' => 'The data type of the content.'."\n" + ."\n" + .'* form-data'."\n" + .'* x-www-form-urlencoded'."\n" + .'* raw'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'form-data', + ], + 'FormData' => [ + 'description' => 'The data that is passed when the **Mode** parameter is set to **form-data**.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of **form-data**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'appId', + ], + 'Value' => [ + 'description' => 'The value of **form-data**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '3425', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'UrlEncoding' => [ + 'description' => 'The data that is passed when the **Mode** parameter is set to **x-www-form-urlencoded**.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of **x-www-form-urlencoded**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'appId', + ], + 'Value' => [ + 'description' => 'The value of **x-www-form-urlencoded**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '11080', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'Raw' => [ + 'description' => 'The data that is passed when the **Mode** parameter is set to **raw**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'content', + ], + 'Language' => [ + 'description' => 'The language that is selected when the Mode parameter is set to raw.'."\n" + ."\n" + .'* json'."\n" + .'* xml'."\n" + .'* javascript'."\n" + .'* html'."\n" + .'* text'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'json', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'CharacterEncoding' => [ + 'description' => 'The encoding format.'."\n" + ."\n" + .'* 0: UTF-8'."\n" + .'* 1: GBK'."\n" + .'* 2: GB2312'."\n" + .'* 3: Unicode'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + 'VerifyWay' => [ + 'description' => 'The method that is used to verify the response content.'."\n" + ."\n" + .'* 0: no verification.'."\n" + .'* 1: exact match with the verification string.'."\n" + .'* 2: partial match with the verification string.'."\n" + .'* 3: MD5 verification.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + 'VerifyContent' => [ + 'description' => 'The verification string.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '"code":200', + ], + 'ReceivedDataSize' => [ + 'description' => 'The size of the received data. This parameter is required when you set the value of the VerifyWay parameter to 2.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '500', + ], + 'ProtocolMonitorTimeout' => [ + 'description' => 'The timeout period of API performance synthetic monitoring. Unit: seconds.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '30', + ], + 'CustomHost' => [ + 'description' => 'The custom host mode.'."\n" + ."\n" + .'* 1: round robin'."\n" + .'* 0: random'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + 'CustomHostIp' => [ + 'description' => 'The custom host IP address. You can enter multiple IP addresses. Separate the IP addresses with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ipv4:192.168.2.1,192.168.2.5:img.a.com|192.168.2.1[8080]:img.a.com', + ], + 'ProtocolConnectionTime' => [ + 'description' => 'The connection timeout period of the protocol. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'UpdateTask', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to update existing synthetic monitoring tasks.'."\n" + ."\n" + .'* true: updates existing synthetic monitoring tasks.'."\n" + .'* false: creates new synthetic monitoring tasks.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n" + ."\n" + .'* 1001: The request was successful.'."\n" + .'* 1002: The request failed.'."\n" + .'* 1003: Parameter errors occurred.'."\n" + .'* 1004: Authentication failed.'."\n" + .'* 1006: The task does not exist.'."\n" + .'* 1099: Internal errors occurred.'."\n", + 'type' => 'string', + 'example' => '1001', + ], + 'Msg' => [ + 'description' => 'The message that is returned when the task failed to be created.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Data' => [ + 'description' => 'The information about the synthetic monitoring task.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"Code\\": \\"1001\\",\\n \\"Msg\\": \\"null\\",\\n \\"Data\\": {\\n \\"TaskId\\": 1234\\n }\\n}","type":"json"}]', + 'title' => 'CreateSyntheticTask', + ], + 'GetSyntheticTaskMonitors' => [ + 'summary' => 'Obtains the information about synthetic monitoring points.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region in which the application is located.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '21E85B16-75A6-429A-9F65-8AAC9A54****', + ], + 'Code' => [ + 'description' => 'The status code returned.'."\n" + ."\n" + .'* 1001: The request was successful.'."\n" + .'* 1002: The request failed.'."\n" + .'* 1003: Parameter errors occurred.'."\n" + .'* 1004: Authentication failed.'."\n" + .'* 1006: The task does not exist.'."\n" + .'* 1099: Internal errors occurred.'."\n", + 'type' => 'string', + 'example' => '1001', + ], + 'Msg' => [ + 'description' => 'The message that is returned when the request failed.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Data' => [ + 'description' => 'The details of the monitoring point.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ClientType' => [ + 'description' => 'The client type:'."\n" + ."\n" + .'* 1: IDC'."\n" + .'* 2: Last mile'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'CityCode' => [ + 'description' => 'The ID of the city to which the monitoring point belongs.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1100101', + ], + 'City' => [ + 'description' => 'The name of the city to which the monitoring point belongs.'."\n", + 'type' => 'string', + 'example' => 'Beijing'."\n", + ], + 'District' => [ + 'description' => 'The region to which the monitoring point belongs.'."\n", + 'type' => 'string', + 'example' => 'Beijing'."\n", + ], + 'NetServiceId' => [ + 'description' => 'The ID of the carrier.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '18', + ], + 'NetServiceName' => [ + 'description' => 'The name of the carrier.'."\n", + 'type' => 'string', + 'example' => 'XXX', + ], + 'Busy' => [ + 'description' => 'The task status.'."\n" + ."\n" + .'* 0: active'."\n" + .'* 1: busy'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"21E85B16-75A6-429A-9F65-8AAC9A54****\\",\\n \\"Code\\": \\"1001\\",\\n \\"Msg\\": \\"null\\",\\n \\"Data\\": [\\n {\\n \\"ClientType\\": 1,\\n \\"CityCode\\": 1100101,\\n \\"City\\": \\"北京市\\",\\n \\"District\\": \\"北京\\",\\n \\"NetServiceId\\": 18,\\n \\"NetServiceName\\": \\"XXX\\",\\n \\"Busy\\": 0\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetSyntheticTaskMonitors', + ], + 'SwitchSyntheticTaskStatus' => [ + 'summary' => 'Starts or stops a scheduled synthetic monitoring task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'TaskIds', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The task IDs. You can specify up to 30 task IDs at a time.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '16720', + ], + 'required' => false, + 'maxItems' => 30, + ], + ], + [ + 'name' => 'SwitchStatus', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to start or stop the task. Valid values:'."\n" + ."\n" + .'* **0**: stops the task'."\n" + .'* **1**: starts the task'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Result' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Result\\": \\"true\\"\\n}","type":"json"}]', + 'title' => 'SwitchSyntheticTaskStatus', + ], + 'GetSyntheticTaskList' => [ + 'summary' => 'Queries a list of scheduled synthetic monitoring tasks.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: **cn-hangzhou**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the task. Valid values:'."\n" + ."\n" + .'1. 3: web page performance - IE'."\n" + .'2. 34: web page performance - Chrome'."\n" + .'3. 0: network quality'."\n" + .'4. 40: file download'."\n" + .'5. 7: API performance'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'Url', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL for synthetic monitoring.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://www.example.com'."\n", + ], + ], + [ + 'name' => 'TaskName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The task name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'net-test', + ], + ], + [ + 'name' => 'TaskStatus', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the task. Valid values:'."\n" + ."\n" + .'* **0**: The task is stopped.'."\n" + .'* **1**: The task is started.'."\n" + .'* **9**: The task is ended.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageNum', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\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' => 'Order', + 'in' => 'query', + 'schema' => [ + 'description' => 'The condition by which the queried tasks are sorted.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CreateTime', + ], + ], + [ + 'name' => 'Direction', + 'in' => 'query', + 'schema' => [ + 'description' => 'The order by which the queried tasks are sorted. Valid values:'."\n" + ."\n" + .'* **asc**: ascending'."\n" + .'* **desc**: descending'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'asc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'PageInfo' => [ + 'description' => 'The query results.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '15', + ], + 'List' => [ + 'description' => 'The task information.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the scheduled task.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'string', + 'example' => '2118709', + ], + 'TaskName' => [ + 'description' => 'The task name.'."\n", + 'type' => 'string', + 'example' => 'net-test', + ], + 'Url' => [ + 'description' => 'The URL for synthetic monitoring.'."\n", + 'type' => 'string', + 'example' => 'www.example.com', + ], + 'TaskType' => [ + 'description' => 'The type of the task. Valid values:'."\n" + ."\n" + .'1. 3: web page performance - IE'."\n" + .'2. 34: web page performance - Chrome'."\n" + .'3. 0: network quality'."\n" + .'4. 40: file download'."\n" + .'5. 7: API performance'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'TaskTypeName' => [ + 'description' => 'The name of the task type.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'MonitorNumber' => [ + 'description' => 'The number of detection points.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'TaskStatus' => [ + 'description' => 'The status of the task. Valid values:'."\n" + ."\n" + .'* **0**: The task is stopped.'."\n" + .'* **1**: The task is started.'."\n" + .'* **9**: The task is ended.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Usable' => [ + 'description' => 'The availability. Only the data of the last day is counted. If no data is available for the last day, an empty value is returned.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '0.80', + ], + 'CreateTime' => [ + 'description' => 'The time when the task was created.'."\n", + 'type' => 'string', + 'example' => '1634005438000', + ], + ], + ], + ], + 'Size' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Pages' => [ + 'description' => 'The total number of pages returned.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Prepage' => [ + 'description' => 'The previous page.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'NextPage' => [ + 'description' => 'The next page.'."\n", + 'type' => 'string', + 'example' => '3', + ], + 'IsFirstPage' => [ + 'description' => 'Indicates whether the page is the first page.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'IsLastPage' => [ + 'description' => 'Indicates whether the page is the last page.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'HasPreviousPage' => [ + 'description' => 'Indicates whether a previous page exists.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'HasNextPage' => [ + 'description' => 'Indicates whether the current page is followed by a page.'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'NavigatePageNums' => [ + 'description' => 'All navigation page numbers.'."\n", + 'type' => 'string', + 'example' => '1,2,3', + ], + 'NavigateFirstPage' => [ + 'description' => 'The first page on the navigation bar.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'NavigateLastPage' => [ + 'description' => 'The last page on the navigation bar.'."\n", + 'type' => 'string', + 'example' => '3', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"PageInfo\\": {\\n \\"Total\\": 15,\\n \\"List\\": [\\n {\\n \\"TaskId\\": \\"2118709\\",\\n \\"TaskName\\": \\"net-test\\",\\n \\"Url\\": \\"www.example.com\\",\\n \\"TaskType\\": 0,\\n \\"TaskTypeName\\": \\"网络质量\\",\\n \\"MonitorNumber\\": 2,\\n \\"TaskStatus\\": \\"0\\",\\n \\"Usable\\": 0.8,\\n \\"CreateTime\\": \\"1634005438000\\"\\n }\\n ],\\n \\"Size\\": 10,\\n \\"Pages\\": \\"10\\",\\n \\"Prepage\\": \\"1\\",\\n \\"NextPage\\": \\"3\\",\\n \\"IsFirstPage\\": true,\\n \\"IsLastPage\\": true,\\n \\"HasPreviousPage\\": true,\\n \\"HasNextPage\\": \\"false\\",\\n \\"NavigatePageNums\\": \\"1,2,3\\",\\n \\"NavigateFirstPage\\": \\"1\\",\\n \\"NavigateLastPage\\": \\"3\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetSyntheticTaskList', + ], + 'GetSyntheticTaskDetail' => [ + 'summary' => 'Queries the details of a scheduled synthetic monitoring task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4D6C358A-A58B-4F4B-94CE-F5AAF023****', + ], + 'TaskDetail' => [ + 'description' => 'The details of the task.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '19584', + ], + 'TaskName' => [ + 'description' => 'The name of the task.'."\n", + 'type' => 'string', + 'example' => 'net-test', + ], + 'Url' => [ + 'description' => 'The URL for synthetic monitoring.'."\n", + 'type' => 'string', + 'example' => 'www.example.com', + ], + 'MonitorList' => [ + 'description' => 'The detection points.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CityCode' => [ + 'description' => 'The city code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '110100', + ], + 'NetServiceId' => [ + 'description' => 'The ID of the network service.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12001', + ], + 'MonitorType' => [ + 'description' => 'The type of the detection point.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => 'IDC', + ], + 'SendCount' => [ + 'description' => 'The number of times that the system sends detection requests.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + ], + 'description' => '', + ], + ], + 'TaskType' => [ + 'description' => 'The type of the task. Valid values:'."\n" + ."\n" + .'1. 3: web page performance - IE'."\n" + .'2. 34: web page performance - Chrome'."\n" + .'3. 0: network quality'."\n" + .'4. 40: file download'."\n" + .'5. 7: API performance'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'IntervalTime' => [ + 'description' => 'The interval at which synthetic monitoring is performed. Unit: minutes. Valid values:'."\n" + ."\n" + .'* 1'."\n" + .'* 5'."\n" + .'* 10'."\n" + .'* 15'."\n" + .'* 20'."\n" + .'* 30'."\n" + .'* 60'."\n" + .'* 120'."\n" + .'* 180'."\n" + .'* 240'."\n" + .'* 360'."\n" + .'* 480'."\n" + .'* 720'."\n" + .'* 1440'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'IntervalType' => [ + 'description' => 'The interval type. Valid values:'."\n" + ."\n" + .'* 0: daily'."\n" + .'* 1: custom frequency'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ExtendInterval' => [ + 'description' => 'The frequency.'."\n", + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The time when synthetic monitoring starts. Format: yyyy-MM-dd HH.'."\n", + 'type' => 'string', + 'example' => '2022-02-26 11:40', + ], + 'EndTime' => [ + 'description' => 'The time when synthetic monitoring ends. Format: `yyyy-MM-dd HH`.'."\n", + 'type' => 'string', + 'example' => '2022-05-03 11:40', + ], + 'Days' => [ + 'description' => 'The day on which synthetic monitoring is performed. Valid values:'."\n" + ."\n" + .'* \\-1: every day'."\n" + .'* 0: Sunday'."\n" + .'* 1: Monday'."\n" + .'* 2: Tuesday'."\n" + .'* 3: Wednesday'."\n" + .'* 4: Thursday'."\n" + .'* 5: Friday'."\n" + .'* 6: Saturday'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The day on which synthetic monitoring is performed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3', + ], + ], + 'StartHour' => [ + 'description' => 'The hour at which synthetic monitoring starts.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '9', + ], + 'StartMinute' => [ + 'description' => 'The minute at which synthetic monitoring starts.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'Endhour' => [ + 'description' => 'The hour at which synthetic monitoring ends.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + ], + 'EndMinute' => [ + 'description' => 'The minute at which synthetic monitoring ends.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + ], + ], + 'IpType' => [ + 'description' => 'The IP version. Valid values:'."\n" + ."\n" + .'* 0: A version is automatically selected.'."\n" + .'* 1: IPv4.'."\n" + .'* 2: IPv6.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Download' => [ + 'description' => 'The file download task.'."\n", + 'type' => 'object', + 'properties' => [ + 'DownloadTransmissionSize' => [ + 'description' => 'The file size. Unit: KB.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'DownloadCustomHost' => [ + 'description' => 'The custom host. Valid values:'."\n" + ."\n" + .'* 1: round robin'."\n" + .'* 0: random'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'DownloadCustomHostIp' => [ + 'description' => 'The custom IP address of the host. Multiple IP addresses are separated with commas (,).'."\n", + 'type' => 'string', + 'example' => '168.23.45.1', + ], + 'WhiteList' => [ + 'description' => 'The whitelisted objects that are used to avoid DNS hijacking. Format: `<domain name>:<objects>`.'."\n" + ."\n" + .'> WAP networks do not support hijacking.'."\n", + 'type' => 'string', + 'example' => '[{\\"src\\":\\"211.154.166.174\\"}]', + ], + 'DownloadKernel' => [ + 'description' => 'The kernel type. Valid values:'."\n" + ."\n" + .'* 1: curl'."\n" + .'* 0: WinInet'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'QuickProtocol' => [ + 'description' => 'The QUIC protocol type. Valid values:'."\n" + ."\n" + .'* 1: HTTP/1'."\n" + .'* 2: HTTP/2'."\n" + .'* 3: http3'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'MonitorTimeout' => [ + 'description' => 'The monitoring duration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + ], + 'ConnectionTimeout' => [ + 'description' => 'The timeout period of the file download task.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'VerifyWay' => [ + 'description' => 'The method that is used to verify the response content. Valid values:'."\n" + ."\n" + .'* 0: no verification.'."\n" + .'* 1: exact match with the verification string.'."\n" + .'* 2: partial match with the verification string.'."\n" + .'* 3: MD5 verification.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ValidateKeywords' => [ + 'description' => 'The keyword that is used in verification.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'DownloadRedirect' => [ + 'description' => 'Indicates whether redirection is supported.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'DownloadCustomHeaderContent' => [ + 'description' => 'The items to be ignored in a certificate error. Multiple values are concatenated with vertical bars (|).'."\n", + 'type' => 'string', + 'example' => 'char', + ], + ], + ], + 'Net' => [ + 'description' => 'The network synthetic monitoring task.'."\n", + 'type' => 'object', + 'properties' => [ + 'NetIcmpSwitch' => [ + 'description' => 'Indicates whether ICMP test is enabled. Valid values:'."\n" + ."\n" + .'* 0: no.'."\n" + .'* 1: yes. If you set this parameter to 1, you must also set the Icmp parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'NetIcmpActive' => [ + 'description' => 'The protocol type. Valid values:'."\n" + ."\n" + .'* 0 : ICMP'."\n" + .'* 1 : TCP'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'NetIcmpTimeout' => [ + 'description' => 'The monitoring timeout period.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'NetIcmpInterval' => [ + 'description' => 'The interval at which the synthetic monitoring task is executed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'NetIcmpNum' => [ + 'description' => 'The number of packets.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'NetIcmpSize' => [ + 'description' => 'The packet size.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + 'NetIcmpDataCut' => [ + 'description' => 'Indicates whether packets are split. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'NetDnsQueryMethod' => [ + 'description' => 'The DNS query method. Valid values:'."\n" + ."\n" + .'* 1: recursive'."\n" + .'* 2: iterative'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'NetDnsSwitch' => [ + 'description' => 'Indicates whether DNS test is enabled. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'NetTraceRouteSwitch' => [ + 'description' => 'Indicates whether Tracert test is enabled. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes. If you set this parameter to 1, you must also set the Tracert parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'NetTraceRouteTimeout' => [ + 'description' => 'The monitoring timeout period. Valid values: 0 to 300. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'NetTraceRouteNum' => [ + 'description' => 'The maximum number of active detection points.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + 'WhiteList' => [ + 'description' => 'The whitelisted objects that are used to avoid DNS hijacking. Format: `<domain name>:<objects>`.'."\n" + ."\n" + .'> WAP networks do not support hijacking.'."\n", + 'type' => 'string', + 'example' => '119.119.53.156/32', + ], + 'NetDnsNs' => [ + 'description' => 'The NS server.'."\n", + 'type' => 'string', + 'example' => '189.12.32.124', + ], + 'NetDigSwitch' => [ + 'description' => 'Indicates whether the data is displayed in the DIG format. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'NetDnsServer' => [ + 'description' => 'The type of the DNS server. Valid values:'."\n" + ."\n" + .'* 0: ipv4'."\n" + .'* 1: ipv6'."\n" + .'* 2: A version is automatically selected.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'NetDnsTimeout' => [ + 'description' => 'The timeout period of DNS requests.'."\n", + 'type' => 'string', + 'example' => '10', + ], + ], + ], + 'Nav' => [ + 'description' => 'The browser test task.'."\n", + 'type' => 'object', + 'properties' => [ + 'NavDisableCache' => [ + 'description' => 'Indicates whether caching is disabled. Valid values:'."\n" + ."\n" + .'* 1: Caching is disabled.'."\n" + .'* 0: Caching is enabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'NavReturnElement' => [ + 'description' => 'Indicates whether the elements on the page are returned.'."\n" + ."\n" + .'* 1: no. The basic document data is returned.'."\n" + .'* 2: yes. All document data is returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'NavRedirect' => [ + 'description' => 'Indicates whether redirection is enabled. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'NavDisableCompression' => [ + 'description' => 'Indicates whether compression is disabled. Valid values:'."\n" + ."\n" + .'* 0: Compression is enabled.'."\n" + .'* 1: Compression is disabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'NavAutomaticScrolling' => [ + 'description' => 'Indicates whether the screen is automatically scrolled up and down to load a page. Valid values:'."\n" + ."\n" + .'* 1: yes'."\n" + .'* 0: no'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'NavIgnoreCertificateError' => [ + 'description' => 'Indicates whether certificate errors are ignored during certificate verification in the SSL handshake. Valid values:'."\n" + ."\n" + .'* 1: yes'."\n" + .'* 0: no'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'FilterInvalidIP' => [ + 'description' => 'Indicates whether invalid IP addresses are excluded. Valid values:'."\n" + ."\n" + .'* 1: no'."\n" + .'* 0: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ExecuteApplet' => [ + 'description' => 'Indicates whether the applet is executed. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: yes'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ExecuteActiveX' => [ + 'description' => 'Indicates whether ActiveX is executed. Valid values:'."\n" + ."\n" + .'* 3: yes'."\n" + .'* 0: no'."\n" + ."\n" + .'> Only IE elements support this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3', + ], + 'ExecuteScript' => [ + 'description' => 'Indicates whether scripts are executed. Valid values:'."\n" + ."\n" + .'* 1: yes'."\n" + .'* 0: no'."\n" + ."\n" + .'> Only IE elements support this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'QuicVersion' => [ + 'description' => 'The QUIC version. Default value: 0. Valid values:'."\n" + ."\n" + .'* 35'."\n" + .'* 39'."\n" + .'* 43'."\n" + .'* 44'."\n" + ."\n" + .'> Only Chrome elements support this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'QuicDomain' => [ + 'description' => 'The domain name of the QUIC request element.'."\n", + 'type' => 'string', + 'example' => 'www.example.com', + ], + 'RequestHeader' => [ + 'description' => 'Indicates whether request headers are returned. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: The headers of base documents are returned.'."\n" + .'* 2: All headers are returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'NavCustomHost' => [ + 'description' => 'The custom host mode. Valid values:'."\n" + ."\n" + .'* 1: round robin'."\n" + .'* 0: random'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'NavCustomHostIp' => [ + 'description' => 'The custom IP address of the host. Multiple IP addresses are separated with commas (,).'."\n", + 'type' => 'string', + 'example' => '119.119.53.156/32'."\n", + ], + 'NavCustomHeader' => [ + 'description' => 'Indicates whether a custom header is created. Valid values:'."\n" + ."\n" + .'* 0: no'."\n" + .'* 1: A custom header is created for the first packet.'."\n" + .'* 2: A custom header is created for all packets.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'NavCustomHeaderContent' => [ + 'description' => 'The format of the custom header. Multiple fields are separated with vertical bars (|).'."\n", + 'type' => 'string', + 'example' => 'content', + ], + 'ElementBlacklist' => [ + 'description' => 'The element blacklist.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'ProcessName' => [ + 'description' => 'The process ID.'."\n", + 'type' => 'string', + 'example' => 'ssh', + ], + 'VerifyStringBlacklist' => [ + 'description' => 'The blacklist for string verification.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'VerifyStringWhitelist' => [ + 'description' => 'The whitelist for string verification.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'MonitorTimeout' => [ + 'description' => 'The monitoring timeout period.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'WaitCompletionTime' => [ + 'description' => 'The timeout period of waiting for the monitoring to complete.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'SlowElementThreshold' => [ + 'description' => 'The time threshold that is used to define a slow element. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + 'DnsHijackWhitelist' => [ + 'description' => 'The DNS whitelist.'."\n", + 'type' => 'string', + 'example' => '119.119.53.156', + ], + 'PageTampering' => [ + 'description' => 'The page tampering.'."\n", + 'type' => 'string', + 'example' => 'content', + ], + 'FlowHijackJumpTimes' => [ + 'description' => 'The element that is used in DNS hijacking.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + ], + 'FlowHijackLogo' => [ + 'description' => 'The tag that is used in DNS hijacking.'."\n", + 'type' => 'string', + 'example' => 'target', + ], + ], + ], + 'Protocol' => [ + 'description' => 'The synthetic monitoring task of the API performance type.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestContent' => [ + 'description' => 'The request content, including the header and body.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'description' => 'The request method. Valid values:'."\n" + ."\n" + .'* POST'."\n" + .'* GET'."\n", + 'type' => 'string', + 'example' => 'POST', + ], + 'Header' => [ + 'description' => 'The request header.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The header information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the header in the request parameters.'."\n", + 'type' => 'string', + 'example' => 'regionId', + ], + 'Value' => [ + 'description' => 'The value of the header in the request parameters.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + ], + ], + ], + 'Body' => [ + 'description' => 'The content of the request body.'."\n", + 'type' => 'object', + 'properties' => [ + 'Mode' => [ + 'description' => 'The type of the content. Valid values:'."\n" + ."\n" + .'* form-data'."\n" + .'* x-www-form-urlencoded'."\n" + .'* raw'."\n", + 'type' => 'string', + 'example' => 'form-data', + ], + 'Formdata' => [ + 'description' => 'The data content. This parameter is returned when Mode is set to form-data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the **form-data**.'."\n", + 'type' => 'string', + 'example' => 'appId', + ], + 'Value' => [ + 'description' => 'The value of the form-data.'."\n", + 'type' => 'string', + 'example' => '3425', + ], + ], + ], + 'Urlencoded' => [ + 'description' => 'The URL of the body content.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'appId', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => '11080', + ], + ], + ], + 'Raw' => [ + 'description' => 'The data content. This parameter is returned when **Mode** is set to **raw**.'."\n", + 'type' => 'string', + 'example' => 'content', + ], + 'Language' => [ + 'description' => 'The language used when Mode is set to raw. Valid values:'."\n" + ."\n" + .'* json'."\n" + .'* xml'."\n" + .'* javascript'."\n" + .'* html'."\n" + .'* text'."\n", + 'type' => 'string', + 'example' => 'xml', + ], + ], + ], + ], + ], + 'CharacterEncoding' => [ + 'description' => 'The encoding format. Valid values:'."\n" + ."\n" + .'* 0: UTF-8'."\n" + .'* 1: GBK'."\n" + .'* 2: GB2312'."\n" + .'* 3: Unicode'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'VerifyWay' => [ + 'description' => 'The method that is used to verify the response content. Valid values:'."\n" + ."\n" + .'* 0: no verification.'."\n" + .'* 1: exact match with the verification string.'."\n" + .'* 2: partial match with the verification string.'."\n" + .'* 3: MD5 verification.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'VerifyContent' => [ + 'description' => 'The verification string.'."\n", + 'type' => 'string', + 'example' => 'list', + ], + 'ReceivedDataSize' => [ + 'description' => 'The size of the received data. This parameter is returned when **VerifyWay** is set to 2.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + 'ProtocolMonitorTimeout' => [ + 'description' => 'The timeout period of API performance monitoring. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + 'ProtocolConnectionTimeout' => [ + 'description' => 'The timeout period.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'CustomHost' => [ + 'description' => 'The custom host. Valid values:'."\n" + ."\n" + .'* 1: round robin'."\n" + .'* 0: random'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'CustomHostIp' => [ + 'description' => 'The custom IP address of the host. Multiple IP addresses are separated with commas (,).'."\n", + 'type' => 'string', + 'example' => '119.119.53.156', + ], + ], + ], + 'MonitorListString' => [ + 'description' => 'The detection points.'."\n", + 'type' => 'string', + 'example' => '12', + ], + 'CommonParam' => [ + 'description' => 'The list of common parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlarmFlag' => [ + 'description' => 'The identifier of the alert.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'AlertPolicyId' => [ + 'description' => 'The ID of the alert policy.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'AlertNotifierId' => [ + 'description' => 'The ID of the alert identifier.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'StartExecutionTime' => [ + 'description' => 'The start time of the execution.'."\n", + 'type' => 'string', + 'example' => '1664427128', + ], + 'MonitorSamples' => [ + 'description' => 'The monitoring samples.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'AlertList' => [ + 'description' => 'The list of alerts.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The alert name.'."\n", + 'type' => 'string', + 'example' => 'alert-test', + ], + 'GeneralAlert' => [ + 'description' => 'The low-risk alert.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'SeriousAlert' => [ + 'description' => 'The Critical-level alert.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'IsCritical' => [ + 'description' => 'Indicates whether the condition is essential.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Symbols' => [ + 'description' => 'Greater than or less than.'."\n", + 'type' => 'string', + 'example' => '1', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4D6C358A-A58B-4F4B-94CE-F5AAF023****\\",\\n \\"TaskDetail\\": {\\n \\"TaskId\\": 19584,\\n \\"TaskName\\": \\"net-test\\",\\n \\"Url\\": \\"www.example.com\\",\\n \\"MonitorList\\": [\\n {\\n \\"CityCode\\": 0,\\n \\"NetServiceId\\": 12,\\n \\"MonitorType\\": 1,\\n \\"SendCount\\": 2\\n }\\n ],\\n \\"TaskType\\": 0,\\n \\"IntervalTime\\": 20,\\n \\"IntervalType\\": 0,\\n \\"ExtendInterval\\": {\\n \\"StartTime\\": \\"2022-02-26 11:40\\",\\n \\"EndTime\\": \\"2022-05-03 11:40\\",\\n \\"Days\\": [\\n 3\\n ],\\n \\"StartHour\\": 9,\\n \\"StartMinute\\": 20,\\n \\"Endhour\\": 12,\\n \\"EndMinute\\": 20\\n },\\n \\"IpType\\": 0,\\n \\"Download\\": {\\n \\"DownloadTransmissionSize\\": 20,\\n \\"DownloadCustomHost\\": 0,\\n \\"DownloadCustomHostIp\\": \\"168.23.45.1\\",\\n \\"WhiteList\\": \\"[{\\\\\\\\\\\\\\"src\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"211.154.166.174\\\\\\\\\\\\\\"}]\\",\\n \\"DownloadKernel\\": 1,\\n \\"QuickProtocol\\": \\"1\\",\\n \\"MonitorTimeout\\": 12,\\n \\"ConnectionTimeout\\": 200,\\n \\"VerifyWay\\": 0,\\n \\"ValidateKeywords\\": \\"test\\",\\n \\"DownloadRedirect\\": 1,\\n \\"DownloadCustomHeaderContent\\": \\"char\\"\\n },\\n \\"Net\\": {\\n \\"NetIcmpSwitch\\": 0,\\n \\"NetIcmpActive\\": 0,\\n \\"NetIcmpTimeout\\": 20,\\n \\"NetIcmpInterval\\": 10,\\n \\"NetIcmpNum\\": 10,\\n \\"NetIcmpSize\\": 30,\\n \\"NetIcmpDataCut\\": 0,\\n \\"NetDnsQueryMethod\\": \\"1\\",\\n \\"NetDnsSwitch\\": 0,\\n \\"NetTraceRouteSwitch\\": 0,\\n \\"NetTraceRouteTimeout\\": 20,\\n \\"NetTraceRouteNum\\": 30,\\n \\"WhiteList\\": \\"119.119.53.156/32\\",\\n \\"NetDnsNs\\": \\"189.12.32.124\\",\\n \\"NetDigSwitch\\": 0,\\n \\"NetDnsServer\\": 0,\\n \\"NetDnsTimeout\\": \\"10\\"\\n },\\n \\"Nav\\": {\\n \\"NavDisableCache\\": 1,\\n \\"NavReturnElement\\": 1,\\n \\"NavRedirect\\": 1,\\n \\"NavDisableCompression\\": 0,\\n \\"NavAutomaticScrolling\\": 1,\\n \\"NavIgnoreCertificateError\\": 1,\\n \\"FilterInvalidIP\\": 1,\\n \\"ExecuteApplet\\": 1,\\n \\"ExecuteActiveX\\": 3,\\n \\"ExecuteScript\\": 1,\\n \\"QuicVersion\\": 0,\\n \\"QuicDomain\\": \\"www.example.com\\",\\n \\"RequestHeader\\": 0,\\n \\"NavCustomHost\\": 1,\\n \\"NavCustomHostIp\\": \\"119.119.53.156/32\\",\\n \\"NavCustomHeader\\": \\"0\\",\\n \\"NavCustomHeaderContent\\": \\"content\\",\\n \\"ElementBlacklist\\": \\"test\\",\\n \\"ProcessName\\": \\"ssh\\",\\n \\"VerifyStringBlacklist\\": \\"test\\",\\n \\"VerifyStringWhitelist\\": \\"test\\",\\n \\"MonitorTimeout\\": 20,\\n \\"WaitCompletionTime\\": 20,\\n \\"SlowElementThreshold\\": 30,\\n \\"DnsHijackWhitelist\\": \\"119.119.53.156\\",\\n \\"PageTampering\\": \\"content\\",\\n \\"FlowHijackJumpTimes\\": 12,\\n \\"FlowHijackLogo\\": \\"target\\"\\n },\\n \\"Protocol\\": {\\n \\"RequestContent\\": {\\n \\"Method\\": \\"POST\\",\\n \\"Header\\": [\\n {\\n \\"Key\\": \\"regionId\\",\\n \\"Value\\": \\"cn-hangzhou\\"\\n }\\n ],\\n \\"Body\\": {\\n \\"Mode\\": \\"form-data\\",\\n \\"Formdata\\": {\\n \\"Key\\": \\"appId\\",\\n \\"Value\\": \\"3425\\"\\n },\\n \\"Urlencoded\\": {\\n \\"Key\\": \\"appId\\",\\n \\"Value\\": \\"11080\\"\\n },\\n \\"Raw\\": \\"content\\",\\n \\"Language\\": \\"xml\\"\\n }\\n },\\n \\"CharacterEncoding\\": 0,\\n \\"VerifyWay\\": 0,\\n \\"VerifyContent\\": \\"list\\",\\n \\"ReceivedDataSize\\": 30,\\n \\"ProtocolMonitorTimeout\\": 30,\\n \\"ProtocolConnectionTimeout\\": 20,\\n \\"CustomHost\\": 1,\\n \\"CustomHostIp\\": \\"119.119.53.156\\"\\n },\\n \\"MonitorListString\\": \\"12\\",\\n \\"CommonParam\\": {\\n \\"AlarmFlag\\": 1,\\n \\"AlertPolicyId\\": \\"1\\",\\n \\"AlertNotifierId\\": \\"1\\",\\n \\"StartExecutionTime\\": \\"1664427128\\",\\n \\"MonitorSamples\\": \\"1\\",\\n \\"AlertList\\": [\\n {\\n \\"Name\\": \\"alert-test\\",\\n \\"GeneralAlert\\": \\"1\\",\\n \\"SeriousAlert\\": \\"1\\",\\n \\"IsCritical\\": \\"0\\",\\n \\"Symbols\\": \\"1\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', + 'title' => 'GetSyntheticTaskDetail', + ], + 'DeleteSyntheticTask' => [ + 'summary' => 'Deletes scheduled synthetic monitoring tasks.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskIds', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The task IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the synthetic monitoring task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '16720', + ], + 'required' => true, + 'maxItems' => 30, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1A9C645C-C83F-4C9D-8CCB-29BEC9E1****', + ], + 'Result' => [ + 'description' => 'Indicates whether the specified tasks are deleted.'."\n" + ."\n" + .'* `true`: The tasks are deleted.'."\n" + .'* `false`: The tasks fail to be deleted.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A9C645C-C83F-4C9D-8CCB-29BEC9E1****\\",\\n \\"Result\\": \\"true\\"\\n}","type":"json"}]', + 'title' => 'DeleteSyntheticTask', + ], + 'CreateIntegration' => [ + 'summary' => 'Creates an alert integration.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'IntegrationName', + 'in' => 'formData', + 'schema' => [ + 'title' => '集成名称', + 'description' => 'The name of the alert integration.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'CloudMonitor integration'."\n", + ], + ], + [ + 'name' => 'IntegrationProductType', + 'in' => 'formData', + 'schema' => [ + 'title' => '集成产品类型', + 'description' => 'The service of the alert integration. Valid values:'."\n" + ."\n" + .'* CLOUD_MONITOR: CloudMonitor'."\n" + .'* LOG_SERVICE: Log Service'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'CLOUD_MONITOR', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'title' => '集成描述', + 'description' => 'The description of the alert integration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Test'."\n", + ], + ], + [ + 'name' => 'AutoRecover', + 'in' => 'formData', + 'schema' => [ + 'title' => '是否开启恢复,默认true', + 'description' => 'Specifies whether to automatically clear alert events. Default value: true. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RecoverTime', + 'in' => 'formData', + 'schema' => [ + 'title' => '恢复时间,默认300s', + 'description' => 'The period of time within which alert events are automatically cleared. Unit: seconds. Default value: 300.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3****', + ], + 'Integration' => [ + 'description' => 'The returned information about the alert integration.'."\n", + 'type' => 'object', + 'properties' => [ + 'IntegrationId' => [ + 'title' => '集成ID', + 'description' => 'The ID of the alert integration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'IntegrationName' => [ + 'title' => '集成名称', + 'description' => 'The name of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'CloudMonitor integration'."\n", + ], + 'IntegrationProductType' => [ + 'title' => '集成产品类型', + 'description' => 'The service of the alert integration. Valid values:'."\n" + ."\n" + .'* CLOUD_MONITOR: CloudMonitor'."\n" + .'* LOG_SERVICE: Log Service'."\n", + 'type' => 'string', + 'example' => 'CLOUD_MONITOR', + ], + 'Description' => [ + 'title' => '集成描述', + 'description' => 'The description of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'Test'."\n", + ], + 'AutoRecover' => [ + 'title' => '是否开启恢复,默认true', + 'description' => 'Indicates whether alert events are automatically cleared. Default value: true. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RecoverTime' => [ + 'title' => '恢复时间,默认300s', + 'description' => 'The period of time within which alert events are automatically cleared. Unit: seconds. Default value: 300.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '300', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\",\\n \\"Integration\\": {\\n \\"IntegrationId\\": 1234,\\n \\"IntegrationName\\": \\"云监控集成\\",\\n \\"IntegrationProductType\\": \\"CLOUD_MONITOR\\",\\n \\"Description\\": \\"测试\\",\\n \\"AutoRecover\\": true,\\n \\"RecoverTime\\": 300\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateIntegrationResponse>\\n <RequestId>34ED024E-9E31-434A-9E4E-D9D15C3****</RequestId>\\n <Integration>\\n <IntegrationId>1234</IntegrationId>\\n <IntegrationName>云监控集成</IntegrationName>\\n <IntegrationProductType>CLOUD_MONITOR</IntegrationProductType>\\n <Description>测试</Description>\\n <AutoRecover>true</AutoRecover>\\n <RecoverTime>300</RecoverTime>\\n </Integration>\\n</CreateIntegrationResponse>","errorExample":""}]', + 'title' => 'CreateIntegration', + ], + 'UpdateIntegration' => [ + 'summary' => 'Modifies the information about an integration.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'IntegrationId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the alert integration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1234', + ], + ], + [ + 'name' => 'IntegrationName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the alert integration.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'CloudMonitor integration'."\n", + ], + ], + [ + 'name' => 'IntegrationProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The service of the alert integration. Valid values:'."\n" + ."\n" + .'* CLOUD_MONITOR: CloudMonitor'."\n" + .'* LOG_SERVICE: Log Service'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'CLOUD_MONITOR', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The description of the alert integration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Test'."\n", + ], + ], + [ + 'name' => 'AutoRecover', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to automatically clear alert events. Valid values:'."\n" + ."\n" + .'* true (default)'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RecoverTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The period of time within which alert events are automatically cleared. Unit: seconds. Default value: 300.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'DuplicateKey', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The fields whose values are deduplicated.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'LABEL.dimensions::LABEL.ruleId', + ], + ], + [ + 'name' => 'State', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Indicates whether the alert integration was enabled. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'Stat', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The total number of alert events and the number of abnormal alert events in the last hour.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[0,0]', + ], + ], + [ + 'name' => 'Liveness', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The activity of the alert integration'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ready', + ], + ], + [ + 'name' => 'FieldRedefineRules', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The predefined mapped fields are mapped to the fields of ARMS alerts. The predefined mapped fields were generated when the alert integration was created. For more information, see the description of the FieldRedefineRules parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '\\[ { "redefineType":"EXTRACT", "matchExpression":null, "fieldName":"alertname", "expression":null, "mappingRuleList":\\[ ], "name":"Alert name", "integrationId":1234, "jsonPath":"$.alertName", "id":10001, "fieldType":"LABEL" }, { "redefineType":"MAP", "matchExpression":null, "fieldName":"severity", "expression":null, "mappingRuleList":\\[ { "mappingValue":"critical", "mappingName":"P1", "mappingType":"MAP", "originValue":"CRITICAL" }, { "mappingValue":"error", "mappingName":"P2", "mappingType":"MAP", "originValue":"WARN" }, { "mappingValue":"warning", "mappingName":"P3", "mappingType":"MAP", "originValue":"INFO" } ], "name":"Alert level", "integrationId":1234, "jsonPath":"$.triggerLevel", "id":10002, "fieldType":"LABEL" }, { "redefineType":"EXTRACT", "matchExpression":null, "fieldName":"message", "expression":"{{$labels.namespace}} / {{$labels.dimensions}} Alert content {{ $labels.alertname }}, Current value {{$value}}.", "mappingRuleList":\\[ ], "name":"Alert description", "integrationId":1234, "jsonPath":null, "id":10003, "fieldType":"ANNOTATION" }, { "redefineType":"EXTRACT", "matchExpression":null, "fieldName":"value", "expression":null, "mappingRuleList":\\[ ], "name":"Alert sample value", "integrationId":1234, "jsonPath":"$.curValue", "id":10004, "fieldType":"ANNOTATION" }, { "redefineType":"EXTRACT", "matchExpression":null, "fieldName":"source", "expression":null, "mappingRuleList":\\[ ], "name":"Source", "integrationId":1234, "jsonPath":null, "id":10007, "fieldType":"LABEL" }, { "redefineType":"ADD", "matchExpression":null, "fieldName":"generatorUrl", "expression":"https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}\\&searchValue=\\&searchType=name\\&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}", "mappingRuleList":\\[ ], "name":"Event URL", "integrationId":1234, "jsonPath":"https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}\\&searchValue=\\&searchType=name\\&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}", "id":10012, "fieldType":"GENERATE_URL" } ]'."\n", + ], + ], + [ + 'name' => 'ExtendedFieldRedefineRules', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The extended mapped fields are mapped to the fields of ARMS alerts. For more information, see the description of the ExtendedFieldRedefineRules parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '['."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"dimensions",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"dimensions",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"$.dimensions",'."\n" + .' "id":10013,'."\n" + .' "fieldType":"LABEL"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"expression",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"expression",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"$.expression",'."\n" + .' "id":10014,'."\n" + .' "fieldType":"LABEL"'."\n" + .' }'."\n" + .']', + ], + ], + [ + 'name' => 'InitiativeRecoverField', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The field for clearing alert events. The system queries alert events based on the field of alert clearing events and clears the alert events.'."\n" + ."\n" + .'> Only the Log Service alert integration supports the parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '$.status', + ], + ], + [ + 'name' => 'InitiativeRecoverValue', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The value of the field for clearing alert events. The system queries alert events based on the field of alert clearing events and clears the alert events.'."\n" + ."\n" + .'> Only the Log Service alert integration supports the parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ok', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3****', + ], + 'Integration' => [ + 'description' => 'The Information about the alert integration.'."\n", + 'type' => 'object', + 'properties' => [ + 'IntegrationId' => [ + 'description' => 'The ID of the alert integration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'IntegrationName' => [ + 'description' => 'The name of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'CloudMonitor integration'."\n", + ], + 'IntegrationProductType' => [ + 'description' => 'The service of the alert integration. Valid values:'."\n" + ."\n" + .'* CLOUD_MONITOR: CloudMonitor'."\n" + .'* LOG_SERVICE: Log Service'."\n", + 'type' => 'string', + 'example' => 'CLOUD_MONITOR', + ], + 'Description' => [ + 'description' => 'The description of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'Test'."\n", + ], + 'ApiEndpoint' => [ + 'description' => 'The endpoint of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'https://alerts.aliyuncs.com/api/v1/integrations/custom/ymQBN******', + ], + 'ShortToken' => [ + 'description' => 'The authentication token of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'ymQBN******', + ], + 'AutoRecover' => [ + 'description' => 'Indicates whether alert events are automatically cleared. Valid values:'."\n" + ."\n" + .'* true (default)'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RecoverTime' => [ + 'description' => 'The time when alert events are automatically cleared. Unit: seconds. Default value: 300.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '300', + ], + 'DuplicateKey' => [ + 'description' => 'The fields whose values are deduplicated.'."\n", + 'type' => 'string', + 'example' => 'LABEL.dimensions::LABEL.ruleId', + ], + 'State' => [ + 'description' => 'Indicates whether the alert integration is enabled. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Stat' => [ + 'description' => 'The total number of alert events and the number of abnormal alert events in the last hour.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The total number of alert events and the number of abnormal alert events in the last hour.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '[0,0]', + ], + ], + 'Liveness' => [ + 'description' => 'The activity of the alert integration'."\n", + 'type' => 'string', + 'example' => 'ready', + ], + 'FieldRedefineRules' => [ + 'description' => 'The predefined mapped fields of the alert source.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The predefined mapped fields are mapped to the fields of ARMS alerts. The predefined mapped fields were generated when the alert integration was created.'."\n", + 'type' => 'object', + 'example' => '', + ], + ], + 'ExtendedFieldRedefineRules' => [ + 'description' => 'The extended mapped fields of the alert source.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The extended mapped fields are mapped to the fields of ARMS alerts.'."\n", + 'type' => 'object', + 'example' => '['."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"dimensions",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"dimensions",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"$.dimensions",'."\n" + .' "id":10013,'."\n" + .' "fieldType":"LABEL"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"expression",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"expression",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"$.expression",'."\n" + .' "id":10014,'."\n" + .' "fieldType":"LABEL"'."\n" + .' }'."\n" + .']', + ], + ], + 'InitiativeRecoverField' => [ + 'description' => 'The field for clearing alert events. The system queries alert events based on the field of alert clearing events and clears the alert events.'."\n" + ."\n" + .'> Only Log Service supports this parameter.'."\n", + 'type' => 'string', + 'example' => '$.status', + ], + 'InitiativeRecoverValue' => [ + 'description' => 'The value of the field for clearing alert events. The system queries alert events based on the field of alert clearing events and clears the alert events.'."\n" + ."\n" + .'> Only Log Service supports this parameter.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\",\\n \\"Integration\\": {\\n \\"IntegrationId\\": 1234,\\n \\"IntegrationName\\": \\"云监控集成\\",\\n \\"IntegrationProductType\\": \\"CLOUD_MONITOR\\",\\n \\"Description\\": \\"测试\\",\\n \\"ApiEndpoint\\": \\"https://alerts.aliyuncs.com/api/v1/integrations/custom/ymQBN******\\",\\n \\"ShortToken\\": \\"ymQBN******\\",\\n \\"AutoRecover\\": true,\\n \\"RecoverTime\\": 300,\\n \\"DuplicateKey\\": \\"LABEL.dimensions::LABEL.ruleId\\",\\n \\"State\\": true,\\n \\"Stat\\": [\\n 0\\n ],\\n \\"Liveness\\": \\"ready\\",\\n \\"FieldRedefineRules\\": [\\n [\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"alertname\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"告警名称\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.alertName\\",\\n \\"id\\": 10001,\\n \\"fieldType\\": \\"LABEL\\"\\n },\\n {\\n \\"redefineType\\": \\"MAP\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"severity\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [\\n {\\n \\"mappingValue\\": \\"critical\\",\\n \\"mappingName\\": \\"P1\\",\\n \\"mappingType\\": \\"MAP\\",\\n \\"originValue\\": \\"CRITICAL\\"\\n },\\n {\\n \\"mappingValue\\": \\"error\\",\\n \\"mappingName\\": \\"P2\\",\\n \\"mappingType\\": \\"MAP\\",\\n \\"originValue\\": \\"WARN\\"\\n },\\n {\\n \\"mappingValue\\": \\"warning\\",\\n \\"mappingName\\": \\"P3\\",\\n \\"mappingType\\": \\"MAP\\",\\n \\"originValue\\": \\"INFO\\"\\n }\\n ],\\n \\"name\\": \\"告警等级\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.triggerLevel\\",\\n \\"id\\": 10002,\\n \\"fieldType\\": \\"LABEL\\"\\n },\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"message\\",\\n \\"expression\\": \\"{{$labels.namespace}} / {{$labels.dimensions}} 发生 {{ $labels.alertname }}, 当前值 {{$value}}。\\",\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"告警描述\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": null,\\n \\"id\\": 10003,\\n \\"fieldType\\": \\"ANNOTATION\\"\\n },\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"value\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"告警样本值\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.curValue\\",\\n \\"id\\": 10004,\\n \\"fieldType\\": \\"ANNOTATION\\"\\n },\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"source\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"来源\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": null,\\n \\"id\\": 10007,\\n \\"fieldType\\": \\"LABEL\\"\\n },\\n {\\n \\"redefineType\\": \\"ADD\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"generatorUrl\\",\\n \\"expression\\": \\"https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}\\",\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"事件地址\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}\\",\\n \\"id\\": 10012,\\n \\"fieldType\\": \\"GENERATE_URL\\"\\n }\\n ]\\n ],\\n \\"ExtendedFieldRedefineRules\\": [\\n [\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"dimensions\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"dimensions\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.dimensions\\",\\n \\"id\\": 10013,\\n \\"fieldType\\": \\"LABEL\\"\\n },\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"expression\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"expression\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.expression\\",\\n \\"id\\": 10014,\\n \\"fieldType\\": \\"LABEL\\"\\n }\\n ]\\n ],\\n \\"InitiativeRecoverField\\": \\"$.status\\",\\n \\"InitiativeRecoverValue\\": \\"ok\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<UpdateIntegrationResponse>\\n <RequestId>34ED024E-9E31-434A-9E4E-D9D15C3****</RequestId>\\n <Integration>\\n <IntegrationId>1234</IntegrationId>\\n <IntegrationName>云监控集成</IntegrationName>\\n <IntegrationProductType>CLOUD_MONITOR</IntegrationProductType>\\n <Description>测试</Description>\\n <ApiEndpoint>https://alerts.aliyuncs.com/api/v1/integrations/custom/ymQBN******</ApiEndpoint>\\n <ShortToken>ymQBN******</ShortToken>\\n <AutoRecover>true</AutoRecover>\\n <RecoverTime>300</RecoverTime>\\n <DuplicateKey>LABEL.dimensions::LABEL.ruleId</DuplicateKey>\\n <State>true</State>\\n <Liveness>ready</Liveness>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>alertname</fieldName>\\n <expression/>\\n <name>告警名称</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.alertName</jsonPath>\\n <id>10001</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>MAP</redefineType>\\n <matchExpression/>\\n <fieldName>severity</fieldName>\\n <expression/>\\n <mappingRuleList>\\n <mappingValue>critical</mappingValue>\\n <mappingName>P1</mappingName>\\n <mappingType>MAP</mappingType>\\n <originValue>CRITICAL</originValue>\\n </mappingRuleList>\\n <mappingRuleList>\\n <mappingValue>error</mappingValue>\\n <mappingName>P2</mappingName>\\n <mappingType>MAP</mappingType>\\n <originValue>WARN</originValue>\\n </mappingRuleList>\\n <mappingRuleList>\\n <mappingValue>warning</mappingValue>\\n <mappingName>P3</mappingName>\\n <mappingType>MAP</mappingType>\\n <originValue>INFO</originValue>\\n </mappingRuleList>\\n <name>告警等级</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.triggerLevel</jsonPath>\\n <id>10002</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>message</fieldName>\\n <expression>{{$labels.namespace}} / {{$labels.dimensions}} 发生 {{ $labels.alertname }}, 当前值 {{$value}}。</expression>\\n <name>告警描述</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10003</id>\\n <fieldType>ANNOTATION</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>value</fieldName>\\n <expression/>\\n <name>告警样本值</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.curValue</jsonPath>\\n <id>10004</id>\\n <fieldType>ANNOTATION</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>imageUrl</fieldName>\\n <expression/>\\n <name>告警图片</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10005</id>\\n <fieldType>ANNOTATION</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>check</fieldName>\\n <expression/>\\n <name>检查项</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10006</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>source</fieldName>\\n <expression/>\\n <name>来源</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10007</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>class</fieldName>\\n <expression/>\\n <name>分类</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10008</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>service</fieldName>\\n <expression/>\\n <name>服务</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10009</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>startat</fieldName>\\n <expression/>\\n <name>开始时间</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10010</id>\\n <fieldType>START_AT</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>endat</fieldName>\\n <expression/>\\n <name>结束时间</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10011</id>\\n <fieldType>END_AT</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>ADD</redefineType>\\n <matchExpression/>\\n <fieldName>generatorUrl</fieldName>\\n <expression>https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}</expression>\\n <name>事件地址</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}</jsonPath>\\n <id>10012</id>\\n <fieldType>GENERATE_URL</fieldType>\\n </FieldRedefineRules>\\n <ExtendedFieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>dimensions</fieldName>\\n <expression/>\\n <name>dimensions</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.dimensions</jsonPath>\\n <id>10013</id>\\n <fieldType>LABEL</fieldType>\\n </ExtendedFieldRedefineRules>\\n <ExtendedFieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>expression</fieldName>\\n <expression/>\\n <name>expression</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.expression</jsonPath>\\n <id>10014</id>\\n <fieldType>LABEL</fieldType>\\n </ExtendedFieldRedefineRules>\\n </Integration>\\n</UpdateIntegrationResponse>","errorExample":""}]', + 'title' => 'UpdateIntegration', + 'requestParamsDescription' => '### FieldRedefineRules and ExtendedFieldRedefineRules description'."\n" + ."\n" + .'Example:'."\n" + ."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"alertname",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Alert name",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"$.alertName",'."\n" + .' "id":10001,'."\n" + .' "fieldType":"LABEL"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"MAP",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"severity",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + .' {'."\n" + .' "mappingValue":"critical",'."\n" + .' "mappingName":"P1",'."\n" + .' "mappingType":"MAP",'."\n" + .' "originValue":"CRITICAL"'."\n" + .' },'."\n" + .' {'."\n" + .' "mappingValue":"error",'."\n" + .' "mappingName":"P2",'."\n" + .' "mappingType":"MAP",'."\n" + .' "originValue":"WARN"'."\n" + .' },'."\n" + .' {'."\n" + .' "mappingValue":"warning",'."\n" + .' "mappingName":"P3",'."\n" + .' "mappingType":"MAP",'."\n" + .' "originValue":"INFO"'."\n" + .' }'."\n" + .' ],'."\n" + .' "name":"Alert level",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"$.triggerLevel",'."\n" + .' "id":10002,'."\n" + .' "fieldType":"LABEL"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"message",'."\n" + .' "expression":"{{$labels.namespace}} / {{$labels.dimensions}} Alert content {{ $labels.alertname }}, Current value {{$value}}.",'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Alert description",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":null,'."\n" + .' "id":10003,'."\n" + .' "fieldType":"ANNOTATION"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"value",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Alert sample value",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"$.curValue",'."\n" + .' "id":10004,'."\n" + .' "fieldType":"ANNOTATION"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"imageUrl",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Alert image",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":null,'."\n" + .' "id":10005,'."\n" + .' "fieldType":"ANNOTATION"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"check",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Check item",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":null,'."\n" + .' "id":10006,'."\n" + .' "fieldType":"LABEL"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"source",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Source",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":null,'."\n" + .' "id":10007,'."\n" + .' "fieldType":"LABEL"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"class",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Category",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":null,'."\n" + .' "id":10008,'."\n" + .' "fieldType":"LABEL"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"service",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Service",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":null,'."\n" + .' "id":10009,'."\n" + .' "fieldType":"LABEL"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"startat",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Start time",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":null,'."\n" + .' "id":10010,'."\n" + .' "fieldType":"START_AT"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"endat",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"End time",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":null,'."\n" + .' "id":10011,'."\n" + .' "fieldType":"END_AT"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"ADD",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"generatorUrl",'."\n" + .' "expression":"https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}",'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"Event URL",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}",'."\n" + .' "id":10012,'."\n" + .' "fieldType":"GENERATE_URL"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'The following table describes the fields of the preceding parameters.'."\n" + ."\n" + .'|Field|Description|'."\n" + .'|---|---|'."\n" + .'|RedefineType|\\- MAP: maps fields such as the alert level based on a mapping table.\\- EXTRACT: uses jsonPath to map fields from a JSON file to ARMS alerts.\\- ADD: adds content mapping to ARMS alerts.\\- CONDITION: maps fields to ARMS alerts based on the specified conditions. If the specified conditions are met, jsonPath is used to map fields from a JSON file to ARMS alerts.\\- CONCAT: concatenates multiple fields into one field and then map this field to ARMS alerts.|'."\n" + .'|MatchExpression|\\- If the RedefineType field is set to CONCAT, the value of the MatchExpression field is the delimiter that is used for concatenation.\\- If the RedefineType field is set to CONDITION, the value of the MatchExpression field is the JSON string that specifies conditions.|'."\n" + .'|FieldType|\\- LABEL: the metadata of the alert. A set of labels uniquely identifies an alert event. Alert events with the same labels are compressed into one event. Example: "alertname: alert name".\\- ANNOTATION: the additional information of the alert. Annotations are not metadata. Example: "message: alert content".\\- GENERATE\\_URL: the URL of the alert event.\\- START\\_AT: the start time of the alert event.\\- END\\_AT: the end time of the alert event.|'."\n" + .'|Expression|The conditional mapping style. An escaped string value is passed to the Expression field.|'."\n" + .'|MappingRuleList|The redefinition rules of fields.|'."\n" + .'|Name|The name of the mapping rule.|'."\n" + .'|FieldName|The name of the field.|'."\n" + .'|JsonPath|The name of the source field.|'."\n" + .'|IntegrationId|The ID of the alert integration.|'."\n" + .'|Id|The primary key ID of the table for the mapped fields.|', + ], + 'DeleteIntegrations' => [ + 'summary' => 'Deletes an alert integration.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'IntegrationId', + 'in' => 'query', + 'schema' => [ + 'title' => '集成ID', + 'description' => 'The ID of the alert integration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1234', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3****', + ], + 'IsSuccess' => [ + 'title' => '删除成功或者失败', + 'description' => 'Indicates whether the alert integration is deleted. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteIntegrationsResponse>\\n <RequestId>34ED024E-9E31-434A-9E4E-D9D15C3****</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</DeleteIntegrationsResponse>","errorExample":""}]', + 'title' => 'DeleteIntegrations', + ], + 'ListIntegration' => [ + 'summary' => 'Views a list of alert integrations.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'IntegrationName', + 'in' => 'query', + 'schema' => [ + 'title' => '集成名称', + 'description' => 'The name of the alert integration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CloudMonitor integration'."\n", + ], + ], + [ + 'name' => 'IntegrationProductType', + 'in' => 'query', + 'schema' => [ + 'title' => '集成产品类型,CLOUD_MONITOR,LOG_SERVICE', + 'description' => 'The type of the alert integration. Valid values:'."\n" + ."\n" + .'* CLOUD_MONITOR: CloudMonitor'."\n" + .'* LOG_SERVICE: Log Service'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'CLOUD_MONITOR', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'title' => '页数', + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'title' => '条数', + 'description' => 'The number of alert integrations to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'IsDetail', + 'in' => 'query', + 'schema' => [ + 'title' => '是否展示详情', + 'description' => 'Specifies whether to display the details of each alert integration:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3****', + ], + 'PageInfo' => [ + 'title' => '分页信息', + 'description' => 'The pagination information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of alert integrations.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '条数', + 'description' => 'The number of alert integrations returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Integrations' => [ + 'description' => 'The information about each alert integration.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'IntegrationId' => [ + 'title' => '集成ID', + 'description' => 'The ID of the alert integration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'IntegrationName' => [ + 'title' => '集成名称', + 'description' => 'The name of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'CloudMonitor integration'."\n", + ], + 'IntegrationProductType' => [ + 'title' => '集成产品类型,CLOUD_MONITOR,LOG_SERVICE', + 'description' => 'The type of the alert integration. Valid values:'."\n" + ."\n" + .'* CLOUD_MONITOR: CloudMonitor'."\n" + .'* LOG_SERVICE: Log Service'."\n", + 'type' => 'string', + 'example' => 'CLOUD_MONITOR', + ], + 'ApiEndpoint' => [ + 'title' => '接口配置url', + 'description' => 'The endpoint of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'https://alerts.aliyuncs.com/api/v1/integrations/custom/ymQBN******', + ], + 'ShortToken' => [ + 'title' => '接口配置token', + 'description' => 'The authentication token of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'ymQBN******', + ], + 'State' => [ + 'title' => '是否启用,true/false', + 'description' => 'Indicates whether the alert integration was enabled. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Liveness' => [ + 'title' => '就绪', + 'description' => 'The activity of the alert integration'."\n", + 'type' => 'string', + 'example' => 'ready', + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the alert integration was created.'."\n", + 'type' => 'string', + 'example' => '2022-06-18', + ], + 'IntegrationDetail' => [ + 'title' => '集成详情对象信息', + 'description' => 'The information about the alert events.'."\n", + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'title' => '集成描述', + 'description' => 'The description of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'Test'."\n", + ], + 'DuplicateKey' => [ + 'title' => '去重得字段', + 'description' => 'The fields whose values are deduplicated.'."\n", + 'type' => 'string', + 'example' => 'LABEL.alertname::LABEL.severity', + ], + 'AutoRecover' => [ + 'title' => '是否设置恢复告警事件', + 'description' => 'Indicates whether alert events are automatically cleared. Valid values:'."\n" + ."\n" + .'* true (default)'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RecoverTime' => [ + 'title' => '恢复时间', + 'description' => 'The time when alert events are automatically cleared. Unit: seconds. Default value: 300.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '300', + ], + 'Stat' => [ + 'description' => 'The total number of alert events and the number of abnormal alert events in the last hour.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The total number of alert events and the number of abnormal alert events in the last hour.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '[0,0]', + ], + ], + 'FieldRedefineRules' => [ + 'description' => 'The predefined mapped fields of the alert source.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The predefined mapped fields are mapped to the fields of ARMS alerts. The predefined mapped fields were generated when the alert integration was created.'."\n", + 'type' => 'object', + 'example' => '', + ], + ], + 'ExtendedFieldRedefineRules' => [ + 'description' => 'The extended mapped fields of the alert source.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The extended mapped fields are mapped to the fields of ARMS alerts.'."\n", + 'type' => 'object', + 'example' => '['."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"dimensions",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"dimensions",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"$.dimensions",'."\n" + .' "id":10013,'."\n" + .' "fieldType":"LABEL"'."\n" + .' },'."\n" + .' {'."\n" + .' "redefineType":"EXTRACT",'."\n" + .' "matchExpression":null,'."\n" + .' "fieldName":"expression",'."\n" + .' "expression":null,'."\n" + .' "mappingRuleList":['."\n" + ."\n" + .' ],'."\n" + .' "name":"expression",'."\n" + .' "integrationId":1234,'."\n" + .' "jsonPath":"$.expression",'."\n" + .' "id":10014,'."\n" + .' "fieldType":"LABEL"'."\n" + .' }'."\n" + .']', + ], + ], + 'InitiativeRecoverField' => [ + 'description' => 'The field for clearing alert events. The system queries alert events based on the field of alert clearing events and clears the alert events.'."\n" + ."\n" + .'> Only the Log Service alert integration supports the parameter.'."\n", + 'type' => 'string', + 'example' => '$.status', + ], + 'InitiativeRecoverValue' => [ + 'description' => 'The value of the field for clearing alert events. The system queries alert events based on the field of alert clearing events and clears the alert events.'."\n" + ."\n" + .'> Only the Log Service alert integration supports the parameter.'."\n", + 'type' => 'string', + 'example' => 'ok', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\",\\n \\"PageInfo\\": {\\n \\"Total\\": 1,\\n \\"Size\\": 10,\\n \\"Page\\": 1,\\n \\"Integrations\\": [\\n {\\n \\"IntegrationId\\": 1234,\\n \\"IntegrationName\\": \\"云监控集成\\",\\n \\"IntegrationProductType\\": \\"CLOUD_MONITOR\\",\\n \\"ApiEndpoint\\": \\"https://alerts.aliyuncs.com/api/v1/integrations/custom/ymQBN******\\",\\n \\"ShortToken\\": \\"ymQBN******\\",\\n \\"State\\": true,\\n \\"Liveness\\": \\"ready\\",\\n \\"CreateTime\\": \\"2022-06-18\\",\\n \\"IntegrationDetail\\": {\\n \\"Description\\": \\"测试\\",\\n \\"DuplicateKey\\": \\"LABEL.alertname::LABEL.severity\\",\\n \\"AutoRecover\\": true,\\n \\"RecoverTime\\": 300,\\n \\"Stat\\": [\\n 0\\n ],\\n \\"FieldRedefineRules\\": [\\n [\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"alertname\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"告警名称\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.alertName\\",\\n \\"id\\": 10001,\\n \\"fieldType\\": \\"LABEL\\"\\n },\\n {\\n \\"redefineType\\": \\"MAP\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"severity\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [\\n {\\n \\"mappingValue\\": \\"critical\\",\\n \\"mappingName\\": \\"P1\\",\\n \\"mappingType\\": \\"MAP\\",\\n \\"originValue\\": \\"CRITICAL\\"\\n },\\n {\\n \\"mappingValue\\": \\"error\\",\\n \\"mappingName\\": \\"P2\\",\\n \\"mappingType\\": \\"MAP\\",\\n \\"originValue\\": \\"WARN\\"\\n },\\n {\\n \\"mappingValue\\": \\"warning\\",\\n \\"mappingName\\": \\"P3\\",\\n \\"mappingType\\": \\"MAP\\",\\n \\"originValue\\": \\"INFO\\"\\n }\\n ],\\n \\"name\\": \\"告警等级\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.triggerLevel\\",\\n \\"id\\": 10002,\\n \\"fieldType\\": \\"LABEL\\"\\n },\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"message\\",\\n \\"expression\\": \\"{{$labels.namespace}} / {{$labels.dimensions}} 发生 {{ $labels.alertname }}, 当前值 {{$value}}。\\",\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"告警描述\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": null,\\n \\"id\\": 10003,\\n \\"fieldType\\": \\"ANNOTATION\\"\\n },\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"value\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"告警样本值\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.curValue\\",\\n \\"id\\": 10004,\\n \\"fieldType\\": \\"ANNOTATION\\"\\n },\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"source\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"来源\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": null,\\n \\"id\\": 10007,\\n \\"fieldType\\": \\"LABEL\\"\\n },\\n {\\n \\"redefineType\\": \\"ADD\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"generatorUrl\\",\\n \\"expression\\": \\"https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}\\",\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"事件地址\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}\\",\\n \\"id\\": 10012,\\n \\"fieldType\\": \\"GENERATE_URL\\"\\n }\\n ]\\n ],\\n \\"ExtendedFieldRedefineRules\\": [\\n [\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"dimensions\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"dimensions\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.dimensions\\",\\n \\"id\\": 10013,\\n \\"fieldType\\": \\"LABEL\\"\\n },\\n {\\n \\"redefineType\\": \\"EXTRACT\\",\\n \\"matchExpression\\": null,\\n \\"fieldName\\": \\"expression\\",\\n \\"expression\\": null,\\n \\"mappingRuleList\\": [],\\n \\"name\\": \\"expression\\",\\n \\"integrationId\\": 1234,\\n \\"jsonPath\\": \\"$.expression\\",\\n \\"id\\": 10014,\\n \\"fieldType\\": \\"LABEL\\"\\n }\\n ]\\n ],\\n \\"InitiativeRecoverField\\": \\"$.status\\",\\n \\"InitiativeRecoverValue\\": \\"ok\\"\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListIntegrationResponse>\\n <RequestId>34ED024E-9E31-434A-9E4E-D9D15C3****</RequestId>\\n <PageInfo>\\n <Total>1</Total>\\n <Size>10</Size>\\n <Page>1</Page>\\n <Iintegrations>\\n <IntegrationId>1234</IntegrationId>\\n <IntegrationName>云监控集成</IntegrationName>\\n <IntegrationProductType>CLOUD_MONITOR</IntegrationProductType>\\n <ApiEndpoint>https://alerts.aliyuncs.com/api/v1/integrations/custom/ymQBN******</ApiEndpoint>\\n <ShortToken>ymQBN******</ShortToken>\\n <State>true</State>\\n <Liveness>ready</Liveness>\\n <CreateTime>2022-06-18</CreateTime>\\n <IntegrationDetail>\\n <Description>测试</Description>\\n <DuplicateKey>LABEL.alertname::LABEL.severity</DuplicateKey>\\n <AutoRecover>true</AutoRecover>\\n <RecoverTime>300</RecoverTime>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>alertname</fieldName>\\n <expression/>\\n <name>告警名称</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.alertName</jsonPath>\\n <id>10001</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>MAP</redefineType>\\n <matchExpression/>\\n <fieldName>severity</fieldName>\\n <expression/>\\n <mappingRuleList>\\n <mappingValue>critical</mappingValue>\\n <mappingName>P1</mappingName>\\n <mappingType>MAP</mappingType>\\n <originValue>CRITICAL</originValue>\\n </mappingRuleList>\\n <mappingRuleList>\\n <mappingValue>error</mappingValue>\\n <mappingName>P2</mappingName>\\n <mappingType>MAP</mappingType>\\n <originValue>WARN</originValue>\\n </mappingRuleList>\\n <mappingRuleList>\\n <mappingValue>warning</mappingValue>\\n <mappingName>P3</mappingName>\\n <mappingType>MAP</mappingType>\\n <originValue>INFO</originValue>\\n </mappingRuleList>\\n <name>告警等级</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.triggerLevel</jsonPath>\\n <id>10002</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>message</fieldName>\\n <expression>{{$labels.namespace}} / {{$labels.dimensions}} 发生 {{ $labels.alertname }}, 当前值 {{$value}}。</expression>\\n <name>告警描述</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10003</id>\\n <fieldType>ANNOTATION</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>value</fieldName>\\n <expression/>\\n <name>告警样本值</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.curValue</jsonPath>\\n <id>10004</id>\\n <fieldType>ANNOTATION</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>imageUrl</fieldName>\\n <expression/>\\n <name>告警图片</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10005</id>\\n <fieldType>ANNOTATION</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>check</fieldName>\\n <expression/>\\n <name>检查项</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10006</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>source</fieldName>\\n <expression/>\\n <name>来源</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10007</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>class</fieldName>\\n <expression/>\\n <name>分类</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10008</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>service</fieldName>\\n <expression/>\\n <name>服务</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10009</id>\\n <fieldType>LABEL</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>startat</fieldName>\\n <expression/>\\n <name>开始时间</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10010</id>\\n <fieldType>START_AT</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>endat</fieldName>\\n <expression/>\\n <name>结束时间</name>\\n <integrationId>1234</integrationId>\\n <jsonPath/>\\n <id>10011</id>\\n <fieldType>END_AT</fieldType>\\n </FieldRedefineRules>\\n <FieldRedefineRules>\\n <redefineType>ADD</redefineType>\\n <matchExpression/>\\n <fieldName>generatorUrl</fieldName>\\n <expression>https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}</expression>\\n <name>事件地址</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>https://cloudmonitor.console.aliyun.com/index.htm#/alarmInfo/name={{$labels.ruleId}}&searchValue=&searchType=name&searchProduct=/history/all/searchKey:{{$labels.ruleId}},startTime:{{sub $startsAt 300000}},endTime:{{$endsAt}}</jsonPath>\\n <id>10012</id>\\n <fieldType>GENERATE_URL</fieldType>\\n </FieldRedefineRules>\\n <ExtendedFieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>dimensions</fieldName>\\n <expression/>\\n <name>dimensions</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.dimensions</jsonPath>\\n <id>10013</id>\\n <fieldType>LABEL</fieldType>\\n </ExtendedFieldRedefineRules>\\n <ExtendedFieldRedefineRules>\\n <redefineType>EXTRACT</redefineType>\\n <matchExpression/>\\n <fieldName>expression</fieldName>\\n <expression/>\\n <name>expression</name>\\n <integrationId>1234</integrationId>\\n <jsonPath>$.expression</jsonPath>\\n <id>10014</id>\\n <fieldType>LABEL</fieldType>\\n </ExtendedFieldRedefineRules>\\n </IntegrationDetail>\\n </Iintegrations>\\n </PageInfo>\\n</ListIntegrationResponse>","errorExample":""}]', + 'title' => 'ListIntegration', + ], + 'CreateOrUpdateAlertRule' => [ + 'summary' => 'Creates or modifies an alert rule.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '104428', + 'abilityTreeNodes' => [ + 'FEATUREarms20UGKV', + ], + ], + 'parameters' => [ + [ + 'name' => 'AlertId', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警规则ID', + 'description' => 'The ID of the alert rule.'."\n" + ."\n" + .'* If you do not specify this parameter, a new alert rule is created.'."\n" + .'* If you specify this parameter, the specified alert rule is modified.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '546xxx', + ], + ], + [ + 'name' => 'AlertName', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警规则名称', + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Alert Rule Demo', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => [ + 'title' => '地域', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AlertType', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警规则类型', + 'description' => 'The type of the alert rule. Valid values:'."\n" + ."\n" + .'* APPLICATION_MONITORING_ALERT_RULE: an alert rule for Application Monitoring.'."\n" + .'* BROWSER_MONITORING_ALERT_RULE: an alert rule for Browser Monitoring.'."\n" + .'* PROMETHEUS_MONITORING_ALERT_RULE: an alert rule for Managed Service for Prometheus.'."\n" + .'* XTRACE_MONITORING_ALERT_RULE: an alert rule for Managed Service for OpenTelemetry.'."\n" + .'* EBPF_MONITORING_ALERT_RULE: an alert rule for Application Monitoring eBPF Edition.'."\n" + .'* RUM_MONITORING_ALERT_RULE: an alert rule for Real User Monitoring.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PROMETHEUS_MONITORING_ALERT_RULE'."\n" + .'* APPLICATION_MONITORING_ALERT_RULE'."\n" + .'* BROWSER_MONITORING_ALERT_RULE'."\n" + .'* prometheus monitoring alert'."\n" + .'* application monitoring alert'."\n" + .'* browser monitoring alert'."\n" + .'* XTRACE_MONITORING_ALERT_RULE'."\n" + .'* EBPF_MONITORING_ALERT_RULE'."\n" + .'* RUM_MONITORING_ALERT_RULE'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [], + 'example' => 'APPLICATION_MONITORING_ALERT_RULE', + 'enum' => [ + 'PROMETHEUS_MONITORING_ALERT_RULE', + 'APPLICATION_MONITORING_ALERT_RULE', + 'BROWSER_MONITORING_ALERT_RULE', + 'prometheus monitoring alert', + 'application monitoring alert', + 'browser monitoring alert', + 'XTRACE_MONITORING_ALERT_RULE', + 'EBPF_MONITORING_ALERT_RULE', + 'RUM_MONITORING_ALERT_RULE', + ], + ], + ], + [ + 'name' => 'AlertStatus', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The status of the alert rule. Valid values:'."\n" + ."\n" + .'* RUNNING (default)'."\n" + .'* STOPPED'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'RUNNING', + ], + ], + [ + 'name' => 'NotifyStrategy', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The notification policy.'."\n" + ."\n" + .'* If you set this parameter to null, no notification policy is specified. After you create an alert rule, you can create a notification policy and specify match rules and match conditions. For example, you can specify the name of the alert rule as the match condition. When the alert rule is triggered, an alert event is generated and an alert notification is sent to the contacts or contact groups that are specified in the notification policy.'."\n" + .'* To specify a notification policy, set this parameter to the ID of the notification policy. Application Real-Time Monitoring Service (ARMS) automatically adds a match rule to the notification policy and specifies the ID of the alert rule as the match condition. The name of the alert rule is also displayed. This way, the alert events that are generated based on the alert rule can be matched by the specified notification policy.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '569xxx', + ], + ], + [ + 'name' => 'Pids', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The process ID (PID) that is associated with the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '["b590lhguqs@40d8deedfa9******"]', + ], + ], + [ + 'name' => 'AutoAddNewApplication', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to apply the alert rule to new applications that are created in Application Monitoring or Browser Monitoring. Valid values:'."\n" + ."\n" + .'* `true`: enables the health check feature.'."\n" + .'* `false`: disables the automatic backup feature.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'MetricsType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The metric type of the Application Monitoring or Browser Monitoring alert rule. For more information, see the following table.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'jvm', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The filter conditions of the Application Monitoring or Browser Monitoring alert rule. Format:'."\n" + ."\n" + .' "DimFilters": [ '."\n" + .' { '."\n" + .' "FilterOpt": "ALL",'."\n" + .' "FilterValues": [], //The value of the filter condition.'."\n" + .' "FilterKey": "rootIp" //The key of the filter condition.'."\n" + .' }'."\n" + .' ]'."\n" + ."\n" + .'Valid values of **FilterOpt**:'."\n" + ."\n" + .'* STATIC: matches the value of the specified dimension.'."\n" + .'* ALL: traverses all dimension values. Dynamic thresholds do not support traversal.'."\n" + .'* DISABLE: aggregates the values of all dimensions.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"DimFilters": [ { "FilterOpt": "ALL", "FilterValues": [], "FilterKey": "rootIp" } ] }', + ], + ], + [ + 'name' => 'AlertRuleContent', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The content of the Application Monitoring or Browser Monitoring alert rule. The following code provides an example of the **AlertRuleContent** parameter. For more information about the meaning of each field, see the supplementary description.'."\n" + ."\n" + .'```json'."\n" + .'{ '."\n" + .' "Condition": "OR",'."\n" + .' "AlertRuleItems": ['."\n" + .' { "Operator": "CURRENT_LTE",'."\n" + .' "MetricKey": "appstat.jvm.threadcount",'."\n" + .' "Value": 1000,'."\n" + .' "Aggregate": "AVG",'."\n" + .' "N": 10,'."\n" + .' "Tolerability": 169'."\n" + .' } '."\n" + .' ] '."\n" + .' }'."\n" + .'```'."\n" + ."\n" + .'> The filter conditions specified by the **AlertRuleItems.MetricKey** field depends on the value of the **MetricsType** parameter. For more information about the types of metrics supported by Application Monitoring and Browser Monitoring and the alert rule fields corresponding to each metric, see the supplementary description.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "Condition": "OR", "AlertRuleItems": [ { "Operator": "CURRENT_LTE", "MetricKey": "appstat.jvm.threadcount", "Value": 1000, "Aggregate": "AVG", "N": 1 } ] }', + ], + ], + [ + 'name' => 'AlertCheckType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The alert check type of the Prometheus alert rule. Valid values:'."\n" + ."\n" + .'* STATIC: a static threshold value. If you set the parameter to STATIC, you must specify the **MetricsKey** parameter. For more information, see the **Correspondence between AlertGroup and MetricsKey for Prometheus Service** table.'."\n" + .'* CUSTOM: a custom PromQL statement. If you set the parameter to CUSTOM, you must specify the **PromQL**, **Duration**, and **Message** parameters to create a Prometheus alert rule.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'STATIC', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the monitored cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ceba9b9ea5b924dd0b6726d2de6******', + ], + ], + [ + 'name' => 'AlertGroup', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The alert contact group ID of the Prometheus alert rule. Valid values:'."\n" + ."\n" + .'* \\-1: custom PromQL'."\n" + .'* 1: Kubernetes load'."\n" + .'* 15: Kubernetes node'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '-1', + ], + ], + [ + 'name' => 'PromQL', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The PromQL statement of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'node_memory_MemAvailable_bytes{} / node_memory_MemTotal_bytes{} * 100', + ], + ], + [ + 'name' => 'Duration', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The duration of the Prometheus alert rule, in minutes, in the range of [0,1440].', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Level', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The severity level of the Prometheus alert rule.'."\n" + ."\n" + .'* P1: Alert notifications are sent for major issues that affect the availability of core business, have a huge impact, and may lead to serious consequences.'."\n" + .'* P2: Alert notifications are sent for service errors that affect the system availability with relatively limited impact.'."\n" + .'* P3: Alert notifications are sent for issues that may cause service errors or negative effects, or alert notifications for services that are relatively less important.'."\n" + .'* P4: Alert notifications are sent for low-priority issues that do not affect your business.'."\n" + .'* Default: Alert notifications are sent regardless of alert levels.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'P2', + ], + ], + [ + 'name' => 'Message', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The alert message of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Namespace: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / Container: {{$labels.container}} Memory usage exceeds 80%. Current value: {{ printf \\\\\\\\\\"%.2f\\\\\\\\\\" $value }}%'."\n", + ], + ], + [ + 'name' => 'Labels', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The tags of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[ { "Value": "cms_polardb", "Name": "_aliyun_cloud_product" } ]', + ], + ], + [ + 'name' => 'Annotations', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The annotations of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '\\[ { "Value": "PolarDB slow queries", "Name": "\\_aliyun_display_name" }'."\n", + ], + ], + [ + 'name' => 'MetricsKey', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The alert metrics. If you set the **AlertCheckType** parameter to **STATIC** when you create a Prometheus alert rule, you must specify the **MetricsKey** parameter.'."\n" + ."\n" + .'> Alert metrics vary depending on the value of the **AlertGroup** parameter. For more information about the correspondence between **AlertGroup** and **MetricsKey**, see the supplementary description.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pop.status.error', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'owner', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'John', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + [ + 'name' => 'MarkTags', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'Application Tags. Used for application monitoring alert rules, to filter applications associated with alert rules.', + 'type' => 'array', + 'items' => [ + 'description' => 'Associated Application Tags.', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The Tag Key.', + 'type' => 'string', + 'required' => false, + 'example' => 'service', + ], + 'Value' => [ + 'description' => 'The Tag Value.', + 'type' => 'string', + 'required' => false, + 'example' => 'proudct', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'DataConfig', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Data Configuration. The dataRevision field specifies the data repair method when there is no data for the metric.'."\n" + ."\n" + .'- Fill with zero: 0'."\n" + .'- Fill with one: 1'."\n" + .'- Fill with null: 2 (default, does not trigger an alarm)', + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "dataRevision": 2'."\n" + .'}', + ], + ], + [ + 'name' => 'Notice', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The effective time and notification time. This parameter is used to be compatible with the old version of the rule.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '-', + ], + ], + [ + 'name' => 'AlertPiplines', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The configuration of the alert sending channel. This parameter is used to be compatible with the old version of the rule.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '-', + ], + ], + [ + 'name' => 'NotifyMode', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The notification mode. You can specify normal mode or simple mode.'."\n" + ."\n" + .'* DIRECTED_MODE'."\n" + .'* NORMAL_MODE'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'NORMAL_MODE', + 'default' => 'NORMAL_MODE', + 'enum' => [ + 'DIRECTED_MODE', + 'NORMAL_MODE', + ], + ], + ], + [ + 'name' => 'Product', + 'in' => 'formData', + 'schema' => [ + 'title' => '创建Prometheus告警规则时传入,后台会校验是否存在此产品,用于区分云产品过滤查询', + 'description' => 'The product code. If you specify this parameter when you create a Prometheus alert rule, the backend checks whether the product exists.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'clickhouse', + ], + ], + [ + 'name' => 'AutoAddTargetConfig', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The configurations that are automatically appended to monitor the application based on the specified alert rule.'."\n" + ."\n" + .'* autoAddMatchType:'."\n" + ."\n" + .' the matching mode. Valid values: REGULAR and NOT_REGULAR.'."\n" + ."\n" + .'* autoAddMatchExp: the regular expression'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{\\"autoAddMatchType\\":\\"REGULAR\\",\\"autoAddMatchExp\\":\\".*cbw.*\\"}', + ], + ], + [ + 'name' => 'CheckCycle', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The interval for checking the alerts in Managed Service for Prometheus.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'aliyunLang', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '337B8F7E-0A64-5768-9225-E9B3CF******', + ], + 'AlertRule' => [ + 'description' => 'The details of the alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlertId' => [ + 'description' => 'The alert rule ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5510445', + 'title' => '', + ], + 'AlertName' => [ + 'title' => '告警规则名称', + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'arms-test', + ], + 'UserId' => [ + 'title' => '用户UID', + 'description' => 'The ID of the Alibaba Cloud account.'."\n", + 'type' => 'string', + 'example' => '1131971649******', + ], + 'RegionId' => [ + 'title' => '地域', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'AlertType' => [ + 'title' => '告警规则类型', + 'description' => 'The type of the alert rule. Valid values:'."\n" + ."\n" + .'* APPLICATION_MONITORING_ALERT_RULE: alert rule for Application Monitoring'."\n" + .'* BROWSER_MONITORING_ALERT_RULE: alert rule for Browser Monitoring'."\n" + .'* PROMETHEUS_MONITORING_ALERT_RULE: alert rule for Prometheus Service'."\n", + 'type' => 'string', + 'example' => 'APPLICATION_MONITORING_ALERT_RULE', + ], + 'AlertStatus' => [ + 'title' => '告警规则状态', + 'description' => 'The status of the alert rule. Valid values:'."\n" + ."\n" + .'* RUNNING'."\n" + .'* STOPPED'."\n" + .'* PAUSED'."\n" + ."\n" + .'> The PAUSED status indicates that the alert rule is abnormal and is actively paused by the system. The alert rule may be paused because that it is not unique or the associated cluster has been deleted.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'CreatedTime' => [ + 'title' => '创建时间', + 'description' => 'The timestamp generated when the alert rule was created. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1641438611000', + ], + 'UpdatedTime' => [ + 'title' => '更新时间', + 'description' => 'The timestamp generated when the alert rule was updated. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1641438611000', + ], + 'Extend' => [ + 'title' => '扩展字段', + 'description' => 'The extended fields.'."\n", + 'type' => 'string', + 'example' => '{\\\\"alarmContext\\\\":\\\\"{\\\\\\\\\\"content\\\\\\\\\\":\\\\\\\\Alert name: $Alert name\\\\\\\\\\\\nFilter condition: $Filter condition\\\\\\\\\\\\nAlert time: $Alert time\\\\\\\\\\\\nAlert content: $Alert content\\\\\\\\\\\\nNote: The alert persists before you receive an email that reminds you to clear the alert. You will be reminded of the alert again 24 hours later. \\\\\\\\\\",\\\\\\\\\\"subTitle\\\\\\\\\\":\\\\\\\\\\"\\\\\\\\\\"}\\\\",\\\\"alertWays\\\\":\\\\"\\[0,1]\\\\",\\\\"contactGroupIds\\\\":\\\\"381,5075\\\\",\\\\"notice\\\\":\\\\"{\\\\\\\\\\"endTime\\\\\\\\\\":1480607940000,\\\\\\\\\\"noticeEndTime\\\\\\\\\\":1480607940000,\\\\\\\\\\"noticeStartTime\\\\\\\\\\":1480521600000,\\\\\\\\\\"startTime\\\\\\\\\\":1480521600000}\\\\"}'."\n", + ], + 'NotifyStrategy' => [ + 'title' => '通知策略ID', + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'ALERT_MANAGER', + ], + 'Pids' => [ + 'title' => '应用监控/前端监控-告警关联应用ID', + 'description' => 'The process ID (PID) that was associated with the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The PID of the application.'."\n", + 'type' => 'string', + 'example' => 'b590lhguqs@40d8deedfa9******', + ], + ], + 'AutoAddNewApplication' => [ + 'title' => '应用监控/前端监控-是否开启新创建应用追加到此告警规则', + 'description' => 'Indicates whether the alert rule was applied to new applications that were created in Application Monitoring or Browser Monitoring. Valid values:'."\n" + ."\n" + .'* `true`: enables the health check feature.'."\n" + .'* `false`: disables the automatic backup feature.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'MetricsType' => [ + 'title' => '应用监控/前端监控-告警指标类型', + 'description' => 'The metric type of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'string', + 'example' => 'JVM', + ], + 'AlertRuleContent' => [ + 'title' => '应用监控/前端监控-告警规则内容', + 'description' => 'The content of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'Condition' => [ + 'title' => '应用监控/前端监控-多个告警条件触发逻辑', + 'description' => 'The relationship between multiple alert conditions that were specified for the Application Monitoring or Browser Monitoring alert rule. Valid values:'."\n" + ."\n" + .'* OR: meets any of the specified conditions.'."\n" + .'* AND: meets all the specified conditions.'."\n", + 'type' => 'string', + 'example' => '"|"', + ], + 'AlertRuleItems' => [ + 'title' => '应用监控/前端监控-告警条件', + 'description' => 'The trigger conditions of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the alert condition.'."\n", + 'type' => 'object', + 'properties' => [ + 'N' => [ + 'title' => '应用监控/前端监控-最近N分钟', + 'description' => 'Indicates the last N minutes.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '1', + ], + 'MetricKey' => [ + 'title' => '应用监控/前端监控-具体告警条件的指标', + 'description' => 'The metric of the alert condition.'."\n", + 'type' => 'string', + 'example' => 'appstat.jvm.non_heap_used'."\n", + ], + 'Aggregate' => [ + 'title' => '应用监控/前端监控-聚合方式', + 'description' => 'The aggregation method of the alert condition. Valid values:'."\n" + ."\n" + .'* AVG: calculates the average value'."\n" + .'* SUM: calculates the total value'."\n" + .'* MAX: selects the maximum value'."\n" + .'* MIN: selects the minimum value'."\n", + 'type' => 'string', + 'example' => 'AVG', + ], + 'Operator' => [ + 'title' => '应用监控/前端监控-判断条件', + 'description' => 'The comparison operator that was used to compare the metric value with the threshold. Valid values:'."\n" + ."\n" + .'* CURRENT_GTE: greater than or equal to'."\n" + .'* CURRENT_LTE: less than or equal to'."\n" + .'* PREVIOUS_UP: the increase percentage compared with the last period'."\n" + .'* PREVIOUS_DOWN: the decrease percentage compared with the last period'."\n" + .'* HOH_UP: the increase percentage compared with the last hour'."\n" + .'* HOH_DOWN: the decrease percentage compared with the last hour'."\n" + .'* DOD_UP: the increase percentage compared with the last day'."\n" + .'* DOD_DOWN: the decrease percentage compared with the last day'."\n", + 'type' => 'string', + 'example' => 'CURRENT_GTE', + ], + 'Value' => [ + 'title' => '应用监控/前端监控-阈值', + 'description' => 'The threshold of the alert condition.'."\n", + 'type' => 'string', + 'example' => '1', + ], + ], + ], + ], + ], + ], + 'Filters' => [ + 'title' => '应用监控/前端监控-告警条件-过滤项', + 'description' => 'The filter conditions of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'DimFilters' => [ + 'description' => 'The information about each filter condition of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the filter condition.'."\n", + 'type' => 'object', + 'properties' => [ + 'FilterKey' => [ + 'description' => 'The key of the filter condition.'."\n", + 'type' => 'string', + 'example' => 'rootIp', + ], + 'FilterOpt' => [ + 'description' => 'The logical operator of the filter condition.'."\n", + 'type' => 'string', + 'example' => 'ALL', + ], + 'FilterValues' => [ + 'description' => 'The details of the filter condition.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The value of the filter condition.'."\n", + 'type' => 'string', + 'example' => '[]', + ], + ], + ], + ], + ], + 'CustomSLSFilters' => [ + 'description' => 'The custom filter condition of the Browser Monitoring alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the custom filter condition.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the filter condition.'."\n", + 'type' => 'string', + 'example' => 'username', + ], + 'Opt' => [ + 'description' => 'The logical operator of the filter condition. Valid values:'."\n" + ."\n" + .'* \\=: equal to'."\n" + .'* not: not equal to'."\n", + 'type' => 'string', + 'example' => '=', + ], + 'Value' => [ + 'description' => 'The value of the filter condition.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'T' => [ + 'description' => 'The log type of Browser Monitoring. This field was not included in other filter conditions.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Show' => [ + 'description' => 'Indicates whether this filter condition was displayed on the frontend.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + ], + ], + ], + 'CustomSLSGroupByDimensions' => [ + 'description' => 'The information of the aggregation dimension.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The value of the aggregation dimension.'."\n", + 'type' => 'string', + 'example' => '["page"]', + ], + ], + 'CustomSLSWheres' => [ + 'description' => 'The details of the custom filter condition.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The value of the custom filter condition.'."\n", + 'type' => 'string', + 'example' => '["t like \'%api%\'"]', + ], + ], + ], + ], + 'AlertCheckType' => [ + 'title' => 'Prometheus告警-告警检查类型', + 'description' => 'The alert check type of the Prometheus alert rule. Valid values:'."\n" + ."\n" + .'* STATIC: a static threshold value.'."\n" + .'* CUSTOM: a custom PromQL statement.'."\n", + 'type' => 'string', + 'example' => 'STATIC', + ], + 'ClusterId' => [ + 'title' => 'Prometheus告警-集群ID', + 'description' => 'The ID of the monitored cluster.'."\n", + 'type' => 'string', + 'example' => 'ceba9b9ea5b924dd0b6726d2de6******', + ], + 'AlertGroup' => [ + 'title' => 'Prometheus告警-告警分组ID', + 'description' => 'The alert contact group ID of the Prometheus alert rule. Valid values:'."\n" + ."\n" + .'* \\-1: custom PromQL'."\n" + .'* 1: Kubernetes load'."\n" + .'* 15: Kubernetes node'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '-1', + ], + 'PromQL' => [ + 'title' => 'Prometheus告警-PromQL语句', + 'description' => 'The PromQL statement of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'example' => 'node_memory_MemAvailable_bytes{} / node_memory_MemTotal_bytes{} * 100', + ], + 'Duration' => [ + 'title' => 'Prometheus告警-持续时间', + 'description' => 'The duration of the Prometheus alert rule. Unit: minutes.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'Level' => [ + 'title' => 'Prometheus告警-等级', + 'description' => 'The severity level of the Prometheus alert rule.'."\n" + ."\n" + .'* P1: Alert notifications are sent for major issues that affect the availability of core business, have a huge impact, and may lead to serious consequences.'."\n" + .'* P2: Alert notifications are sent for service errors that affect the system availability with relatively limited impact.'."\n" + .'* P3: Alert notifications are sent for issues that may cause service errors or negative effects, or alert notifications for services that are relatively less important.'."\n" + .'* P4: Alert notifications are sent for low-priority issues that do not affect your business.'."\n" + .'* Default: Alert notifications are sent regardless of alert levels.'."\n", + 'type' => 'string', + 'example' => 'P2', + ], + 'Message' => [ + 'title' => 'Prometheus告警-告警内容', + 'description' => 'The alert message of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'example' => 'Namespace: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / Container: {{$labels.container}} Memory usage exceeds 80%. Current value: {{ printf \\\\\\\\\\"%.2f\\\\\\\\\\" $value }}%'."\n", + ], + 'Labels' => [ + 'title' => 'Prometheus告警-Label', + 'description' => 'The tags of the Prometheus alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '键', + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => '123', + ], + 'Value' => [ + 'title' => '值', + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + ], + ], + ], + 'Annotations' => [ + 'title' => 'Prometheus告警-Annotation', + 'description' => 'The annotations of the Prometheus alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The annotation struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '键', + 'description' => 'The key of the annotation.'."\n", + 'type' => 'string', + 'example' => '123', + ], + 'Value' => [ + 'title' => '值', + 'description' => 'The value of the annotation.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + ], + ], + ], + 'Tags' => [ + 'description' => 'The list of tags.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.', + 'type' => 'string', + 'example' => 'owner', + ], + 'Value' => [ + 'description' => 'The tag value.', + 'type' => 'string', + 'example' => 'John', + ], + ], + ], + ], + 'NotifyMode' => [ + 'description' => 'Notification Mode.', + 'type' => 'string', + 'example' => 'NORMAL_MODE', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"337B8F7E-0A64-5768-9225-E9B3CF******\\",\\n \\"AlertRule\\": {\\n \\"AlertId\\": 5510445,\\n \\"AlertName\\": \\"arms-test\\",\\n \\"UserId\\": \\"1131971649******\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AlertType\\": \\"APPLICATION_MONITORING_ALERT_RULE\\",\\n \\"AlertStatus\\": \\"RUNNING\\",\\n \\"CreatedTime\\": 1641438611000,\\n \\"UpdatedTime\\": 1641438611000,\\n \\"Extend\\": \\"{\\\\\\\\\\\\\\"alarmContext\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"content\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"报警名称:$报警名称\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n筛选条件: $筛选\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n报警时间: $报警时间\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n报警内容: $报警内容\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n注意!:该报警未收到恢复邮件之前,正在持续报警中,24小时后会再次提醒您!\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"subTitle\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"alertWays\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"[0,1]\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"contactGroupIds\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"381,5075\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"notice\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"endTime\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":1480607940000,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"noticeEndTime\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":1480607940000,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"noticeStartTime\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":1480521600000,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"startTime\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":1480521600000}\\\\\\\\\\\\\\"}\\",\\n \\"NotifyStrategy\\": \\"ALERT_MANAGER\\",\\n \\"Pids\\": [\\n \\"b590lhguqs@40d8deedfa9******\\"\\n ],\\n \\"AutoAddNewApplication\\": false,\\n \\"MetricsType\\": \\"JVM\\",\\n \\"AlertRuleContent\\": {\\n \\"Condition\\": \\"OR\\",\\n \\"AlertRuleItems\\": [\\n {\\n \\"N\\": 1,\\n \\"MetricKey\\": \\"JVM非堆总使用内存量\\",\\n \\"Aggregate\\": \\"AVG\\",\\n \\"Operator\\": \\"CURRENT_GTE\\",\\n \\"Value\\": \\"1\\"\\n }\\n ]\\n },\\n \\"Filters\\": {\\n \\"DimFilters\\": [\\n {\\n \\"FilterKey\\": \\"rootIp\\",\\n \\"FilterOpt\\": \\"ALL\\",\\n \\"FilterValues\\": [\\n \\"[]\\"\\n ]\\n }\\n ],\\n \\"CustomSLSFilters\\": [\\n {\\n \\"Key\\": \\"username\\",\\n \\"Opt\\": \\"=\\",\\n \\"Value\\": \\"test\\",\\n \\"T\\": \\"null\\",\\n \\"Show\\": false\\n }\\n ],\\n \\"CustomSLSGroupByDimensions\\": [\\n \\"[\\\\\\"page\\\\\\"]\\"\\n ],\\n \\"CustomSLSWheres\\": [\\n \\"[\\\\\\"t like \'%api%\'\\\\\\"]\\"\\n ]\\n },\\n \\"AlertCheckType\\": \\"STATIC\\",\\n \\"ClusterId\\": \\"ceba9b9ea5b924dd0b6726d2de6******\\",\\n \\"AlertGroup\\": -1,\\n \\"PromQL\\": \\"node_memory_MemAvailable_bytes{} / node_memory_MemTotal_bytes{} * 100\\",\\n \\"Duration\\": \\"1\\",\\n \\"Level\\": \\"P2\\",\\n \\"Message\\": \\"命名空间: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / 容器: {{$labels.container}} 内存使用率超过80%, 当前值{{ printf \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"%.2f\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" $value }}%\\",\\n \\"Labels\\": [\\n {\\n \\"Name\\": \\"123\\",\\n \\"Value\\": \\"abc\\"\\n }\\n ],\\n \\"Annotations\\": [\\n {\\n \\"Name\\": \\"123\\",\\n \\"Value\\": \\"abc\\"\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"owner\\",\\n \\"Value\\": \\"John\\"\\n }\\n ],\\n \\"NotifyMode\\": \\"NORMAL_MODE\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateOrUpdateAlertRuleResponse>\\n <RequestId>337B8F7E-0A64-5768-9225-E9B3CF******</RequestId>\\n <AlertRule>\\n <AlertId>5510445</AlertId>\\n <AlertName>arms-test</AlertName>\\n <UserId>1131971649******</UserId>\\n <RegionId>cn-hangzhou</RegionId>\\n <AlertType>APPLICATION_MONITORING_ALERT_RULE</AlertType>\\n <AlertStatus>RUNNING</AlertStatus>\\n <CreatedTime>1641438611000</CreatedTime>\\n <UpdatedTime>1641438611000</UpdatedTime>\\n <Extend>{\\\\\\"alarmContext\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"content\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"报警名称:$报警名称\\\\\\\\\\\\\\\\n筛选条件: $筛选\\\\\\\\\\\\\\\\n报警时间: $报警时间\\\\\\\\\\\\\\\\n报警内容: $报警内容\\\\\\\\\\\\\\\\n注意!:该报警未收到恢复邮件之前,正在持续报警中,24小时后会再次提醒您!\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"subTitle\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\"}\\\\\\",\\\\\\"alertWays\\\\\\":\\\\\\"[0,1]\\\\\\",\\\\\\"contactGroupIds\\\\\\":\\\\\\"381,5075\\\\\\",\\\\\\"notice\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"endTime\\\\\\\\\\\\\\":1480607940000,\\\\\\\\\\\\\\"noticeEndTime\\\\\\\\\\\\\\":1480607940000,\\\\\\\\\\\\\\"noticeStartTime\\\\\\\\\\\\\\":1480521600000,\\\\\\\\\\\\\\"startTime\\\\\\\\\\\\\\":1480521600000}\\\\\\"}</Extend>\\n <NotifyStrategy>ALERT_MANAGER</NotifyStrategy>\\n <Pids>b590lhguqs@40d8deedfa9******</Pids>\\n <AutoAddNewApplication>false</AutoAddNewApplication>\\n <MetricsType>JVM</MetricsType>\\n <AlertRuleContent>\\n <Condition>\\"|\\"</Condition>\\n <AlertRuleItems>\\n <N>1</N>\\n <MetricKey>JVM非堆总使用内存量</MetricKey>\\n <Aggregate>AVG</Aggregate>\\n <Operator>CURRENT_GTE</Operator>\\n <Value>1</Value>\\n </AlertRuleItems>\\n </AlertRuleContent>\\n <Filters>\\n <DimFilters>\\n <FilterKey>rootIp</FilterKey>\\n <FilterOpt>ALL</FilterOpt>\\n <FilterValues>[]</FilterValues>\\n </DimFilters>\\n <CustomSLSFilters>\\n <Key>username</Key>\\n <Opt>=</Opt>\\n <Value>test</Value>\\n <T>null</T>\\n <Show>false</Show>\\n </CustomSLSFilters>\\n <CustomSLSGroupByDimensions>[\\"page\\"]</CustomSLSGroupByDimensions>\\n <CustomSLSWheres>[\\"t like \'%api%\'\\"]</CustomSLSWheres>\\n </Filters>\\n <AlertCheckType>STATIC</AlertCheckType>\\n <ClusterId>ceba9b9ea5b924dd0b6726d2de6******</ClusterId>\\n <AlertGroup>-1</AlertGroup>\\n <PromQL>node_memory_MemAvailable_bytes{} / node_memory_MemTotal_bytes{} * 100</PromQL>\\n <Duration>1</Duration>\\n <Level>P2</Level>\\n <Message>命名空间: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / 容器: {{$labels.container}} 内存使用率超过80%, 当前值{{ printf \\\\\\\\\\\\\\"%.2f\\\\\\\\\\\\\\" $value }}%</Message>\\n <Labels>\\n <Name>123</Name>\\n <Value>abc</Value>\\n </Labels>\\n <Annotations>\\n <Name>123</Name>\\n <Value>abc</Value>\\n </Annotations>\\n </AlertRule>\\n</CreateOrUpdateAlertRuleResponse>","errorExample":""}]', + 'title' => 'CreateOrUpdateAlertRule', + 'requestParamsDescription' => '### **AlertRuleContent** '."\n" + ."\n" + .'```'."\n" + .'{ '."\n" + .' "Condition": "OR",'."\n" + .' "AlertRuleItems": ['."\n" + .' { "Operator": "CURRENT_LTE",'."\n" + .' "MetricKey": "appstat.jvm.threadcount",'."\n" + .' "Value": 1000,'."\n" + .' "Aggregate": "AVG",'."\n" + .' "N": 10,'."\n" + .' "Tolerability": 169'."\n" + .' } '."\n" + .' ] '."\n" + .' }'."\n" + .'```'."\n" + ."\n" + .'- Condition: Trigger logic between multiple alarm conditions.'."\n" + .' - OR: Satisfy any of the following conditions.'."\n" + .' - AND: Satisfy the following conditions at the same time.'."\n" + .'- Operator: Judgment condition of the alarm condition.'."\n" + .' - CURRENT _ GTE: Greater than or equal to'."\n" + .' - CURRENT _ LTE: Less than or equal to'."\n" + .' - PREVIOUS _ UP: Month-on-month increase percentage'."\n" + .' - PREVIOUS _ DOWN: Month-on-month decrease percentage'."\n" + .' - HOH _ UP: Year-on-year increase percentage compared with the previous hour'."\n" + .' - HOH _ DOWN: Year-on-year decrease percentage compared with the previous hour'."\n" + .' - DOD _ UP: Year-on-year increase percentage compared with yesterday'."\n" + .' - DOD _ DOWN: Year-on-year decrease percentage compared with yesterday'."\n" + .' - INTERVAL _ EXCEED: Interval detection. Note: Interval detection does not support multi-condition triggering.'."\n" + .'- Metric Key: The indicator of the specific alarm condition. Different Metrics Types have different corresponding indicators. Please refer to the following description for the corresponding relationship.'."\n" + .'- Value: Alarm condition threshold.'."\n" + .'- Aggregate: Alarm condition aggregation method.'."\n" + .' - AVG: Average'."\n" + .' - SUM: Sum'."\n" + .' - MAX: Maximum value'."\n" + .' - MIN: Minimum value'."\n" + .' - CONTINUOUS: Continuous'."\n" + .' - AVG _ WEIGHTED: Weighted average of error rate'."\n" + .'- N: The last N minutes.'."\n" + .'- Tolerability: Indicates the interval tolerance, with a value between 1 and 200.', + ], + 'DeleteAlertRule' => [ + 'summary' => 'Deletes an alert rule.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AlertId', + 'in' => 'query', + 'schema' => [ + 'title' => '告警规则ID', + 'description' => 'The alert rule ID.'."\n" + ."\n" + .'For more information about how to obtain the ID of an alert rule, see [GetAlertRules](~~2612348~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'IsSuccess' => [ + 'description' => 'Indicates whether the call was successful.'."\n" + ."\n" + .'* `true`: The call was successful.'."\n" + .'* `false`: The call failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteAlertRuleResponse>\\n <RequestId>C21AB7CF-B7AF-410F-BD61-82D1567F****</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</DeleteAlertRuleResponse>","errorExample":""}]', + 'title' => 'DeleteAlertRule', + ], + 'ListAlertEvents' => [ + 'summary' => 'Queries historical alert events.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'AlertName', + 'in' => 'query', + 'schema' => [ + 'title' => '告警名称', + 'description' => 'The name of the alert.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Test-triggered alert'."\n", + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '查询告警发送历史记录的开始时间,时间格式:YYYY-MM-DD HH:mm:ss', + 'description' => 'The start time of the alert events that you want to query. Specify the time in the YYYY-MM-DD HH:mm:ss format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2021-12-19 00:00:00', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '查询告警发送历史记录的开始时间,时间格式:YYYY-MM-DD HH:mm:ss', + 'description' => 'The end time of the alert events that you want to query. Specify the time in the YYYY-MM-DD HH:mm:ss format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2021-12-22 23:59:59', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'title' => '页数', + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'title' => '每页展示数目', + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'MatchingConditions', + 'in' => 'query', + 'schema' => [ + 'title' => '事件匹配规则列表', + 'description' => 'The list of matching conditions.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[ { "value": "ARMS_NOTIFICATION", "key": "clustername", "operator": "eq" } ] },{ "matchingConditions": [ { "value": "test", "key": "alertname", "operator": "eq" } ]', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the alert events. Valid values:'."\n" + ."\n" + .'* Active'."\n" + .'* Silenced'."\n" + .'* Resolved'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Active', + ], + ], + [ + 'name' => 'ShowNotificationPolicies', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to show the associated notification policy.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '2FC13182-B9AF-4E6B-BE51-72669B7C****', + ], + 'PageBean' => [ + 'title' => '返回结构体', + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '24', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The number of the page returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每页展示数目', + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'Events' => [ + 'title' => '告警事件历史信息组', + 'description' => 'The queried historical alert events.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The alert events.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlertName' => [ + 'title' => '告警名称', + 'description' => 'The name of the alert.'."\n", + 'type' => 'string', + 'example' => 'Test-triggered alert'."\n", + ], + 'Severity' => [ + 'title' => '告警等级(critical - p1 , error - p2, warning - p3, page - p4, default - p6)', + 'description' => 'The severity level of the alert. Valid values:'."\n" + ."\n" + .'* critical: P1'."\n" + .'* error: P2'."\n" + .'* warning: P3'."\n" + .'* page: P4'."\n" + .'* default: P6'."\n", + 'type' => 'string', + 'example' => 'critical', + ], + 'Status' => [ + 'title' => '告警状态(Active - 正在发生, Silenced - 被静默, Resolved - 已恢复 )', + 'description' => 'The status of the alert event. Valid values:'."\n" + ."\n" + .'* Active'."\n" + .'* Silenced'."\n" + .'* Resolved'."\n", + 'type' => 'string', + 'example' => 'Active', + ], + 'StartTime' => [ + 'title' => '开始时间', + 'description' => 'The start time.'."\n", + 'type' => 'string', + 'example' => '2021-12-20 17:42:16', + ], + 'EndTime' => [ + 'title' => '结束时间', + 'description' => 'The end time.'."\n", + 'type' => 'string', + 'example' => '2021-12-20 17:42:16', + ], + 'ReceiveTime' => [ + 'title' => '事件接受时间', + 'description' => 'The time when the alert event was received.'."\n", + 'type' => 'string', + 'example' => '2021-12-20 17:42:16', + ], + 'IntegrationName' => [ + 'title' => '集成名称', + 'description' => 'The name of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'Custom integration'."\n", + ], + 'IntegrationType' => [ + 'title' => '集成类型', + 'description' => 'The type of the alert integration.'."\n", + 'type' => 'string', + 'example' => 'CUSTOM', + ], + 'GeneratorURL' => [ + 'title' => '事件地址', + 'description' => 'The URL of the alert event.'."\n", + 'type' => 'string', + 'example' => 'https://xxx.xx/', + ], + 'Description' => [ + 'title' => '事件描述', + 'description' => 'The description of the alert event.'."\n", + 'type' => 'string', + 'example' => 'Test'."\n", + ], + 'Annotations' => [ + 'title' => '注释列表', + 'description' => 'The annotations.'."\n", + 'type' => 'string', + 'example' => '[{\\"Name\\":\\"annotation-a\\",\\"Value\\":\\"annotation a value\\"}]', + ], + 'Labels' => [ + 'title' => '标签列表', + 'description' => 'The tags.'."\n", + 'type' => 'string', + 'example' => '[{\\"name\\":\\"severity\\",\\"value\\":\\"error\\"}]', + ], + 'Alarms' => [ + 'title' => '关联告警', + 'description' => 'The associated alerts.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the alert.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlarmId' => [ + 'title' => '告警ID', + 'description' => 'The ID of the alert.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '77444', + ], + 'AlarmName' => [ + 'title' => '告警名称', + 'description' => 'The name of the alert.'."\n", + 'type' => 'string', + 'example' => 'Test-triggered alert'."\n", + ], + 'State' => [ + 'title' => '告警状态(0-待处理,1-处理中,2-已解决)', + 'description' => 'The status of the alert. Valid values:'."\n" + ."\n" + .'* 0: The alert is pending.'."\n" + .'* 1: The alert is being handled.'."\n" + .'* 2: The alert is cleared.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'CreateTime' => [ + 'title' => '告警创建时间', + 'description' => 'The time when the alert was created.'."\n", + 'type' => 'string', + 'example' => '2021-12-20 07:10:18', + ], + ], + ], + ], + 'HandlerName' => [ + 'description' => 'The user who handled the alert.'."\n", + 'type' => 'string', + 'example' => 'Tom'."\n", + ], + 'NotificationPolicies' => [ + 'description' => 'The associated notification policies.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The notification policies.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '646093', + ], + 'Name' => [ + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'P1 alert notification policy'."\n", + ], + ], + ], + ], + 'TriggerCount' => [ + 'description' => 'The number of times the event is triggered.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2FC13182-B9AF-4E6B-BE51-72669B7C****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 24,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"Events\\": [\\n {\\n \\"AlertName\\": \\"测试触发的告警\\",\\n \\"Severity\\": \\"critical\\",\\n \\"Status\\": \\"Active\\",\\n \\"StartTime\\": \\"2021-12-20 17:42:16\\",\\n \\"EndTime\\": \\"2021-12-20 17:42:16\\",\\n \\"ReceiveTime\\": \\"2021-12-20 17:42:16\\",\\n \\"IntegrationName\\": \\"自定义集成\\",\\n \\"IntegrationType\\": \\"CUSTOM\\",\\n \\"GeneratorURL\\": \\"https://xxx.xx/\\",\\n \\"Description\\": \\"测试\\",\\n \\"Annotations\\": \\"[{\\\\\\\\\\\\\\"Name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"annotation-a\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"annotation a value\\\\\\\\\\\\\\"}]\\",\\n \\"Labels\\": \\"[{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"severity\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"error\\\\\\\\\\\\\\"}]\\",\\n \\"Alarms\\": [\\n {\\n \\"AlarmId\\": 77444,\\n \\"AlarmName\\": \\"测试触发的告警\\",\\n \\"State\\": 0,\\n \\"CreateTime\\": \\"2021-12-20 07:10:18\\"\\n }\\n ],\\n \\"HandlerName\\": \\"张三\\",\\n \\"NotificationPolicies\\": [\\n {\\n \\"Id\\": 646093,\\n \\"Name\\": \\"P1告警通知策略\\"\\n }\\n ],\\n \\"TriggerCount\\": 10\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'ListAlertEvents', + ], + 'GetAlertRules' => [ + 'summary' => 'Queries alert rules.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '109306', + 'abilityTreeNodes' => [ + 'FEATUREarms20UGKV', + ], + ], + 'parameters' => [ + [ + 'name' => 'AlertIds', + 'in' => 'query', + 'schema' => [ + 'title' => '告警规则ID', + 'description' => 'The unique IDs of alert rules.'."\n" + ."\n" + .'* If you do not specify this parameter, the API operation does not filter alert rules based on their IDs.'."\n" + .'* If you specify this parameter, the API operation returns only the information of the specified alert rules. Other filter conditions also take effect.'."\n" + ."\n" + .'> When you call the GetAlertRules operation, you can specify other request parameters to obtain the AlertIds parameter from the response. Then, you can specify the AlertIds parameter to query the specified alert rules.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '["12345"]', + ], + ], + [ + 'name' => 'AlertNames', + 'in' => 'query', + 'schema' => [ + 'title' => '告警规则名称', + 'description' => 'The names of alert rules. When you create alert rules of the new version, you cannot specify duplicate names. However, existing alert rules may have duplicate names. Therefore, the **AlertName** parameter does not uniquely identify an alert rule.'."\n" + ."\n" + .'* If you do not specify this parameter, the API operation does not filter alert rules based on their names.'."\n" + .'* If you specify this parameter, the API operation returns only the information of the specified alert rules. Other filter conditions also take effect.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '["test"]', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'title' => '地域', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AlertType', + 'in' => 'query', + 'schema' => [ + 'title' => '告警规则类型(必填)', + 'description' => 'The type of the alert rule. This parameter is required for the new version of Alert Management. Valid values:'."\n" + ."\n" + .'* APPLICATION_MONITORING_ALERT_RULE: alert rule for Application Monitoring'."\n" + .'* BROWSER_MONITORING_ALERT_RULE: alert rule for Browser Monitoring'."\n" + .'* PROMETHEUS_MONITORING_ALERT_RULE: alert rule for Managed Service for Prometheus'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'APPLICATION_MONITORING_ALERT_RULE', + 'enum' => [ + 'BROWSER_MONITORING_ALERT_RULE', + 'APPLICATION_MONITORING_ALERT_RULE', + 'PROMETHEUS_MONITORING_ALERT_RULE', + 'browser monitoring alert', + 'application monitoring alert', + 'prometheus monitoring alert', + ], + ], + ], + [ + 'name' => 'AlertStatus', + 'in' => 'query', + 'schema' => [ + 'title' => '告警规则运行状态', + 'description' => 'The status of the alert rule. Valid values:'."\n" + ."\n" + .'* RUNNING'."\n" + .'* STOPPED'."\n" + .'* PAUSED'."\n" + ."\n" + .'> The PAUSED state indicates an abnormal and paused alert rule. This may result from excessively large threshold values or deleted associated clusters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'RUNNING', + 'enum' => [ + 'STOPPED', + 'RUNNING', + 'PAUSED', + ], + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the monitored cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ceba9b9ea5b924dd0b6726d2de6******'."\n", + ], + ], + [ + 'name' => 'ProductCode', + 'in' => 'query', + 'schema' => [ + 'description' => 'You do not need to configure this parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'null', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'title' => '页数', + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'title' => '每一页大小', + 'description' => 'The number of alert rules to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'type', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'prod', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 1, + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '337B8F7E-0A64-5768-9225-E9B3CF******', + ], + 'PageBean' => [ + 'title' => '分页对象', + 'description' => 'The returned pages.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of queried alert rules.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The number of pages returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每一页大小', + 'description' => 'The number of alert rules returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'AlertRules' => [ + 'title' => '告警规则列表', + 'description' => 'The alert rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of each alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlertId' => [ + 'description' => 'The alert rule ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5730***', + ], + 'AlertName' => [ + 'title' => '告警规则名称', + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'arms-test', + ], + 'UserId' => [ + 'title' => '用户UID', + 'description' => 'The ID of the Alibaba Cloud account.'."\n", + 'type' => 'string', + 'example' => '1131971649******', + ], + 'RegionId' => [ + 'title' => '地域', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'AlertType' => [ + 'title' => '告警规则类型', + 'description' => 'The type of the alert rule. Valid values:'."\n" + ."\n" + .'* APPLICATION_MONITORING_ALERT_RULE: alert rule for Application Monitoring'."\n" + .'* BROWSER_MONITORING_ALERT_RULE: alert rule for Browser Monitoring'."\n" + .'* PROMETHEUS_MONITORING_ALERT_RULE: Prometheus alert rule'."\n", + 'type' => 'string', + 'example' => 'APPLICATION_MONITORING_ALERT_RULE', + ], + 'AlertStatus' => [ + 'title' => '告警规则状态', + 'description' => 'The status of the alert rule. Valid values:'."\n" + ."\n" + .'* RUNNING'."\n" + .'* STOPPED'."\n" + .'* PAUSED'."\n" + ."\n" + .'> The PAUSED state indicates that the alert rule is abnormal and has been suspended. This may be because the specified threshold value is excessively large, or the associated cluster has been deleted.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'CreatedTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the alert rule was created. The value is a timestamp. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1640333981000', + ], + 'UpdatedTime' => [ + 'title' => '更新时间', + 'description' => 'The time when the alert rule was updated. The value is a timestamp. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1640333981000', + ], + 'Extend' => [ + 'title' => '扩展字段', + 'description' => 'The extended fields.'."\n" + ."\n" + .'> For existing Application Monitoring alert rules, the fields contain information such as contacts, alert template, and notification content.'."\n", + 'type' => 'string', + 'example' => '{\\\\"alarmContext\\\\":\\\\"{\\\\\\\\\\"content\\\\\\\\\\":\\\\\\\\Alert name: $Alert name\\\\\\\\\\\\nFilter condition: $Filter condition\\\\\\\\\\\\nAlert time: $Alert time\\\\\\\\\\\\nAlert content: $Alert content\\\\\\\\\\\\nNote: The alert persists before you receive an email that reminds you to clear the alert. You will be reminded of the alert again 24 hours later. \\\\\\\\\\",\\\\\\\\\\"subTitle\\\\\\\\\\":\\\\\\\\\\"\\\\\\\\\\"}\\\\",\\\\"alertWays\\\\":\\\\"\\[0,1]\\\\",\\\\"contactGroupIds\\\\":\\\\"381,5075\\\\",\\\\"notice\\\\":\\\\"{\\\\\\\\\\"endTime\\\\\\\\\\":1480607940000,\\\\\\\\\\"noticeEndTime\\\\\\\\\\":1480607940000,\\\\\\\\\\"noticeStartTime\\\\\\\\\\":1480521600000,\\\\\\\\\\"startTime\\\\\\\\\\":1480521600000}\\\\"}'."\n", + ], + 'NotifyStrategy' => [ + 'title' => '通知策略ID', + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'ALERT_MANAGER', + ], + 'Pids' => [ + 'title' => '应用监控/前端监控-告警关联应用ID', + 'description' => 'The process ID (PID) of the application to which the Application Monitoring or Browser Monitoring alert rule is applied.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The PID of the application.'."\n", + 'type' => 'string', + 'example' => '["b590lhguqs@40d8deedfa9******"]', + ], + ], + 'AutoAddNewApplication' => [ + 'title' => '应用监控/前端监控-是否开启新创建应用追加到此告警规则', + 'description' => 'Indicates whether the alert rule is applied to new applications that are created in Application Monitoring or Browser Monitoring. Valid values:'."\n" + ."\n" + .'* `true`: yes'."\n" + .'* `false`: no'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'MetricsType' => [ + 'title' => '应用监控/前端监控-告警指标类型', + 'description' => 'The metric type of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'string', + 'example' => 'JVM', + ], + 'AlertRuleContent' => [ + 'title' => '应用监控/前端监控-告警规则内容', + 'description' => 'The content of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'Condition' => [ + 'title' => '应用监控/前端监控-多个告警条件触发逻辑', + 'description' => 'The relationship between multiple alert conditions specified for the Application Monitoring or Browser Monitoring alert rule. Valid values:'."\n" + ."\n" + .'* OR: The alert rule is triggered if one of the conditions is met.'."\n" + .'* AND: The alert rule is triggered if all the conditions are met.'."\n", + 'type' => 'string', + 'example' => 'OR', + ], + 'AlertRuleItems' => [ + 'title' => '应用监控/前端监控-告警条件', + 'description' => 'The trigger conditions of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the alert condition.'."\n", + 'type' => 'object', + 'properties' => [ + 'N' => [ + 'description' => 'The last N minutes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + 'title' => '', + ], + 'MetricKey' => [ + 'title' => '应用监控/前端监控-具体告警条件的指标', + 'description' => 'The metric of the alert condition.'."\n", + 'type' => 'string', + 'example' => 'appstat.jvm.non_heap_used', + ], + 'Aggregate' => [ + 'title' => '应用监控/前端监控-聚合方式', + 'description' => 'The aggregation method of the alert condition. Valid values:'."\n" + ."\n" + .'* AVG: calculates the average value'."\n" + .'* SUM: calculates the total value'."\n" + .'* MAX: selects the maximum value'."\n" + .'* MIN: selects the minimum value'."\n", + 'type' => 'string', + 'example' => 'AVG', + ], + 'Operator' => [ + 'title' => '应用监控/前端监控-判断条件', + 'description' => 'The operator that is used to compare the metric value with the threshold. Valid values:'."\n" + ."\n" + .'* CURRENT_GTE: greater than or equal to'."\n" + .'* CURRENT_LTE: less than or equal to'."\n" + .'* PREVIOUS_UP: increase in percentage compared with the previous period'."\n" + .'* PREVIOUS_DOWN: decrease in percentage compared with the previous period'."\n" + .'* HOH_UP: increase in percentage compared with the same period in the previous hour'."\n" + .'* HOH_DOWN: decrease in percentage compared with the same period in the previous hour'."\n" + .'* DOD_UP: increase in percentage compared with the same period in the previous day'."\n" + .'* DOD_DOWN: decrease in percentage compared with the same period in the previous day'."\n", + 'type' => 'string', + 'example' => 'CURRENT_GTE', + ], + 'Value' => [ + 'title' => '应用监控/前端监控-阈值', + 'description' => 'The threshold of the alert condition.'."\n", + 'type' => 'string', + 'example' => '1', + ], + ], + ], + ], + ], + ], + 'Filters' => [ + 'title' => '应用监控/前端监控-告警条件-过滤项', + 'description' => 'The filter conditions of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'DimFilters' => [ + 'description' => 'The information about each filter condition of the Application Monitoring or Browser Monitoring alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the filter condition.'."\n", + 'type' => 'object', + 'properties' => [ + 'FilterKey' => [ + 'description' => 'The key of the filter condition.'."\n", + 'type' => 'string', + 'example' => 'rootIp', + ], + 'FilterOpt' => [ + 'description' => 'The logical operator of the filter condition.'."\n", + 'type' => 'string', + 'example' => 'ALL', + ], + 'FilterValues' => [ + 'description' => 'The details of the filter condition.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The parameters of the filter condition.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + ], + ], + ], + ], + 'CustomSLSFilters' => [ + 'description' => 'The custom filter condition of the Browser Monitoring alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the custom filter condition.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the filter condition.'."\n", + 'type' => 'string', + 'example' => 'username', + ], + 'Opt' => [ + 'description' => 'The logical operator of the filter condition. Valid values:'."\n" + ."\n" + .'* \\=: equal to'."\n" + .'* not: not equal to'."\n", + 'type' => 'string', + 'example' => '=', + ], + 'Value' => [ + 'description' => 'The value of the filter condition.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'T' => [ + 'description' => 'The log type of Browser Monitoring. This field is not included in other filter conditions.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Show' => [ + 'description' => 'Indicates whether this filter condition is displayed on the frontend.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + ], + ], + ], + 'CustomSLSGroupByDimensions' => [ + 'description' => 'The information about the aggregation dimension.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The value of the aggregation dimension.'."\n", + 'type' => 'string', + 'example' => '["page"]', + ], + ], + 'CustomSLSWheres' => [ + 'description' => 'The details of the custom filter condition.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The value of the custom filter condition.'."\n", + 'type' => 'string', + 'example' => '["t like \'%api%\'"]', + ], + ], + ], + ], + 'AlertCheckType' => [ + 'title' => 'Prometheus告警-告警检查类型', + 'description' => 'The alert check type of the Prometheus alert rule.'."\n" + ."\n" + .'* STATIC: static threshold'."\n" + .'* CUSTOM: custom PromQL'."\n", + 'type' => 'string', + 'example' => 'STATIC', + ], + 'ClusterId' => [ + 'title' => 'Prometheus告警-集群ID', + 'description' => 'The cluster ID of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'example' => 'ceba9b9ea5b924dd0b6726d2de6******', + ], + 'AlertGroup' => [ + 'title' => 'Prometheus告警-告警分组ID', + 'description' => 'The alert contact group ID of the Prometheus alert rule.'."\n" + ."\n" + .'* \\-1: custom PromQL'."\n" + .'* 1: Kubernetes load'."\n" + .'* 15: Kubernetes node'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PromQL' => [ + 'title' => 'Prometheus告警-PromQL语句', + 'description' => 'The PromQL statement of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'example' => 'node_memory_MemAvailable_bytes{} / node_memory_MemTotal_bytes{} * 100', + ], + 'Duration' => [ + 'title' => 'Prometheus告警-持续时间', + 'description' => 'The duration of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'Level' => [ + 'title' => 'Prometheus告警-等级', + 'description' => 'The severity level of the Prometheus alert rule.'."\n" + ."\n" + .'* P1: Alert notifications are sent for major issues that affect the availability of core business, have a huge impact, and may lead to serious consequences.'."\n" + .'* P2: Alert notifications are sent for service errors that affect the system availability with relatively limited impact.'."\n" + .'* P3: Alert notifications are sent for issues that may cause service errors or negative effects, or alert notifications for services that are relatively less important.'."\n" + .'* P4: Alert notifications are sent for low-priority issues that do not affect your business.'."\n" + .'* Default: Alert notifications are sent regardless of alert levels.'."\n", + 'type' => 'string', + 'example' => 'P2', + ], + 'Message' => [ + 'title' => 'Prometheus告警-告警内容', + 'description' => 'The alert message of the Prometheus alert rule.'."\n", + 'type' => 'string', + 'example' => 'Namespace: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / Container: {{$labels.container}} CPU usage: {{$labels.metrics_params_opt_label_value}} {{$labels.metrics_params_value}}%. Current value: {{ printf "%.2f" $value }}%'."\n", + ], + 'Labels' => [ + 'title' => 'Prometheus告警-Label', + 'description' => 'The tags of the Prometheus alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '键', + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => '123', + ], + 'Value' => [ + 'title' => '值', + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + ], + ], + ], + 'Annotations' => [ + 'title' => 'Prometheus告警-Annotation', + 'description' => 'The annotations of the Prometheus alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The annotation struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '键', + 'description' => 'The key of the annotation.'."\n", + 'type' => 'string', + 'example' => '123', + ], + 'Value' => [ + 'title' => '值', + 'description' => 'The value of the annotation.'."\n", + 'type' => 'string', + 'example' => 'abc', + ], + ], + ], + ], + 'Tags' => [ + 'description' => 'The tags of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'type', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'prod', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"337B8F7E-0A64-5768-9225-E9B3CF******\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"AlertRules\\": [\\n {\\n \\"AlertId\\": 0,\\n \\"AlertName\\": \\"arms-test\\",\\n \\"UserId\\": \\"1131971649******\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AlertType\\": \\"APPLICATION_MONITORING_ALERT_RULE\\",\\n \\"AlertStatus\\": \\"RUNNING\\",\\n \\"CreatedTime\\": 1640333981000,\\n \\"UpdatedTime\\": 1640333981000,\\n \\"Extend\\": \\"{\\\\\\\\\\\\\\"alarmContext\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"content\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"报警名称:$报警名称\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n筛选条件: $筛选\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n报警时间: $报警时间\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n报警内容: $报警内容\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n注意!:该报警未收到恢复邮件之前,正在持续报警中,24小时后会再次提醒您!\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"subTitle\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"alertWays\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"[0,1]\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"contactGroupIds\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"381,5075\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"notice\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"{\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"endTime\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":1480607940000,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"noticeEndTime\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":1480607940000,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"noticeStartTime\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":1480521600000,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"startTime\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\":1480521600000}\\\\\\\\\\\\\\"}\\",\\n \\"NotifyStrategy\\": \\"ALERT_MANAGER\\",\\n \\"Pids\\": [\\n \\"[\\\\\\"b590lhguqs@40d8deedfa9******\\\\\\"]\\"\\n ],\\n \\"AutoAddNewApplication\\": false,\\n \\"MetricsType\\": \\"JVM\\",\\n \\"AlertRuleContent\\": {\\n \\"Condition\\": \\"OR\\",\\n \\"AlertRuleItems\\": [\\n {\\n \\"N\\": 1,\\n \\"MetricKey\\": \\"appstat.jvm.non_heap_used\\",\\n \\"Aggregate\\": \\"AVG\\",\\n \\"Operator\\": \\"CURRENT_GTE\\",\\n \\"Value\\": \\"1\\"\\n }\\n ]\\n },\\n \\"Filters\\": {\\n \\"DimFilters\\": [\\n {\\n \\"FilterKey\\": \\"rootIp\\",\\n \\"FilterOpt\\": \\"ALL\\",\\n \\"FilterValues\\": [\\n \\"null\\"\\n ]\\n }\\n ],\\n \\"CustomSLSFilters\\": [\\n {\\n \\"Key\\": \\"username\\",\\n \\"Opt\\": \\"=\\",\\n \\"Value\\": \\"test\\",\\n \\"T\\": \\"null\\",\\n \\"Show\\": false\\n }\\n ],\\n \\"CustomSLSGroupByDimensions\\": [\\n \\"[\\\\\\"page\\\\\\"]\\"\\n ],\\n \\"CustomSLSWheres\\": [\\n \\"[\\\\\\"t like \'%api%\'\\\\\\"]\\"\\n ]\\n },\\n \\"AlertCheckType\\": \\"STATIC\\",\\n \\"ClusterId\\": \\"ceba9b9ea5b924dd0b6726d2de6******\\",\\n \\"AlertGroup\\": 1,\\n \\"PromQL\\": \\"node_memory_MemAvailable_bytes{} / node_memory_MemTotal_bytes{} * 100\\",\\n \\"Duration\\": \\"1\\",\\n \\"Level\\": \\"P2\\",\\n \\"Message\\": \\"命名空间: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / 容器: {{$labels.container}} CPU使用率{{$labels.metrics_params_opt_label_value}} {{$labels.metrics_params_value}}%, 当前值{{ printf \\\\\\"%.2f\\\\\\" $value }}%\\",\\n \\"Labels\\": [\\n {\\n \\"Name\\": \\"123\\",\\n \\"Value\\": \\"abc\\"\\n }\\n ],\\n \\"Annotations\\": [\\n {\\n \\"Name\\": \\"123\\",\\n \\"Value\\": \\"abc\\"\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"type\\",\\n \\"Value\\": \\"prod\\"\\n }\\n ]\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetAlertRulesResponse>\\n <PageBean>\\n <AlertRules>\\n <AlertName>test</AlertName>\\n <CreatedTime>1641438611000</CreatedTime>\\n <AlertRuleContent>\\n <Condition>OR</Condition>\\n <AlertRuleItems>\\n <Operator>CURRENT_GTE</Operator>\\n <MetricKey>appstat.jvm.non_heap_used</MetricKey>\\n <Value>1</Value>\\n <Aggregate>AVG</Aggregate>\\n <N>1</N>\\n </AlertRuleItems>\\n </AlertRuleContent>\\n <NotifyStrategy>ALERT_MANAGER</NotifyStrategy>\\n <Pids>19f4e346-8712-43b7-b19d-6f230a******</Pids>\\n <AlertType>APPLICATION_MONITORING_ALERT_RULE</AlertType>\\n <AlertId>12345</AlertId>\\n <Filters>\\n <DimFilters>\\n <FilterOpt>ALL</FilterOpt>\\n <FilterKey>rootIp</FilterKey>\\n </DimFilters>\\n </Filters>\\n <UserId>10983*********</UserId>\\n <AlertStatus>RUNNING</AlertStatus>\\n <AutoAddNewApplication>false</AutoAddNewApplication>\\n <RegionId>cn-hangzhou</RegionId>\\n <UpdatedTime>1641438611000</UpdatedTime>\\n </AlertRules>\\n <Size>20</Size>\\n <Total>1</Total>\\n <Page>1</Page>\\n </PageBean>\\n <RequestId>19AF18E1-DAEB-5F4C-BC8B-E3F475******</RequestId>\\n</GetAlertRulesResponse>","errorExample":""}]', + 'title' => 'GetAlertRules', + 'extraInfo' => '### More examples'."\n" + ."\n" + .'### Obtain the Browser Monitoring alert rules of the China (Hangzhou) region'."\n" + ."\n" + .'**Sample request**'."\n" + ."\n" + .' http(s)://[Endpoint]/?Action=GetAlertRules'."\n" + .' &AlertIds=["12345"]'."\n" + .' &AlertNames=["Default alert rule for Browser Monitoring"]'."\n" + .' &RegionId=cn-hangzhou'."\n" + .' &AlertType=BROWSER_MONITORING_ALERT_RULE'."\n" + .' &AlertStatus=STOPPED'."\n" + .' &Page=1'."\n" + .' &Size=20'."\n" + .' &Common request parameters'."\n" + ."\n" + .'**Sample response**'."\n" + ."\n" + .' {'."\n" + .' "PageBean": {'."\n" + .' "AlertRules": ['."\n" + .' {'."\n" + .' "AlertId": 12345,'."\n" + .' "AlertName": "Default alert rule for Browser Monitoring",'."\n" + .' "AlertRuleContent": {'."\n" + .' "AlertRuleItems": ['."\n" + .' {'."\n" + .' "Aggregate": "AVG",'."\n" + .' "MetricKey": "webstat.jsError.rate",'."\n" + .' "N": 10,'."\n" + .' "Operator": "CURRENT_GTE",'."\n" + .' "Value": 0.2'."\n" + .' },'."\n" + .' {'."\n" + .' "Aggregate": "SUM",'."\n" + .' "MetricKey": "webstat.jsError.count",'."\n" + .' "N": 10,'."\n" + .' "Operator": "CURRENT_GTE",'."\n" + .' "Value": 20.0'."\n" + .' }'."\n" + .' ],'."\n" + .' "Condition": "AND"'."\n" + .' },'."\n" + .' "AlertStatus": "STOPPED",'."\n" + .' "AlertType": "BROWSER_MONITORING_ALERT_RULE",'."\n" + .' "AutoAddNewApplication": false,'."\n" + .' "CreatedTime": 1625824851000,'."\n" + .' "Extend": "{\\"alarmContext\\":\\"{\\\\\\"content\\\\\\":\\\\\\"Alert name: $Alert name\\\\\\\\\\\\\\\\nFilter condition: $Filter condition\\\\\\\\\\\\\\\\nAlert time: $Alert time\\\\\\\\\\\\\\\\nAlert content: $Alert content\\\\\\\\\\\\\\\\nNote: The alert persists before you receive an email that reminds you to clear the alert. You will be reminded of the alert again 24 hours later. \\\\\\",\\\\\\"subTitle\\\\\\":\\\\\\"\\\\\\"}\\",\\"alertWays\\":\\"[0,1]\\",\\"contactGroupIds\\":\\"299\\",\\"notice\\":\\"{\\\\\\"endTime\\\\\\":1480607940000,\\\\\\"noticeEndTime\\\\\\":1480607940000,\\\\\\"noticeStartTime\\\\\\":1480521600000,\\\\\\"startTime\\\\\\":1480521600000}\\"}",'."\n" + .' "Filters": {'."\n" + .' "DimFilters": ['."\n" + .' {'."\n" + .' "FilterKey": "page",'."\n" + .' "FilterOpt": "ALL",'."\n" + .' "FilterValues": ['."\n" + .' null'."\n" + .' ]'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "MetricsType": "page",'."\n" + .' "Pids": ['."\n" + .' "aokcdqn3ly@6a6c*******"'."\n" + .' ],'."\n" + .' "RegionId": "cn-hangzhou",'."\n" + .' "UpdatedTime": 1625824851000,'."\n" + .' "UserId": "1084*********"'."\n" + .' }'."\n" + .' ],'."\n" + .' "Size": 20,'."\n" + .' "Total": 1,'."\n" + .' "Page": 1'."\n" + .' },'."\n" + .' "RequestId": "A87CE2E7-8115-5A9C-8F4B-7C9DD7******"'."\n" + .' }'."\n" + ."\n" + .'### Obtain the Prometheus alert rules of the China (Hangzhou) region'."\n" + ."\n" + .'**Sample request**'."\n" + ."\n" + .' http(s)://[Endpoint]/?Action=GetAlertRules'."\n" + .' &AlertIds=["12345"]'."\n" + .' &AlertNames=["Disk usage of the Elasticsearch node exceeds 85%"]'."\n" + .' &RegionId=cn-hangzhou'."\n" + .' &AlertType=PROMETHEUS_MONITORING_ALERT_RULE'."\n" + .' &AlertStatus=RUNNING'."\n" + .' &Page=1'."\n" + .' &Size=20'."\n" + .' &Common request parameters'."\n" + ."\n" + .'**Sample response**'."\n" + ."\n" + .' {'."\n" + .' "PageBean": {'."\n" + .' "AlertRules": ['."\n" + .' {'."\n" + .' "AlertName": "Disk usage of the Elasticsearch node exceeds 85%",'."\n" + .' "CreatedTime": 1643188668035,'."\n" + .' "Message": "Cluster ID: {{$labels.cluster_id}} Node IP address: {{$labels.node_id}} Disk usage Current value {{ printf \\"%.2f\\" $value }}%\\nFor more information, see https://elasticsearch.console.aliyun.com/{{$labels.region}}/instances/{{$labels.cluster_id}}/base",'."\n" + .' "ClusterId": "n9p9****",'."\n" + .' "PromQL": "arms_cms_es_node_disk_utilization > 85",'."\n" + .' "AlertCheckType": "CUSTOM",'."\n" + .' "AlertRuleContent": {},'."\n" + .' "NotifyStrategy": "ALERT_MANAGER",'."\n" + .' "Duration": 10,'."\n" + .' "Labels": ['."\n" + .' {'."\n" + .' "Value": "cms_es",'."\n" + .' "Name": "_aliyun_cloud_product"'."\n" + .' }'."\n" + .' ],'."\n" + .' "AlertType": "PROMETHEUS_MONITORING_ALERT_RULE",'."\n" + .' "AlertId": 12345,'."\n" + .' "AlertGroup": -1,'."\n" + .' "Filters": {},'."\n" + .' "Annotations": ['."\n" + .' {'."\n" + .' "Value": "Disk usage of the Elasticsearch node",'."\n" + .' "Name": "_aliyun_display_name"'."\n" + .' },'."\n" + .' {'."\n" + .' "Value": "Cluster ID: {{$labels.cluster_id}} Node IP address: {{$labels.node_id}} Disk usage Current value {{ printf \\"%.2f\\" $value }}%\\nFor more information, see https://elasticsearch.console.aliyun.com/{{$labels.region}}/instances/{{$labels.cluster_id}}/base",'."\n" + .' "Name": "message"'."\n" + .' },'."\n" + .' {'."\n" + .' "Value": "arms_cms_es_node_disk_utilization",'."\n" + .' "Name": "_aliyun_display_promql"'."\n" + .' }'."\n" + .' ],'."\n" + .' "Extend": "",'."\n" + .' "UserId": "10983*********",'."\n" + .' "AlertStatus": "RUNNING",'."\n" + .' "Level": "P6",'."\n" + .' "RegionId": "cn-hangzhou",'."\n" + .' "UpdatedTime": 1643188668035'."\n" + .' }'."\n" + .' ],'."\n" + .' "Size": 20,'."\n" + .' "Total": 1,'."\n" + .' "Page": 1'."\n" + .' },'."\n" + .' "RequestId": "A87CE2E7-8115-5A9C-8F4B-7C9DD7******"'."\n" + .' }'."\n", + ], + 'CreateOrUpdateContact' => [ + 'summary' => 'Creates or modifies an alert contact.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactId', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警联系人ID', + 'description' => 'The ID of the alert contact.'."\n" + ."\n" + .'* If you do not specify this parameter, a new alert contact is created.'."\n" + .'* If you specify this parameter, the specified alert contact is modified.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'ContactName', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警联系人名称', + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'JohnDoe', + ], + ], + [ + 'name' => 'Phone', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警联系人手机号码', + 'description' => 'The mobile number of the alert contact.'."\n" + ."\n" + .'> You must specify at least one of the **Phone** and **Email** parameters. Each mobile number or email address can be used for only one alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1381111****', + ], + ], + [ + 'name' => 'Email', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警联系人邮箱', + 'description' => 'The email address of the alert contact.'."\n" + ."\n" + .'> You must specify at least one of the **Phone** and **Email** parameters. Each mobile number or email address can be used for only one alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'ReissueSendNotice', + 'in' => 'formData', + 'schema' => [ + 'title' => '电话通知失败补发类型:0. 不补发 1. 重复拨打一次电话 2. 发送短信通知 3. 使用全局默认值(当前为不补发)', + 'description' => 'The operation that you want to perform if phone calls fail to be answered. Valid values:'."\n" + ."\n" + .'* 0: No operation is performed.'."\n" + .'* 1: A phone call is made again.'."\n" + .'* 2: A text message is sent.'."\n" + .'* 3 (default value): The global default value is used.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3', + ], + ], + [ + 'name' => 'IsEmailVerify', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether the email address is verified.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'DingRobotUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The webhook URL of the DingTalk chatbot.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=69d4e0******', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'CorpUserId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the alert contact that is shown to the enterprise when the contact is mentioned with the at sign (@) by a third-party instant messaging (IM) tool.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'A123221', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'E9C9DA3D-10FE-472E-9EEF-2D0A3E41****', + ], + 'AlertContact' => [ + 'description' => 'The object of the alert contact.'."\n", + 'type' => 'object', + 'properties' => [ + 'ContactId' => [ + 'title' => '告警联系人ID', + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'ContactName' => [ + 'title' => '告警联系人名称', + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'example' => 'JohnDoe', + ], + 'Phone' => [ + 'title' => '告警联系人手机号', + 'description' => 'The mobile number of the alert contact.'."\n", + 'type' => 'string', + 'example' => '1381111****', + ], + 'Email' => [ + 'title' => '告警联系人邮箱', + 'description' => 'The email address of the alert contact.'."\n", + 'type' => 'string', + 'example' => '[email protected]', + ], + 'IsVerify' => [ + 'title' => '手机号码验证标识', + 'description' => 'Indicates whether the mobile number was verified. Valid values:'."\n" + ."\n" + .'* `false` (default value): No'."\n" + .'* `true`: Yes'."\n" + ."\n" + .'You can call the **SendTTSVerifyLink** operation to verify the mobile number of an alert contact. Only verified mobile numbers can be specified in a notification policy to receive phone calls.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'ReissueSendNotice' => [ + 'title' => '电话通知失败补发类型:0. 不补发 1. 重复拨打一次电话 2. 发送短信通知 3. 使用全局默认值(当前为不补发)', + 'description' => 'The operation that you want to perform if phone calls fail to be answered. Valid values: 0: No operation is performed. 1: A phone call is made again. 2: A text message is sent. 3 (default value): The global default value is used.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3', + ], + 'isEmailVerify' => [ + 'description' => 'Indicates whether the email address was verified.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'DingRobotUrl' => [ + 'description' => 'The webhook URL of the DingTalk chatbot.'."\n", + 'type' => 'string', + 'example' => 'https://test1.com', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"E9C9DA3D-10FE-472E-9EEF-2D0A3E41****\\",\\n \\"AlertContact\\": {\\n \\"ContactId\\": 123,\\n \\"ContactName\\": \\"JohnDoe\\",\\n \\"Phone\\": \\"1381111****\\",\\n \\"Email\\": \\"[email protected]\\",\\n \\"IsVerify\\": false,\\n \\"ReissueSendNotice\\": 3,\\n \\"isEmailVerify\\": true,\\n \\"DingRobotUrl\\": \\"https://test1.com\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateOrUpdateContactResponse>\\n <RequestId>E9C9DA3D-10FE-472E-9EEF-2D0A3E41****</RequestId>\\n <AlertContact>\\n <ContactId>123</ContactId>\\n <ContactName>JohnDoe</ContactName>\\n <Phone>1381111****</Phone>\\n <Email>[email protected]</Email>\\n <IsVerify>false</IsVerify>\\n </AlertContact>\\n</CreateOrUpdateContactResponse>","errorExample":""}]', + 'title' => 'CreateOrUpdateContact', + ], + 'SendTTSVerifyLink' => [ + 'summary' => 'Sends a text message to an alert contact to verify the mobile number of the alert contact.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactId', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警联系人ID', + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + [ + 'name' => 'Phone', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警联系人手机号码', + 'description' => 'The mobile number of the alert contact.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1381111****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '21E85B16-75A6-429A-9F65-8AAC9A54****', + ], + 'IsSuccess' => [ + 'description' => 'Indicates whether the text message was sent.'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"21E85B16-75A6-429A-9F65-8AAC9A54****\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<SendTTSVerifyLinkResponse>\\n <RequestId>21E85B16-75A6-429A-9F65-8AAC9A54****</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</SendTTSVerifyLinkResponse>","errorExample":""}]', + 'title' => 'SendTTSVerifyLink', + 'description' => 'After you receive the text message, verify the mobile number as prompted. Before you can specify a mobile phone number in a notification policy, you must verify the mobile phone number.'."\n", + ], + 'DeleteContact' => [ + 'summary' => 'Deletes alert contacts.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactId', + 'in' => 'query', + 'schema' => [ + 'title' => '告警联系人ID', + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'IsSuccess' => [ + 'description' => 'Indicates whether the alert contact is deleted. Valid values:'."\n" + ."\n" + .'* `true`: The alert contact is deleted.'."\n" + .'* `false`: The alert contact is not deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteContactResponse>\\n <RequestId>C21AB7CF-B7AF-410F-BD61-82D1567F****</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</DeleteContactResponse>","errorExample":""}]', + 'title' => 'DeleteContact', + ], + 'DescribeContacts' => [ + 'summary' => 'Queries alert contacts.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '118543', + 'abilityTreeNodes' => [ + 'FEATUREarmsK5DKZM', + ], + ], + 'parameters' => [ + [ + 'name' => 'ContactName', + 'in' => 'query', + 'schema' => [ + 'title' => '告警联系人名称', + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'John Doe', + ], + ], + [ + 'name' => 'Phone', + 'in' => 'query', + 'schema' => [ + 'title' => '告警联系人手机号码', + 'description' => 'The mobile number of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1381111*****', + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'title' => '告警联系人邮箱', + 'description' => 'The email address of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of alert contacts to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'ContactIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact that you want to query. Separate multiple contact IDs with spaces.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123,321', + ], + ], + [ + 'name' => 'Verbose', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to return redundant information.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '21E85B16-75A6-429A-9F65-8AAC9A54****', + ], + 'PageBean' => [ + 'title' => '分页对象', + 'description' => 'The objects that were returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of alert contacts.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每一页大小', + 'description' => 'The number of alert contacts returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'AlertContacts' => [ + 'title' => '告警联系人列表', + 'description' => 'The alert contacts.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ContactId' => [ + 'title' => '告警联系人ID', + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'ContactName' => [ + 'title' => '告警联系人名称', + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'example' => 'John Doe', + ], + 'Phone' => [ + 'title' => '告警联系人手机号码', + 'description' => 'The mobile number of the alert contact.'."\n", + 'type' => 'string', + 'example' => '1381111****', + ], + 'Email' => [ + 'title' => '告警联系人邮箱', + 'description' => 'The email address of the alert contact.'."\n", + 'type' => 'string', + 'example' => '[email protected]', + ], + 'IsVerify' => [ + 'title' => '手机号码是否验证标识', + 'description' => 'Indicates whether the mobile number was verified. Valid values:'."\n" + ."\n" + .'* `false`: no'."\n" + .'* `true`: yes'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'ReissueSendNotice' => [ + 'title' => '电话通知失败补发类型:0. 不补发 1. 重复拨打一次电话 2. 发送短信通知 3. 使用全局默认值(当前为不补发)', + 'description' => 'The operation that you want to perform if phone calls fail to be answered. Valid values:'."\n" + ."\n" + .'* 0: No operation is performed.'."\n" + .'* 1: A phone call is made again.'."\n" + .'* 2: A text message is sent.'."\n" + .'* 3 (default value): The global default value is used.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3', + ], + 'IsEmailVerify' => [ + 'description' => 'Indicates whether the email address was verified.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'ArmsContactId' => [ + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100147', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"21E85B16-75A6-429A-9F65-8AAC9A54****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"AlertContacts\\": [\\n {\\n \\"ContactId\\": 123,\\n \\"ContactName\\": \\"John Doe\\",\\n \\"Phone\\": \\"1381111****\\",\\n \\"Email\\": \\"[email protected]\\",\\n \\"IsVerify\\": false,\\n \\"ReissueSendNotice\\": 3,\\n \\"IsEmailVerify\\": true,\\n \\"ArmsContactId\\": 100147\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeContactsResponse>\\n <RequestId>21E85B16-75A6-429A-9F65-8AAC9A54****</RequestId>\\n <PageBean>\\n <Total>1</Total>\\n <Page>1</Page>\\n <Size>20</Size>\\n <AlertContacts>\\n <ContactId>123</ContactId>\\n <ContactName>John Doe</ContactName>\\n <Phone>1381111****</Phone>\\n <Email>[email protected]</Email>\\n <IsVerify>false</IsVerify>\\n </AlertContacts>\\n </PageBean>\\n</DescribeContactsResponse>","errorExample":""}]', + 'title' => 'DescribeContacts', + ], + 'CreateOrUpdateContactGroup' => [ + 'summary' => 'Creates or modifies an alert contact group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警联系人组ID', + 'description' => 'The ID of the alert contact group.'."\n" + ."\n" + .'* If you do not specify this parameter, an alert contact group is created.'."\n" + .'* If you specify this parameter, the specified alert contact group is modified.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'ContactGroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警联系人组名称', + 'description' => 'The name of the alert contact group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'TestGroup', + ], + ], + [ + 'name' => 'ContactIds', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警联系人ids', + 'description' => 'The ID of the contact that you want to add to the contact group. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[1,2,3]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9319A57D-2D9E-472A-B69B-CF3CD16D****', + ], + 'AlertContactGroup' => [ + 'description' => 'The information about the alert contact group.'."\n", + 'type' => 'object', + 'properties' => [ + 'ContactGroupId' => [ + 'title' => '告警联系人组ID', + 'description' => 'The ID of the alert contact group.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'ContactGroupName' => [ + 'title' => '告警联系人组名称', + 'description' => 'The name of the alert contact group.'."\n", + 'type' => 'string', + 'example' => 'TestGroup', + ], + 'ContactIds' => [ + 'title' => '告警联系人ids', + 'description' => 'The IDs of the contacts that are included in the alert contact group.'."\n", + 'type' => 'string', + 'example' => '[1,2,3]', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9319A57D-2D9E-472A-B69B-CF3CD16D****\\",\\n \\"AlertContactGroup\\": {\\n \\"ContactGroupId\\": 123,\\n \\"ContactGroupName\\": \\"TestGroup\\",\\n \\"ContactIds\\": \\"[1,2,3]\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateOrUpdateContactGroupResponse>\\n <RequestId>9319A57D-2D9E-472A-B69B-CF3CD16D****</RequestId>\\n <AlertContactGroup>\\n <ContactGroupId>123</ContactGroupId>\\n <ContactGroupName>TestGroup</ContactGroupName>\\n <ContactIds>[1,2,3]</ContactIds>\\n </AlertContactGroup>\\n</CreateOrUpdateContactGroupResponse>","errorExample":""}]', + 'title' => 'CreateOrUpdateContactGroup', + ], + 'DeleteContactGroup' => [ + 'summary' => 'Deletes an alert contact group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactGroupId', + 'in' => 'query', + 'schema' => [ + 'title' => '告警联系人组ID', + 'description' => 'The ID of the alert contact group.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'IsSuccess' => [ + 'description' => 'Indicates whether the alert contact group was deleted. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteContactGroupResponse>\\n <RequestId>C21AB7CF-B7AF-410F-BD61-82D1567F****</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</DeleteContactGroupResponse>","errorExample":""}]', + 'title' => 'DeleteContactGroup', + ], + 'DescribeContactGroups' => [ + 'summary' => 'Queries an alert contact group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '118624', + 'abilityTreeNodes' => [ + 'FEATUREarmsK5DKZM', + ], + ], + 'parameters' => [ + [ + 'name' => 'ContactGroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '告警联系人组名称', + 'description' => 'The name of the alert contact group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestGroup', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of alert contact groups displayed on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'IsDetail', + 'in' => 'query', + 'schema' => [ + 'title' => '是否返回联系人分组中包含的所有联系人。默认不返回所有联系人。', + 'description' => 'Specifies whether to return all the alert contacts in the queried alert contact group. Valid values:'."\n" + ."\n" + .'* `false`'."\n" + .'* `true`'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'GroupIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '12345', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '4D6C358A-A58B-4F4B-94CE-F5AAF023****', + ], + 'PageBean' => [ + 'title' => '分页对象', + 'description' => 'The objects that were returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of alert contact groups.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每一页数目', + 'description' => 'The number of alert contact groups displayed on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'AlertContactGroups' => [ + 'title' => '告警联系人组列表', + 'description' => 'The name of the alert contact group.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ContactGroupId' => [ + 'title' => '告警联系人组ID', + 'description' => 'The ID of the alert contact group.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'ContactGroupName' => [ + 'title' => '告警联系人组名称', + 'description' => 'The name of the alert contact group.'."\n", + 'type' => 'string', + 'example' => 'TestGroup', + ], + 'Contacts' => [ + 'title' => '联系人对象', + 'description' => 'The contact information. If the **IsDetail** parameter is set to `false`, no **contact** information is displayed.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ContactId' => [ + 'title' => '联系人ID', + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '456', + ], + 'ContactName' => [ + 'title' => '联系人名称', + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'example' => 'John Doe', + ], + 'Phone' => [ + 'title' => '联系人手机号码', + 'description' => 'The mobile number of the alert contact.'."\n", + 'type' => 'string', + 'example' => '1381111****', + ], + 'Email' => [ + 'title' => '联系人邮箱', + 'description' => 'The email address of the alert contact.'."\n", + 'type' => 'string', + 'example' => '[email protected]', + ], + 'ArmsContactId' => [ + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100117', + ], + ], + ], + ], + 'ArmsContactGroupId' => [ + 'description' => 'The ID of the alert contact group.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '83261', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4D6C358A-A58B-4F4B-94CE-F5AAF023****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"AlertContactGroups\\": [\\n {\\n \\"ContactGroupId\\": 123,\\n \\"ContactGroupName\\": \\"TestGroup\\",\\n \\"Contacts\\": [\\n {\\n \\"ContactId\\": 456,\\n \\"ContactName\\": \\"John Doe\\",\\n \\"Phone\\": \\"1381111****\\",\\n \\"Email\\": \\"[email protected]\\",\\n \\"ArmsContactId\\": 100117\\n }\\n ],\\n \\"ArmsContactGroupId\\": 83261\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeContactGroupsResponse>\\n <RequestId>4D6C358A-A58B-4F4B-94CE-F5AAF023****</RequestId>\\n <PageBean>\\n <Total>1</Total>\\n <Page>1</Page>\\n <Size>20</Size>\\n <AlertContactGroups>\\n <ContactGroupId>123</ContactGroupId>\\n <ContactGroupName>TestGroup</ContactGroupName>\\n <Contacts>\\n <ContactId>456</ContactId>\\n <ContactName>John Doe</ContactName>\\n <Phone>1381111****</Phone>\\n <Email>[email protected]</Email>\\n </Contacts>\\n </AlertContactGroups>\\n </PageBean>\\n</DescribeContactGroupsResponse>","errorExample":""}]', + 'title' => 'DescribeContactGroups', + ], + 'CreateOrUpdateIMRobot' => [ + 'summary' => 'Creates or updates an IM chatbot.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '118628', + 'abilityTreeNodes' => [ + 'FEATUREarmsK5DKZM', + ], + ], + 'parameters' => [ + [ + 'name' => 'RobotId', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警机器人ID', + 'description' => 'The ID of the IM chatbot.'."\n" + .'> If you do not specify the parameter, a new IM chatbot is created.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'RobotName', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警机器人名称', + 'description' => 'The name of the IM chatbot.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Chatbot name'."\n", + ], + ], + [ + 'name' => 'Type', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警机器人类型:dingding/wechat', + 'description' => 'The type of the IM chatbot. Valid values:'."\n" + ."\n" + .'* `dingding`: DingTalk chatbot'."\n" + .'* `wechat`: WeCom chatbot'."\n" + .'* `feishu`: Lark chatbot'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'dingding', + ], + ], + [ + 'name' => 'RobotAddress', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警机器人地址', + 'description' => 'The webhook URL of the IM chatbot.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=e1a049121******', + ], + ], + [ + 'name' => 'DailyNoc', + 'in' => 'formData', + 'schema' => [ + 'title' => '是否发送每日统计信息', + 'description' => 'Specifies whether to send daily statistics. Valid values:'."\n" + ."\n" + .'* `false` (default): Daily statistics are not sent.'."\n" + .'* `true`: Daily statistics are sent. If you set the value to `true`, the **DailyNocTime** parameter is required.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'DailyNocTime', + 'in' => 'formData', + 'schema' => [ + 'title' => '每日统计发送时间', + 'description' => 'The points in time at which the daily statistics are sent. Separate multiple points in time with commas (,). The points in time are in the HH:SS format. The information that ARMS sends at the specified points in time includes the total number of alerts generated on the current day, the number of cleared alerts, and the number of alerts to be cleared.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '09:30,17:00', + ], + ], + [ + 'name' => 'DingSignKey', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The signature key of DingTalk. If you specify a signature key, DingTalk authentication is performed by using the signature key. If you do not specify a signature key, a whitelist is used for authentication by default. The keyword of the whitelist is **Alert**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '******', + ], + ], + [ + 'name' => 'Token', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The token required to enable the Outgoing feature.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1656558719183be1245ab44********', + ], + ], + [ + 'name' => 'EnableOutgoing', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to enable the Outgoing feature.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'CardTemplate', + 'in' => 'formData', + 'schema' => [ + 'title' => '卡片模版配置信息', + 'description' => 'The configurations of the alert card template. For more information about the parameters in the template, see the following section.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "button": [ "claim", "close", "follow", "send_itsm", "block", "unResolvedIncident" ], "field": [ { "fieldName": "alarmName", "visible": true }, { "fieldName": "notificationPolicy", "visible": true }, { "fieldName": "alarmContent", "visible": true }, { "fieldName": "alarmTime", "visible": true }, { "fieldName": "seriesChart", "visible": true }, { "fieldName": "includeEvent", "visible": true }, { "fieldName": "assigned", "visible": true }, { "fieldName": "similarAlarm", "visible": true }, { "fieldName": "operator", "visible": true } ] }', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '16AF921B-8187-489F-9913-43C808B4****', + ], + 'AlertRobot' => [ + 'description' => 'The information about the IM chatbot.'."\n", + 'type' => 'object', + 'properties' => [ + 'RobotId' => [ + 'title' => '告警机器人ID', + 'description' => 'The ID of the IM chatbot.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'RobotName' => [ + 'title' => '告警机器人名称', + 'description' => 'The name of the IM chatbot.'."\n", + 'type' => 'string', + 'example' => 'Chatbot name'."\n", + ], + 'Type' => [ + 'title' => '告警机器人类型:dingding/wechat', + 'description' => 'The type of the IM chatbot. Valid values:'."\n" + ."\n" + .'* `dingding`: DingTalk chatbot'."\n" + .'* `wechat`: WeCom chatbot'."\n", + 'type' => 'string', + 'example' => 'dingding', + ], + 'RobotAddress' => [ + 'title' => '告警机器人地址', + 'description' => 'The webhook URL of the IM chatbot.'."\n", + 'type' => 'string', + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=e1a049121******', + ], + 'DailyNoc' => [ + 'title' => '是否发送每日统计信息', + 'description' => 'Indicates whether daily statistics are sent. Valid values:'."\n" + ."\n" + .'* `false` (default): Daily statistics are not sent.'."\n" + .'* `true`: Daily statistics are sent.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'DailyNocTime' => [ + 'title' => '每日统计发送时间', + 'description' => 'The point in time at which the daily statistics are sent. The information that ARMS sends at the specified points in time includes the total number of alerts generated on the current day, the number of cleared alerts, and the number of alerts to be cleared.'."\n", + 'type' => 'string', + 'example' => '09:30,17:00', + ], + 'Token' => [ + 'description' => 'The token required to enable the Outgoing feature.'."\n", + 'type' => 'string', + 'example' => '1656558719183be1245ab44********'."\n", + ], + 'EnableOutgoing' => [ + 'description' => 'Indicates whether the Outgoing feature is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'CardTemplate' => [ + 'title' => '卡片模版配置信息', + 'description' => 'The configurations of the alert card template.'."\n", + 'type' => 'string', + 'example' => '{ "button": [ "claim", "close", "follow", "send_itsm", "block", "unResolvedIncident" ], "field": [ { "fieldName": "alarmName", "visible": true }, { "fieldName": "notificationPolicy", "visible": true }, { "fieldName": "alarmContent", "visible": true }, { "fieldName": "alarmTime", "visible": true }, { "fieldName": "seriesChart", "visible": true }, { "fieldName": "includeEvent", "visible": true }, { "fieldName": "assigned", "visible": true }, { "fieldName": "similarAlarm", "visible": true }, { "fieldName": "operator", "visible": true } ] }', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"16AF921B-8187-489F-9913-43C808B4****\\",\\n \\"AlertRobot\\": {\\n \\"RobotId\\": 123,\\n \\"RobotName\\": \\"robot名称\\",\\n \\"Type\\": \\"dingding\\",\\n \\"RobotAddress\\": \\"https://oapi.dingtalk.com/robot/send?access_token=e1a049121******\\",\\n \\"DailyNoc\\": true,\\n \\"DailyNocTime\\": \\"09:30,17:00\\",\\n \\"Token\\": \\"1656558719183be1245ab44********\\\\n\\",\\n \\"EnableOutgoing\\": true,\\n \\"CardTemplate\\": \\"{ \\\\\\"button\\\\\\": [ \\\\\\"claim\\\\\\", \\\\\\"close\\\\\\", \\\\\\"follow\\\\\\", \\\\\\"send_itsm\\\\\\", \\\\\\"block\\\\\\", \\\\\\"unResolvedIncident\\\\\\" ], \\\\\\"field\\\\\\": [ { \\\\\\"fieldName\\\\\\": \\\\\\"alarmName\\\\\\", \\\\\\"visible\\\\\\": true }, { \\\\\\"fieldName\\\\\\": \\\\\\"notificationPolicy\\\\\\", \\\\\\"visible\\\\\\": true }, { \\\\\\"fieldName\\\\\\": \\\\\\"alarmContent\\\\\\", \\\\\\"visible\\\\\\": true }, { \\\\\\"fieldName\\\\\\": \\\\\\"alarmTime\\\\\\", \\\\\\"visible\\\\\\": true }, { \\\\\\"fieldName\\\\\\": \\\\\\"seriesChart\\\\\\", \\\\\\"visible\\\\\\": true }, { \\\\\\"fieldName\\\\\\": \\\\\\"includeEvent\\\\\\", \\\\\\"visible\\\\\\": true }, { \\\\\\"fieldName\\\\\\": \\\\\\"assigned\\\\\\", \\\\\\"visible\\\\\\": true }, { \\\\\\"fieldName\\\\\\": \\\\\\"similarAlarm\\\\\\", \\\\\\"visible\\\\\\": true }, { \\\\\\"fieldName\\\\\\": \\\\\\"operator\\\\\\", \\\\\\"visible\\\\\\": true } ] }\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateOrUpdateIMRobotResponse>\\n <RequestId>16AF921B-8187-489F-9913-43C808B4****</RequestId>\\n <AlertRobot>\\n <RobotId>123</RobotId>\\n <RobotName>robot名称</RobotName>\\n <Type>dingding</Type>\\n <RobotAddress>https://oapi.dingtalk.com/robot/send?access_token=e1a049121******</RobotAddress>\\n <DailyNoc>true</DailyNoc>\\n <DailyNocTime>09:30,17:00</DailyNocTime>\\n </AlertRobot>\\n</CreateOrUpdateIMRobotResponse>","errorExample":""}]', + 'title' => 'CreateOrUpdateIMRobot', + 'requestParamsDescription' => '### CardTemplate parameter description'."\n" + ."\n" + .'Sample template:'."\n" + ."\n" + .' {'."\n" + .' "field": ['."\n" + .' {'."\n" + .' "fieldName": "alarmName",'."\n" + .' "visible": false'."\n" + .' },'."\n" + .' {'."\n" + .' "fieldName": "notificationPolicy",'."\n" + .' "visible": true'."\n" + .' },'."\n" + .' {'."\n" + .' "fieldName": "alarmContent",'."\n" + .' "visible": true'."\n" + .' },'."\n" + .' {'."\n" + .' "fieldName": "alarmTime",'."\n" + .' "visible": true'."\n" + .' },'."\n" + .' {'."\n" + .' "fieldName": "seriesChart",'."\n" + .' "visible": true'."\n" + .' },'."\n" + .' {'."\n" + .' "fieldName": "includeEvent",'."\n" + .' "visible": true'."\n" + .' },'."\n" + .' {'."\n" + .' "fieldName": "assigned",'."\n" + .' "visible": true'."\n" + .' },'."\n" + .' {'."\n" + .' "fieldName": "similarAlarm",'."\n" + .' "visible": true'."\n" + .' },'."\n" + .' {'."\n" + .' "fieldName": "operator",'."\n" + .' "visible": true'."\n" + .' }'."\n" + .' ],'."\n" + .' "button": ['."\n" + .' "claim",'."\n" + .' "close",'."\n" + .' "block",'."\n" + .' "send_itsm",'."\n" + .' "unResolvedIncident",'."\n" + .' "follow"'."\n" + .' ]'."\n" + .' }'."\n" + ."\n" + .'* fieldName: the name of the field in the alert card. The following fields are included:'."\n" + ."\n" + .' * notificationPolicy: notification policy'."\n" + .' * alarmName: alert name'."\n" + .' * alarmContent: alert content'."\n" + .' * AlarmTime: the time when the alert is triggered'."\n" + .' * includeEvent: the number of events.'."\n" + .' * assigned: the users to which notifications are sent'."\n" + .' * operator: the user who handles the alert'."\n" + .' * similarAlarm: the last similar alert'."\n" + .' * seriesChart: the trend chart of the alert metrics'."\n" + ."\n" + .'* visible: specifies whether the content of the corresponding field on the alert card is visible.'."\n" + ."\n" + .' * true: visible'."\n" + .' * false: invisible'."\n" + ."\n" + .'* button: the setting button in the card. The parameter order corresponds to the card button order. The following buttons are available:'."\n" + ."\n" + .' * claim: claims alerts'."\n" + .' * close: clears alerts'."\n" + .' * follow: follows alerts'."\n" + .' * send_itsm: pushes alerts'."\n" + .' * block: blocks alerts'."\n" + .' * unResolvedIncident: unclears alerts'."\n", + ], + 'DeleteIMRobot' => [ + 'summary' => 'Deletes an instant messaging (IM) chatbot.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RobotId', + 'in' => 'query', + 'schema' => [ + 'title' => '告警机器人ID', + 'description' => 'The ID of the IM chatbot.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID. You can use the ID to find logs and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'IsSuccess' => [ + 'description' => 'Indicates whether the call was successful.'."\n" + ."\n" + .'* `true`: The call was successful.'."\n" + .'* `false`: The call failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteIMRobotResponse>\\n <RequestId>C21AB7CF-B7AF-410F-BD61-82D1567F****</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</DeleteIMRobotResponse>","errorExample":""}]', + 'title' => 'DeleteIMRobot', + ], + 'DescribeIMRobots' => [ + 'summary' => 'Queries a list of IM chatbots.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RobotName', + 'in' => 'query', + 'schema' => [ + 'title' => '告警机器人名称', + 'description' => 'The name of the IM chatbot.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Chatbot name'."\n", + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of IM chatbots to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'RobotIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The chatbot IDs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4D6C358A-A58B-4F4B-94CE-F5AAF023****', + ], + 'PageBean' => [ + 'title' => '分页对象', + 'description' => 'The returned objects.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of queried IM chatbots.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每一页数目', + 'description' => 'The number of IM chatbots returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'AlertIMRobots' => [ + 'description' => 'The queried IM chatbots.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RobotId' => [ + 'title' => '告警机器人ID', + 'description' => 'The ID of the IM chatbot.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'Type' => [ + 'title' => '告警机器人类型', + 'description' => 'The type of the IM chatbot. Valid values:'."\n" + ."\n" + .'* `dingding`: DingTalk chatbot'."\n" + .'* `wechat`: WeCom chatbot'."\n", + 'type' => 'string', + 'example' => 'dingding', + ], + 'RobotName' => [ + 'title' => '告警机器人名称', + 'description' => 'The name of the IM chatbot.'."\n", + 'type' => 'string', + 'example' => 'Chatbot name'."\n", + ], + 'RobotAddr' => [ + 'title' => '告警机器人地址', + 'description' => 'The webhook URL of the IM chatbot.'."\n", + 'type' => 'string', + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=e1a049121******', + ], + 'DailyNoc' => [ + 'title' => '是否发送每日统计信息', + 'description' => 'Indicates whether daily statistics are sent. Valid values:'."\n" + ."\n" + .'* `false` (default): Daily statistics are not sent.'."\n" + .'* `true`: Daily statistics are sent.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'DailyNocTime' => [ + 'title' => '每日统计发送时间', + 'description' => 'The point in time at which the daily statistics are sent. The information that ARMS sends at the specified points in time includes the total number of alerts generated on the current day, the number of cleared alerts, and the number of alerts to be cleared.'."\n", + 'type' => 'string', + 'example' => '09:30,17:30', + ], + 'DingSignKey' => [ + 'description' => 'The signature key of DingTalk. If you specify a signature key, DingTalk authentication is performed by using the signature key. If you do not specify a signature key, a whitelist is used for authentication by default. The keyword of the whitelist is **Alert**.'."\n", + 'type' => 'string', + 'example' => '******', + ], + 'CreateTime' => [ + 'description' => 'The time when the IM chatbot was created.'."\n", + 'type' => 'string', + 'example' => '2023-01-16 17:21:48', + ], + 'DispatchRules' => [ + 'description' => 'The notification policies.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'id' => [ + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12345', + ], + 'name' => [ + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'Notification policy test'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4D6C358A-A58B-4F4B-94CE-F5AAF023****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"AlertIMRobots\\": [\\n {\\n \\"RobotId\\": 123,\\n \\"Type\\": \\"dingding\\",\\n \\"RobotName\\": \\"robot名称\\",\\n \\"RobotAddr\\": \\"https://oapi.dingtalk.com/robot/send?access_token=e1a049121******\\",\\n \\"DailyNoc\\": true,\\n \\"DailyNocTime\\": \\"09:30,17:30\\",\\n \\"DingSignKey\\": \\"******\\",\\n \\"CreateTime\\": \\"2023-01-16 17:21:48\\",\\n \\"DispatchRules\\": [\\n {\\n \\"id\\": 12345,\\n \\"name\\": \\"通知策略测试\\"\\n }\\n ]\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeIMRobotsResponse>\\n <RequestId>4D6C358A-A58B-4F4B-94CE-F5AAF023****</RequestId>\\n <PageBean>\\n <Total>1</Total>\\n <Page>1</Page>\\n <Size>20</Size>\\n <AlertIMRobots>\\n <RobotId>123</RobotId>\\n <Type>dingding</Type>\\n <RobotName>robot名称</RobotName>\\n <RobotAddr>https://oapi.dingtalk.com/robot/send?access_token=e1a049121******</RobotAddr>\\n <DailyNoc>true</DailyNoc>\\n <DailyNocTime>09:30,17:30</DailyNocTime>\\n </AlertIMRobots>\\n </PageBean>\\n</DescribeIMRobotsResponse>","errorExample":""}]', + 'title' => 'DescribeIMRobots', + ], + 'CreateOrUpdateWebhookContact' => [ + 'summary' => 'Creates or modifies a webhook alert contact.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'WebhookId', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警webhook ID', + 'description' => 'The ID of the webhook alert contact.'."\n" + ."\n" + .'* If you do not specify this parameter, a new webhook alert contact is created.'."\n" + .'* If you specify this parameter, the specified webhook alert contact is modified.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'WebhookName', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警webhook名称', + 'description' => 'The name of the webhook alert contact.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Webhook alert'."\n", + ], + ], + [ + 'name' => 'Method', + 'in' => 'formData', + 'schema' => [ + 'title' => 'Http请求方法', + 'description' => 'The HTTP request method.'."\n" + ."\n" + .'* Post'."\n" + .'* Get'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Post', + ], + ], + [ + 'name' => 'Url', + 'in' => 'formData', + 'schema' => [ + 'title' => 'Url', + 'description' => 'The URL of the HTTP request **method**.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=e1a049121******', + ], + ], + [ + 'name' => 'BizHeaders', + 'in' => 'formData', + 'schema' => [ + 'title' => 'http请求头', + 'description' => 'The HTTP request headers.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"Content-Type":"application/json;charset=utf-8"}]', + ], + ], + [ + 'name' => 'BizParams', + 'in' => 'formData', + 'schema' => [ + 'title' => 'http请求参数', + 'description' => 'The parameters in the HTTP request.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"content":"mike"}]', + ], + ], + [ + 'name' => 'Body', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警通知模板', + 'description' => 'The notification template that is sent when an alert is triggered. This parameter is required if the **Method** parameter is set to **Post**. You can use the `$content` placeholder to specify the notification content. The content cannot exceed 500 characters in length. For more information, see [Variable description of a notification template](~~251834~~).\\\\'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }}", "Application name":"{{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}", "Notification policy":"{{ .dispatchRuleName }}", "Alert time":"{{ .startTime }}", "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}" }'."\n", + ], + ], + [ + 'name' => 'RecoverBody', + 'in' => 'formData', + 'schema' => [ + 'title' => '告警恢复模板', + 'description' => 'The notification template that is sent when an alert is resolved. This parameter is required if the **Method** parameter is set to **Post**. You can use the `$content` placeholder to specify the notification content. The content cannot exceed 500 characters in length. For more information, see [Variable description of a notification template](~~251834~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }}", "Application name":"{{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}", "Notification policy":"{{ .dispatchRuleName }}", "Recovery time":"{{ .endTime }}", "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}" }'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '16AF921B-8187-489F-9913-43C808B4****', + ], + 'WebhookContact' => [ + 'description' => 'The returned webhook alert contact.'."\n", + 'type' => 'object', + 'properties' => [ + 'WebhookId' => [ + 'title' => '告警webhook ID', + 'description' => 'The ID of the webhook alert contact.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'WebhookName' => [ + 'title' => '告警webhook名称', + 'description' => 'The name of the webhook alert contact.'."\n", + 'type' => 'string', + 'example' => 'Webhook alert'."\n", + ], + 'Webhook' => [ + 'description' => 'The information about the webhook alert contact.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'title' => 'Http请求方法', + 'description' => 'The HTTP request method.'."\n" + ."\n" + .'* Post'."\n" + .'* Get'."\n", + 'type' => 'string', + 'example' => 'Post', + ], + 'Url' => [ + 'title' => 'url', + 'description' => 'The URL of the request method.'."\n", + 'type' => 'string', + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=e1a049121******', + ], + 'BizHeaders' => [ + 'title' => 'http请求头', + 'description' => 'The HTTP request headers.'."\n", + 'type' => 'string', + 'example' => '[{"Content-Type":"application/json;charset=utf-8"}]', + ], + 'BizParams' => [ + 'title' => 'http请求参数', + 'description' => 'The parameters in the HTTP request.'."\n", + 'type' => 'string', + 'example' => '[{"content":"mike"}]', + ], + 'Body' => [ + 'title' => '告警通知模板', + 'description' => 'The alert notification template.'."\n", + 'type' => 'string', + 'example' => '{ "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }}", "Application name":"{{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}", "Notification policy":"{{ .dispatchRuleName }}", "Alert time":"{{ .startTime }}", "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}" }'."\n", + ], + 'RecoverBody' => [ + 'title' => '告警恢复模板', + 'description' => 'The notification template for clearing alerts.'."\n", + 'type' => 'string', + 'example' => '{ "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }}", "Application name":"{{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}", "Notification policy":"{{ .dispatchRuleName }}", "Recovery time":"{{ .endTime }}", "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}" }'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"16AF921B-8187-489F-9913-43C808B4****\\",\\n \\"WebhookContact\\": {\\n \\"WebhookId\\": 123,\\n \\"WebhookName\\": \\"Webhook告警\\",\\n \\"Webhook\\": {\\n \\"Method\\": \\"Post\\",\\n \\"Url\\": \\"https://oapi.dingtalk.com/robot/send?access_token=e1a049121******\\",\\n \\"BizHeaders\\": \\"[{\\\\\\"Content-Type\\\\\\":\\\\\\"application/json;charset=utf-8\\\\\\"}]\\",\\n \\"BizParams\\": \\"[{\\\\\\"content\\\\\\":\\\\\\"mike\\\\\\"}]\\",\\n \\"Body\\": \\"{ \\\\\\"告警名称\\\\\\":\\\\\\"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}\\\\\\", \\\\\\"集群名称\\\\\\":\\\\\\"{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }}\\\\\\", \\\\\\"应用名称\\\\\\":\\\\\\"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}\\\\\\", \\\\\\"通知策略\\\\\\":\\\\\\"{{ .dispatchRuleName }}\\\\\\", \\\\\\"告警时间\\\\\\":\\\\\\"{{ .startTime }}\\\\\\", \\\\\\"告警内容\\\\\\":\\\\\\"{{ for .alerts }} {{ .annotations.message }} {{ end }}\\\\\\" }\\",\\n \\"RecoverBody\\": \\"{ \\\\\\"告警名称\\\\\\":\\\\\\"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}\\\\\\", \\\\\\"集群名称\\\\\\":\\\\\\"{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }}\\\\\\", \\\\\\"应用名称\\\\\\":\\\\\\"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}\\\\\\", \\\\\\"通知策略\\\\\\":\\\\\\"{{ .dispatchRuleName }}\\\\\\", \\\\\\"恢复时间\\\\\\":\\\\\\"{{ .endTime }}\\\\\\", \\\\\\"告警内容\\\\\\":\\\\\\"{{ for .alerts }} {{ .annotations.message }} {{ end }}\\\\\\" }\\"\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateOrUpdateWebhookContactResponse>\\n <RequestId>16AF921B-8187-489F-9913-43C808B4****</RequestId>\\n <WebhookContact>\\n <WebhookId>123</WebhookId>\\n <WebhookName>Webhook告警</WebhookName>\\n <Webhook>\\n <Method>Post</Method>\\n <Url>https://oapi.dingtalk.com/robot/send?access_token=e1a049121******</Url>\\n <BizHeaders>[{\\"Content-Type\\":\\"application/json;charset=utf-8\\"}]</BizHeaders>\\n <BizParams>[{\\"content\\":\\"mike\\"}]</BizParams>\\n <Body>{ \\"告警名称\\":\\"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}\\", \\"集群名称\\":\\"{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }}\\", \\"应用名称\\":\\"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}\\", \\"通知策略\\":\\"{{ .dispatchRuleName }}\\", \\"告警时间\\":\\"{{ .startTime }}\\", \\"告警内容\\":\\"{{ for .alerts }} {{ .annotations.message }} {{ end }}\\" }</Body>\\n <RecoverBody>{ \\"告警名称\\":\\"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}\\", \\"集群名称\\":\\"{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }}\\", \\"应用名称\\":\\"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}\\", \\"通知策略\\":\\"{{ .dispatchRuleName }}\\", \\"恢复时间\\":\\"{{ .endTime }}\\", \\"告警内容\\":\\"{{ for .alerts }} {{ .annotations.message }} {{ end }}\\" }</RecoverBody>\\n </Webhook>\\n </WebhookContact>\\n</CreateOrUpdateWebhookContactResponse>","errorExample":""}]', + 'title' => 'CreateOrUpdateWebhookContact', + ], + 'DeleteWebhookContact' => [ + 'summary' => 'Deletes a webhook alert contact.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'WebhookId', + 'in' => 'query', + 'schema' => [ + 'title' => '告警webhookID', + 'description' => 'The ID of the webhook alert contact.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + 'IsSuccess' => [ + 'description' => 'Indicates whether the webhook alert contact was deleted.'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteWebhookContactResponse>\\n <RequestId>C21AB7CF-B7AF-410F-BD61-82D1567F****</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</DeleteWebhookContactResponse>","errorExample":""}]', + 'title' => 'DeleteWebhookContact', + ], + 'DescribeWebhookContacts' => [ + 'summary' => 'Queries the list of webhook alert contacts.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '118619', + 'abilityTreeNodes' => [ + 'FEATUREarmsK5DKZM', + ], + ], + 'parameters' => [ + [ + 'name' => 'WebhookName', + 'in' => 'query', + 'schema' => [ + 'title' => '告警webhook名称', + 'description' => 'The name of the webhook alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Webhook name'."\n", + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of alert contacts displayed on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'ContactIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '4D6C358A-A58B-4F4B-94CE-F5AAF023****', + ], + 'PageBean' => [ + 'title' => '分页对象', + 'description' => 'The returned objects.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of alert contacts.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每一页数目', + 'description' => 'The number of alert contacts displayed on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'WebhookContacts' => [ + 'title' => '告警webhook联系人列表', + 'description' => 'The list of webhook alert contacts.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'WebhookId' => [ + 'title' => '告警webhookID', + 'description' => 'The ID of the webhook alert contact.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'WebhookName' => [ + 'title' => '告警webhook名称', + 'description' => 'The name of the webhook alert contact.'."\n", + 'type' => 'string', + 'example' => 'Webhook name'."\n", + ], + 'Webhook' => [ + 'title' => 'webhook对象', + 'description' => 'The details of the webhook alert contact.'."\n", + 'type' => 'object', + 'properties' => [ + 'Method' => [ + 'title' => 'http请求方式', + 'description' => 'The HTTP request method.'."\n" + ."\n" + .'* Get'."\n" + .'* Post'."\n", + 'type' => 'string', + 'example' => 'Post', + ], + 'Url' => [ + 'title' => 'Url', + 'description' => 'The URL of the request method.'."\n", + 'type' => 'string', + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=91f2f6****', + ], + 'BizHeaders' => [ + 'title' => 'HTTP请求头', + 'description' => 'The header of the HTTP request.'."\n", + 'type' => 'object', + 'example' => '[{"Content-Type":"application/json"}]', + ], + 'BizParams' => [ + 'title' => 'HTTP请求参数', + 'description' => 'The parameters in the HTTP request.'."\n", + 'type' => 'object', + 'example' => '[{"content:"mike"}]', + ], + 'Body' => [ + 'title' => '告警通知模板', + 'description' => 'The alert notification template.'."\n", + 'type' => 'string', + 'example' => '{ "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }}", "Application name":"{{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}", "Notification policy":"{{ .dispatchRuleName }}", "Alert time":"{{ .startTime }}", "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}" }'."\n", + ], + 'RecoverBody' => [ + 'title' => '告警恢复模板', + 'description' => 'The notification template for clearing alerts.'."\n", + 'type' => 'string', + 'example' => '{ "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }}", "Application name":"{{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}", "Notification policy":"{{ .dispatchRuleName }}", "Recovery time":"{{ .endTime }}", "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}" }'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4D6C358A-A58B-4F4B-94CE-F5AAF023****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"WebhookContacts\\": [\\n {\\n \\"WebhookId\\": 123,\\n \\"WebhookName\\": \\"webhook名称\\",\\n \\"Webhook\\": {\\n \\"Method\\": \\"Post\\",\\n \\"Url\\": \\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\\",\\n \\"BizHeaders\\": [\\n {\\n \\"Content-Type\\": \\"application/json\\"\\n }\\n ],\\n \\"BizParams\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Body\\": \\"{ \\\\\\"告警名称\\\\\\":\\\\\\"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}\\\\\\", \\\\\\"集群名称\\\\\\":\\\\\\"{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }}\\\\\\", \\\\\\"应用名称\\\\\\":\\\\\\"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}\\\\\\", \\\\\\"通知策略\\\\\\":\\\\\\"{{ .dispatchRuleName }}\\\\\\", \\\\\\"告警时间\\\\\\":\\\\\\"{{ .startTime }}\\\\\\", \\\\\\"告警内容\\\\\\":\\\\\\"{{ for .alerts }} {{ .annotations.message }} {{ end }}\\\\\\" }\\",\\n \\"RecoverBody\\": \\"{ \\\\\\"告警名称\\\\\\":\\\\\\"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}\\\\\\", \\\\\\"集群名称\\\\\\":\\\\\\"{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }}\\\\\\", \\\\\\"应用名称\\\\\\":\\\\\\"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}\\\\\\", \\\\\\"通知策略\\\\\\":\\\\\\"{{ .dispatchRuleName }}\\\\\\", \\\\\\"恢复时间\\\\\\":\\\\\\"{{ .endTime }}\\\\\\", \\\\\\"告警内容\\\\\\":\\\\\\"{{ for .alerts }} {{ .annotations.message }} {{ end }}\\\\\\" }\\"\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeWebhookContactsResponse>\\n <RequestId>4D6C358A-A58B-4F4B-94CE-F5AAF023****</RequestId>\\n <PageBean>\\n <Total>1</Total>\\n <Page>1</Page>\\n <Size>20</Size>\\n <WebhookContacts>\\n <WebhookId>123</WebhookId>\\n <WebhookName>webhook名称</WebhookName>\\n <Webhook>\\n <Method>Post</Method>\\n <Url>https://oapi.dingtalk.com/robot/send?access_token=91f2f6****</Url>\\n <BizHeaders>[{\\"Content-Type\\":\\"application/json\\"}]</BizHeaders>\\n <BizParams>[{\\"content:\\"mike\\"}]</BizParams>\\n <Body>{ \\"告警名称\\":\\"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}\\", \\"集群名称\\":\\"{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }}\\", \\"应用名称\\":\\"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}\\", \\"通知策略\\":\\"{{ .dispatchRuleName }}\\", \\"告警时间\\":\\"{{ .startTime }}\\", \\"告警内容\\":\\"{{ for .alerts }} {{ .annotations.message }} {{ end }}\\" }</Body>\\n <RecoverBody>{ \\"告警名称\\":\\"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}\\", \\"集群名称\\":\\"{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }}\\", \\"应用名称\\":\\"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}\\", \\"通知策略\\":\\"{{ .dispatchRuleName }}\\", \\"恢复时间\\":\\"{{ .endTime }}\\", \\"告警内容\\":\\"{{ for .alerts }} {{ .annotations.message }} {{ end }}\\" }</RecoverBody>\\n </Webhook>\\n </WebhookContacts>\\n </PageBean>\\n</DescribeWebhookContactsResponse>","errorExample":""}]', + 'title' => 'DescribeWebhookContacts', + ], + 'CreateOrUpdateEventBridgeIntegration' => [ + 'summary' => 'Creates or modifies an EventBridge integration that is used to push notifications.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the EventBridge integration.'."\n" + ."\n" + .'* If you do not specify this parameter, an EventBridge integration is created.'."\n" + .'* If you specify this parameter, the specified EventBridge integration is modified.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the EventBridge integration.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'EventBridge_Test', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The description of the EventBridge integration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'Endpoint', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The public endpoint of EventBridge.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://xxxxx', + ], + ], + [ + 'name' => 'AccessKey', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The AccessKey ID that is used to connect to EventBridge.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'abc******************', + ], + ], + [ + 'name' => 'AccessSecret', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The AccessKey secret that is used to connect to EventBridge.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'abc******************', + ], + ], + [ + 'name' => 'EventBusName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the event bus.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'EventBus_Test', + ], + ], + [ + 'name' => 'Source', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The event source.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'arms', + ], + ], + [ + 'name' => 'EventBusRegionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The region ID of the event bus.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2B289756-E791-5842-BCBD-AD414C******', + ], + 'EventBridgeIntegration' => [ + 'description' => 'The information about the EventBridge integration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the EventBridge integration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'Name' => [ + 'description' => 'The name of the EventBridge integration.'."\n", + 'type' => 'string', + 'example' => 'EventBridge_Test', + ], + 'Description' => [ + 'description' => 'The description of the EventBridge integration.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'Endpoint' => [ + 'description' => 'The public endpoint of EventBridge.'."\n", + 'type' => 'string', + 'example' => 'http://xxxxx', + ], + 'AccessKey' => [ + 'description' => 'The AccessKey ID that is used to connect to EventBridge.'."\n", + 'type' => 'string', + 'example' => 'abc******************', + ], + 'AccessSecret' => [ + 'description' => 'The AccessKey secret that is used to connect to EventBridge.'."\n", + 'type' => 'string', + 'example' => 'abc******************', + ], + 'EventBusName' => [ + 'description' => 'The name of the event bus.'."\n", + 'type' => 'string', + 'example' => 'EventBus_Test', + ], + 'Source' => [ + 'description' => 'The event source.'."\n", + 'type' => 'string', + 'example' => 'arms', + ], + 'EventBusRegionId' => [ + 'description' => 'The region ID of the event bus.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2B289756-E791-5842-BCBD-AD414C******\\",\\n \\"EventBridgeIntegration\\": {\\n \\"Id\\": 123,\\n \\"Name\\": \\"EventBridge_Test\\",\\n \\"Description\\": \\"test\\",\\n \\"Endpoint\\": \\"http://xxxxx\\",\\n \\"AccessKey\\": \\"abc******************\\",\\n \\"AccessSecret\\": \\"abc******************\\",\\n \\"EventBusName\\": \\"EventBus_Test\\",\\n \\"Source\\": \\"arms\\",\\n \\"EventBusRegionId\\": \\"cn-hangzhou\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateOrUpdateEventBridgeIntegrationResponse>\\n <RequestId>2B289756-E791-5842-BCBD-AD414C******</RequestId>\\n <EventBridgeIntegration>\\n <Id>123</Id>\\n <Name>EventBridge_Test</Name>\\n <Description>test</Description>\\n <Endpoint>http://xxxxx</Endpoint>\\n <AccessKey>abc******************</AccessKey>\\n <AccessSecret>abc******************</AccessSecret>\\n <EventBusName>EventBus_Test</EventBusName>\\n <Source>arms</Source>\\n <EventBusRegionId>cn-hangzhou</EventBusRegionId>\\n </EventBridgeIntegration>\\n</CreateOrUpdateEventBridgeIntegrationResponse>","errorExample":""}]', + 'title' => 'CreateOrUpdateEventBridgeIntegration', + ], + 'DeleteEventBridgeIntegration' => [ + 'summary' => 'Deletes an EventBridge integration that is used to push notifications.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '133880', + 'abilityTreeNodes' => [ + 'FEATUREarmsR0R9WE', + ], + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Required. The ID of the EventBridge notification integration. You can call the **ListEventBridgeIntegrations** operation to query the ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2B289756-E791-5842-BCBD-AD414C******', + ], + 'IsSuccess' => [ + 'description' => 'Indicates whether the EventBridge integration is deleted.'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2B289756-E791-5842-BCBD-AD414C******\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteEventBridgeIntegrationResponse>\\n <RequestId>2B289756-E791-5842-BCBD-AD414C******</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</DeleteEventBridgeIntegrationResponse>","errorExample":""}]', + 'title' => 'DeleteEventBridgeIntegration', + ], + 'ListEventBridgeIntegrations' => [ + 'summary' => 'Queries EventBridge integrations that are used to push notifications.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '15', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the EventBridge integration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'EventBridge_Test', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '2B289756-E791-5842-BCBD-AD414C******', + ], + 'PageBean' => [ + 'description' => 'The information about EventBridge integrations that is returned on each page.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of EventBridge integrations that are returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'description' => 'The number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '15', + ], + 'EventBridgeIntegrations' => [ + 'description' => 'The EventBridge integrations.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The description of the EventBridge integration.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the EventBridge integration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'Name' => [ + 'description' => 'The name of the EventBridge integration.'."\n", + 'type' => 'string', + 'example' => 'EventBridge_Test', + ], + 'Description' => [ + 'description' => 'The description of the EventBridge integration.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2B289756-E791-5842-BCBD-AD414C******\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 15,\\n \\"EventBridgeIntegrations\\": [\\n {\\n \\"Id\\": 123,\\n \\"Name\\": \\"EventBridge_Test\\",\\n \\"Description\\": \\"test\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListEventBridgeIntegrationsResponse>\\n <RequestId>2B289756-E791-5842-BCBD-AD414CC212D2</RequestId>\\n <PageBean>\\n <Total>24</Total>\\n <Page>1</Page>\\n <Size>15</Size>\\n <EventBridgeIntegrations>\\n <Id>123</Id>\\n <Name>EventBridge_Test</Name>\\n <Description>EventBridge描述</Description>\\n </EventBridgeIntegrations>\\n </PageBean>\\n</ListEventBridgeIntegrationsResponse>","errorExample":""}]', + 'title' => 'ListEventBridgeIntegrations', + ], + 'CreateOrUpdateNotificationPolicy' => [ + 'summary' => 'Creates or modifies a notification policy.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'formData', + 'schema' => [ + 'title' => '通知策略ID', + 'description' => 'The ID of the notification policy.'."\n" + ."\n" + .'* If you do not specify this parameter, a new notification policy is created.'."\n" + .'* If you specify this parameter, the specified notification policy is modified.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1234', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '通知策略名称', + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'notificationpolicy_test', + ], + ], + [ + 'name' => 'MatchingRules', + 'in' => 'formData', + 'schema' => [ + 'title' => '事件匹配规则列表', + 'description' => 'The matching rules. Format:'."\n" + ."\n" + .' ['."\n" + .' {'."\n" + .' "matchingConditions": ['."\n" + .' { '."\n" + .' "value": "test", // The value of the matching condition. '."\n" + .' "key": "alertname", // The key of the matching condition. '."\n" + .' "operator": "eq" // The logical operator of the matching condition, including eq (equal to), neq (not equal to), in (contains), nin (does not contain), re (regular expression match), and nre (regular expression mismatch). '."\n" + .' }'."\n" + .' ]'."\n" + .' } '."\n" + .' ]'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[ { "matchingConditions": [ { "value": "test", "key": "alertname", "operator": "eq" } ] } ]', + ], + ], + [ + 'name' => 'SendRecoverMessage', + 'in' => 'formData', + 'schema' => [ + 'title' => '是否发送恢,不填默认为:true复通知', + 'description' => 'Specifies whether the status of an alert automatically changes to Resolved when all events related to the alert change to the Restored state. ARMS notifies contacts when the alert status changes to Resolved.'."\n" + ."\n" + .'* `true`: The system sends a notification.'."\n" + .'* `false`: The system does not send a notification.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'GroupRule', + 'in' => 'formData', + 'schema' => [ + 'title' => '分组规则', + 'description' => 'An array of alert event group objects.'."\n" + ."\n" + .'* If you do not specify the groupingFields field, all alerts will be sent to contacts based on `alertname`.'."\n" + .'* If you specify the groupingFields field, alerts with the same field will be sent to contacts in one notification.'."\n" + ."\n" + .'Sample statement:'."\n" + ."\n" + .' { '."\n" + .' "groupWait":5, // The waiting time for grouping. '."\n" + .' "groupInterval":30, // The time interval of grouping. '."\n" + .' "groupingFields":["alertname"] // The field that is used to group alert events. '."\n" + .' }'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "groupWait":5, "groupInterval":30, "groupingFields":["alertname"] }', + ], + ], + [ + 'name' => 'NotifyRule', + 'in' => 'formData', + 'schema' => [ + 'title' => '通知规则,通知对象,必填', + 'description' => 'An array of notification rule objects. Format:'."\n" + ."\n" + .' { '."\n" + .' "notifyStartTime":"00:00", // The start time of the notification window. '."\n" + .' "notifyEndTime":"23:59", // The end time of the notification window. '."\n" + .' "notifyChannels":["dingTalk", "email", "sms", "tts", "webhook"], // The notification methods. Valid values: dingTalk, email, sms, tts, and webhook. '."\n" + .' "notifyObjects":[{ // An array of notification objects. '."\n" + .' "notifyObjectType":"CONTACT", // The type of the notification object. Valid values: CONTACT (contact), CONTACT_GROUP (contact group), ARMS_CONTACT (ARMS contact), ARMS_CONTACT_GROUP (ARMS contact group), DING_ROBOT_GROUP (DingTalk, Lark, WeCom, or IM robot), and CONTACT_SCHEDULE (user on duty defined by a schedule). '."\n" + .' "notifyObjectId":123, // The ID of the notification object. '."\n" + .' "notifyObjectName":"test" // The name of the notification object. '."\n" + .' }]'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{ "notifyStartTime":"00:00", "notifyEndTime":"23:59", "notifyChannels":[ "dingTalk", "email", "sms", "tts", "webhook" ], "notifyObjects":[ { "notifyObjectType":"CONTACT", "notifyObjectId":123, "notifyObjectName":"test" } ] }', + ], + ], + [ + 'name' => 'NotifyTemplate', + 'in' => 'formData', + 'schema' => [ + 'title' => '通知模板', + 'description' => 'The notification template. The default notification template is provided below the table.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '"robotContent":"{{if .commonLabels.clustername }} > Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} > Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }} > {{.annotations.message}} {{if .generatorURL }} \\[Link]\\({{.generatorURL}}) {{ end }} {{if eq "true" .labels.\\_aliyun_arms_is_denoise_filtered }} (Suspected noise) {{end}} {{end}}"'."\n", + ], + ], + [ + 'name' => 'EscalationPolicyId', + 'in' => 'formData', + 'schema' => [ + 'title' => '升级规则ID', + 'description' => 'The ID of the escalation policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'Repeat', + 'in' => 'formData', + 'schema' => [ + 'title' => '是否重复通知,不填默认为true,需要必填重复通知时间间隔;false,需要必填升级规则ID', + 'description' => 'Specifies whether to resend a notification for a long-lasting unresolved alert. Default value: true. Valid values:'."\n" + ."\n" + .'* `true`: If you set this parameter to `true`, you must set **RepeatInterval**.'."\n" + .'* `false`: If you set this parameter to `false`, you must set **EscalationPolicyId**.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RepeatInterval', + 'in' => 'formData', + 'schema' => [ + 'title' => '重复通知时间间隔,单位:s', + 'description' => 'The time interval at which a notification is resent for a long-lasting unresolved alert. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '600', + ], + ], + [ + 'name' => 'IntegrationId', + 'in' => 'formData', + 'schema' => [ + 'title' => '集成ID', + 'description' => 'The integration ID of the ticket system to which alerts are pushed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '34', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'DirectedMode', + 'in' => 'formData', + 'schema' => [ + 'title' => '极简模式', + 'description' => 'Specifies whether to enable simple mode.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'State', + 'in' => 'formData', + 'schema' => [ + 'title' => '通知策略是否启用,enable 启用,disable 停用', + 'description' => 'Specifies whether to enable the notification policy. Valid values: enable and disable.', + 'type' => 'string', + 'required' => false, + 'example' => 'enable', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'NotificationPolicy' => [ + 'title' => '通知策略对象', + 'description' => 'An array of notification policy objects.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'title' => '通知策略ID', + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'Name' => [ + 'title' => '通知策略名称', + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'notificationpolicy_test', + ], + 'MatchingRules' => [ + 'title' => '事件匹配规则列表', + 'description' => 'The matching rules.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MatchingConditions' => [ + 'description' => 'The matching conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '条件字段', + 'description' => 'The key of the matching condition.'."\n", + 'type' => 'string', + 'example' => 'altertname', + ], + 'Value' => [ + 'title' => '条件字段值', + 'description' => 'The value of the matching condition.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'Operator' => [ + 'title' => '对应关系', + 'description' => 'The logical operator of the matching condition. Valid values:'."\n" + ."\n" + .'* `eq`: equal to'."\n" + .'* `neq`: not equal to'."\n" + .'* `in`: contains'."\n" + .'* `nin`: does not contain'."\n" + .'* `re`: regular expression match'."\n" + .'* `nre`: regular expression mismatch'."\n", + 'type' => 'string', + 'example' => 'eq', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'SendRecoverMessage' => [ + 'title' => '是否发送恢复通知', + 'description' => 'Indicates whether the status of an alert automatically changes to Resolved when all events related to the alert change to the Restored state. ARMS notifies contacts when the alert status changes to Resolved.'."\n" + ."\n" + .'* `true`: The system sends a notification.'."\n" + .'* `false`: The system does not send a notification.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'GroupRule' => [ + 'title' => '分组规则', + 'description' => 'An array of alert event group objects.'."\n", + 'type' => 'object', + 'properties' => [ + 'GroupingFields' => [ + 'title' => '分组字段,为空则不分组,默认按照alertname分组', + 'description' => 'An array of alert event group objects.'."\n" + ."\n" + .'* If you do not specify the groupingFields field, all alerts will be sent to contacts based on `alertname`.'."\n" + .'* If you specify the groupingFields field, alerts with the same field will be sent to contacts in one notification.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The field that is used for grouping.'."\n", + 'type' => 'string', + 'example' => '["alertName","clustname"]', + ], + ], + 'GroupWait' => [ + 'title' => '分组等待时间,选填,默认是5秒', + 'description' => 'The waiting time for grouping. Unit: seconds. Default value: 5.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5', + ], + 'GroupInterval' => [ + 'title' => '分组间隔时间,选填,默认是30s', + 'description' => 'The time interval of grouping. Unit: seconds. Default value: 30.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + ], + ], + 'NotifyRule' => [ + 'title' => '通知规则', + 'description' => 'An array of notification rule objects.'."\n", + 'type' => 'object', + 'properties' => [ + 'NotifyStartTime' => [ + 'title' => '通知时间段开始时间', + 'description' => 'The start time of the notification window.'."\n", + 'type' => 'string', + 'example' => '00:00', + ], + 'NotifyEndTime' => [ + 'title' => '通知时间段结束时间', + 'description' => 'The end time of the notification window.'."\n", + 'type' => 'string', + 'example' => '23:59', + ], + 'NotifyChannels' => [ + 'title' => '通知渠道', + 'description' => 'The notification method.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The notification methods. Valid values:'."\n" + ."\n" + .'* `dingTalk`: DingTalk'."\n" + .'* `email`: email'."\n" + .'* `sms`: text message'."\n" + .'* `tts`: phone call'."\n" + .'* `webhook`: webhook'."\n", + 'type' => 'string', + 'example' => '["dingTalk", "email", "sms", "tts", "webhook"]', + ], + ], + 'NotifyObjects' => [ + 'title' => '通知对象', + 'description' => 'An array of notification objects.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the notification object.'."\n", + 'type' => 'object', + 'properties' => [ + 'NotifyObjectType' => [ + 'title' => '通知对象类型,CONTACT, CONTACT_GROUP, ARMS_CONTACT, DING_ROBOT', + 'description' => 'The type of the notification object. Valid values:'."\n" + ."\n" + .'* CONTACT: contact'."\n" + .'* CONTACT_GROUP: contact group'."\n" + .'* ARMS_CONTACT: ARMS contact'."\n" + .'* ARMS_CONTACT_GROUP: ARMS contact group'."\n" + .'* DING_ROBOT_GROUP: DingTalk, Lark, WeCom, or IM robot'."\n" + .'* CONTACT_SCHEDULE: user on duty defined by a schedule'."\n", + 'type' => 'string', + 'example' => 'CONTACT', + ], + 'NotifyObjectId' => [ + 'title' => '通知对象ID', + 'description' => 'The ID of the notification object.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'NotifyObjectName' => [ + 'title' => '通知对象名称', + 'description' => 'The name of the notification object.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'NotifyChannels' => [ + 'title' => '通知对象为联系人时的联系方式', + 'description' => 'The notification methods specified for a contact.', + 'type' => 'array', + 'items' => [ + 'title' => '', + 'description' => 'The notification methods. Valid values:'."\n" + ."\n" + .'- email: email'."\n" + .'- sms: text message'."\n" + .'- tts: phone call', + 'type' => 'string', + 'example' => 'sms'."\n", + ], + ], + ], + ], + ], + ], + ], + 'NotifyTemplate' => [ + 'title' => '通知模板', + 'description' => 'The notification template.'."\n", + 'type' => 'object', + 'properties' => [ + 'EmailTitle' => [ + 'title' => '邮件标题', + 'description' => 'The title of the alert notification sent through email.'."\n", + 'type' => 'string', + 'example' => '{{ .commonLabels.alertname }}', + ], + 'EmailContent' => [ + 'title' => '邮件内容', + 'description' => 'The content of the alert notification sent through email.'."\n", + 'type' => 'string', + 'example' => 'Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{if .generatorURL }} \\<a href="{{.generatorURL}}" >Link\\</a> {{end}} {{end}}'."\n", + ], + 'EmailRecoverTitle' => [ + 'title' => '恢复告警邮件标题', + 'description' => 'The title of the alert resolution notification sent through email.'."\n", + 'type' => 'string', + 'example' => '{{ .commonLabels.alertname }}', + ], + 'EmailRecoverContent' => [ + 'title' => '恢复告警邮件内容', + 'description' => 'The content of the alert resolution notification sent through email.'."\n", + 'type' => 'string', + 'example' => 'Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{if .generatorURL }} \\<a href="{{.generatorURL}}" >Link\\</a> {{end}} {{end}}'."\n", + ], + 'SmsContent' => [ + 'title' => '短信内容', + 'description' => 'The content of the alert notification sent through text message.'."\n", + 'type' => 'string', + 'example' => '\\<SmsContent>Notification on the occurrence of a {{ .level }} alert. Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\</SmsContent>'."\n", + ], + 'SmsRecoverContent' => [ + 'title' => '恢复告警短信内容', + 'description' => 'The content of the alert resolution notification sent through text message.'."\n", + 'type' => 'string', + 'example' => '\\<SmsRecoverContent>Alert resolution notification. Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\</SmsRecoverContent>'."\n", + ], + 'TtsContent' => [ + 'title' => '智能语音告警内容', + 'description' => 'The content of the alert notification by phone.'."\n", + 'type' => 'string', + 'example' => '\\<TtsContent>Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\</TtsContent>'."\n", + ], + 'TtsRecoverContent' => [ + 'title' => '智能语音恢复告警内容', + 'description' => 'The content of the alert resolution notification by phone.'."\n", + 'type' => 'string', + 'example' => '\\<TtsRecoverContent>Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\</TtsRecoverContent>'."\n", + ], + 'RobotContent' => [ + 'title' => '机器人告警内容', + 'description' => 'The content of the alert notification sent by the IM robot.'."\n", + 'type' => 'string', + 'example' => '{{if .commonLabels.clustername }} > Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} > Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }}> {{.annotations.message}} {{if .generatorURL }} \\[Link]\\({{.generatorURL}}) {{ end }} {{if eq "true" .labels.\\_aliyun_arms_is_denoise_filtered }} (Suspected noise) {{end}} {{end}}'."\n", + ], + ], + ], + 'EscalationPolicyId' => [ + 'title' => '升级规则ID', + 'description' => 'The ID of the escalation policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'Repeat' => [ + 'title' => '是否重复通知', + 'description' => 'Indicates whether a notification is resent for a long-lasting unresolved alert. Default value: true. Valid values:'."\n" + ."\n" + .'* `true`: The system resends a notification for a long-lasting unresolved alert at a specified time interval.'."\n" + .'* `false`: The system sends a notification for a long-lasting unresolved alert based on an escalation policy.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RepeatInterval' => [ + 'title' => '重复通知时间间隔', + 'description' => 'The time interval at which a notification is resent for a long-lasting unresolved alert. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '600', + ], + 'IntegrationId' => [ + 'title' => '集成ID', + 'description' => 'The integration ID of the ticket system to which alerts are pushed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '34', + ], + 'DirectedMode' => [ + 'title' => '极简模式', + 'description' => 'Specifies whether to enable simple mode.', + 'type' => 'boolean', + 'example' => 'false', + ], + 'State' => [ + 'title' => '通知策略是否启用,enable 启用,disable 停用', + 'description' => 'Indicates whether the notification policy is enabled. Valid values: enable and disable.', + 'type' => 'string', + 'example' => 'enable', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"NotificationPolicy\\": {\\n \\"Id\\": 1234,\\n \\"Name\\": \\"notificationpolicy_test\\",\\n \\"MatchingRules\\": [\\n {\\n \\"MatchingConditions\\": [\\n {\\n \\"Key\\": \\"altertname\\",\\n \\"Value\\": \\"test\\",\\n \\"Operator\\": \\"eq\\"\\n }\\n ]\\n }\\n ],\\n \\"SendRecoverMessage\\": true,\\n \\"GroupRule\\": {\\n \\"GroupingFields\\": [\\n \\"[\\\\\\"alertName\\\\\\",\\\\\\"clustname\\\\\\"]\\"\\n ],\\n \\"GroupWait\\": 5,\\n \\"GroupInterval\\": 30\\n },\\n \\"NotifyRule\\": {\\n \\"NotifyStartTime\\": \\"00:00\\",\\n \\"NotifyEndTime\\": \\"23:59\\",\\n \\"NotifyChannels\\": [\\n \\"[\\\\\\"dingTalk\\\\\\", \\\\\\"email\\\\\\", \\\\\\"sms\\\\\\", \\\\\\"tts\\\\\\", \\\\\\"webhook\\\\\\"]\\"\\n ],\\n \\"NotifyObjects\\": [\\n {\\n \\"NotifyObjectType\\": \\"CONTACT\\",\\n \\"NotifyObjectId\\": 123,\\n \\"NotifyObjectName\\": \\"test\\",\\n \\"NotifyChannels\\": [\\n \\"sms\\"\\n ]\\n }\\n ]\\n },\\n \\"NotifyTemplate\\": {\\n \\"EmailTitle\\": \\"{{ .commonLabels.alertname }}\\",\\n \\"EmailContent\\": \\"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href=\\\\\\"{{.generatorURL}}\\\\\\" > 详情链接</a> {{ end }} {{ end }}\\",\\n \\"EmailRecoverTitle\\": \\"{{ .commonLabels.alertname }}\\",\\n \\"EmailRecoverContent\\": \\"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href=\\\\\\"{{.generatorURL}}\\\\\\" > 详情链接</a> {{ end }} {{ end }}\\",\\n \\"SmsContent\\": \\"发生{{ .level }}告警 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}\\",\\n \\"SmsRecoverContent\\": \\"告警已经恢复 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}\\",\\n \\"TtsContent\\": \\"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}\\",\\n \\"TtsRecoverContent\\": \\"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}\\",\\n \\"RobotContent\\": \\"{{if .commonLabels.clustername }} > 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} > 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }} > {{ .annotations.message }} {{if .generatorURL }} [详情链接]({{.generatorURL}}) {{end}} {{if eq \\\\\\"true\\\\\\" .labels._aliyun_arms_is_denoise_filtered }} (疑似噪音) {{end}} {{end}}\\"\\n },\\n \\"EscalationPolicyId\\": 123,\\n \\"Repeat\\": true,\\n \\"RepeatInterval\\": 600,\\n \\"IntegrationId\\": 34,\\n \\"DirectedMode\\": true,\\n \\"State\\": \\"enable\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateOrUpdateNotificationPolicyResponse>\\n <RequestId>A5EC8221-08F2-4C95-9AF1-49FD998C****</RequestId>\\n <NotificationPolicy>\\n <Id>1234</Id>\\n <Name>notificationpolicy_test</Name>\\n <MatchingRules>\\n <MatchingConditions>\\n <Key>altertname</Key>\\n <Value>test</Value>\\n <Operator>eq</Operator>\\n </MatchingConditions>\\n </MatchingRules>\\n <SendRecoverMessage>true</SendRecoverMessage>\\n <GroupRule>\\n <GroupingFields>[\\"alertName\\",\\"clustname\\"]</GroupingFields>\\n <GroupWait>5</GroupWait>\\n <GroupInterval>30</GroupInterval>\\n </GroupRule>\\n <NotifyRule>\\n <NotifyStartTime>00:00</NotifyStartTime>\\n <NotifyEndTime>23:59</NotifyEndTime>\\n <NotifyChannels>[\\"dingTalk\\", \\"email\\", \\"sms\\", \\"tts\\", \\"webhook\\"]</NotifyChannels>\\n <NotifyObjects>\\n <NotifyObjectType>CONTACT</NotifyObjectType>\\n <NotifyObjectId>123</NotifyObjectId>\\n <NotifyObjectName>test</NotifyObjectName>\\n </NotifyObjects>\\n </NotifyRule>\\n <NotifyTemplate>\\n <EmailTitle>{{ .commonLabels.alertname }}</EmailTitle>\\n <EmailContent>告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href=\\"{{.generatorURL}}\\" > 详情链接</a> {{ end }} {{ end }}</EmailContent>\\n <EmailRecoverTitle>{{ .commonLabels.alertname }}</EmailRecoverTitle>\\n <EmailRecoverContent>告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href=\\"{{.generatorURL}}\\" > 详情链接</a> {{ end }} {{ end }}</EmailRecoverContent>\\n <SmsContent>发生{{ .level }}告警 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}</SmsContent>\\n <SmsRecoverContent>告警已经恢复 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}</SmsRecoverContent>\\n <TtsContent>告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}</TtsContent>\\n <TtsRecoverContent>告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}</TtsRecoverContent>\\n <RobotContent>{{if .commonLabels.clustername }} > 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} > 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }} > {{ .annotations.message }} {{if .generatorURL }} [详情链接]({{.generatorURL}}) {{end}} {{if eq \\"true\\" .labels._aliyun_arms_is_denoise_filtered }} (疑似噪音) {{end}} {{end}}</RobotContent>\\n </NotifyTemplate>\\n <EscalationPolicyId>123</EscalationPolicyId>\\n <Repeat>true</Repeat>\\n <RepeatInterval>600</RepeatInterval>\\n <IntegrationId>34</IntegrationId>\\n </NotificationPolicy>\\n</CreateOrUpdateNotificationPolicyResponse>","errorExample":""}]', + 'title' => 'CreateOrUpdateNotificationPolicy', + 'requestParamsDescription' => '### Default notification template specified by the NotifyTemplate field'."\n" + ."\n" + .' {'."\n" + .' // An alert notification sent through email'."\n" + .' "emailTitle":"{{ .commonLabels.alertname }}",'."\n" + ."\n" + .' "emailContent":"Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{if .generatorURL }} <a href="{{.generatorURL}}" >Link</a> {{ end }} {{ end }}",'."\n" + ."\n" + .' // An alert resolution notification sent through email'."\n" + .' "emailRecoverTitle":"{{ .commonLabels.alertname }}",'."\n" + ."\n" + .' "emailRecoverContent":"Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{if .generatorURL }} <a href="{{.generatorURL}}" >Link</a> {{ end }} {{ end }}",'."\n" + ."\n" + .' // An alert notification sent through text message'."\n" + .' "smsContent":"Notification on the occurrence of a {{ .level }} alert. Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}}}",'."\n" + ."\n" + .' // An alert resolution notification sent through text message'."\n" + .' "smsRecoverContent":"Alert resolution notification. Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}",'."\n" + ."\n" + .' // An alert notification by phone'."\n" + .' "tsContent":"Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}",'."\n" + ."\n" + .' // An alert resolution notification by phone'."\n" + .' "ttsRecoverContent":"Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}",'."\n" + ."\n" + .' // An alert notification sent by the instant message (IM) robot'."\n" + .' "robotContent":"{{if .commonLabels.clustername }} > Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }} > Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }} > {{.annotations.message}} {{if .generatorURL }} [Link]({{.generatorURL}}) {{ end }} {{if eq "true" .labels._aliyun_arms_is_denoise_filtered }} (Suspected noise) {{end}} {{end}}"'."\n" + ."\n" + .' }'."\n", + ], + 'DeleteNotificationPolicy' => [ + 'summary' => 'Deletes a notification policy based on its ID.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'title' => '通知策略ID', + 'description' => 'The ID of the notification policy.'."\n" + ."\n" + .'For more information about how to obtain the ID of a notification policy, see [ListNotificationPolicies](~~2612375~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1234', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The operation that you want to perform. Set the value to **DeleteNotificationPolicy**.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'IsSuccess' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteNotificationPolicyResponse>\\n <RequestId>A5EC8221-08F2-4C95-9AF1-49FD998C****</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</DeleteNotificationPolicyResponse>","errorExample":""}]', + 'title' => 'DeleteNotificationPolicy', + ], + 'ListNotificationPolicies' => [ + 'summary' => 'Queries notification policies based on specified conditions.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '通知策略名称', + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'notificationpolicy_test', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'title' => '页数', + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'title' => '每页展示数目', + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'IsDetail', + 'in' => 'query', + 'schema' => [ + 'title' => '是否查询详情信息', + 'description' => 'Specifies whether to query the details about notification policies. Valid values:'."\n" + ."\n" + .'* `true`: Details about notification policies are queried.'."\n" + .'* `false`: Details about notification policies are not queried.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region. Default value: **cn-hangzhou**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Ids', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '12345', + ], + ], + [ + 'name' => 'DirectedMode', + 'in' => 'query', + 'schema' => [ + 'title' => '极简模式', + 'description' => 'Specifies whether to enable simple mode.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'PageBean' => [ + 'title' => '分页对象', + 'description' => 'The returned pages.', + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The number of notification policies that are returned.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '24', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The number of the page returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每页展示数目', + 'description' => 'The number of entries that are returned on each page.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'NotificationPolicies' => [ + 'title' => '通知策略对象', + 'description' => 'The queried notification policies.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'title' => '通知策略ID', + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'Name' => [ + 'title' => '通知策略名称', + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'notificationpolicy_test', + ], + 'MatchingRules' => [ + 'title' => '事件匹配规则列表', + 'description' => 'The matching rules for alert events.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MatchingConditions' => [ + 'title' => '匹配条件', + 'description' => 'The matching conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '条件字段', + 'description' => 'The key of the matching condition.'."\n", + 'type' => 'string', + 'example' => 'altertname', + ], + 'Value' => [ + 'title' => '条件字段值', + 'description' => 'The value of the matching condition.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'Operator' => [ + 'title' => '对应关系', + 'description' => 'The logical operator of the matching condition. Valid values:'."\n" + ."\n" + .'* `eq`: equal to'."\n" + .'* `neq`: not equal to'."\n" + .'* `in`: contains'."\n" + .'* `nin`: does not contain'."\n" + .'* `re`: regular expression match'."\n" + .'* `nre`: regular expression mismatch'."\n", + 'type' => 'string', + 'example' => 'eq', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + 'SendRecoverMessage' => [ + 'title' => '是否发送恢复通知', + 'description' => 'Indicates whether the status of an alert automatically changes to Resolved when all events related to the alert change to the Restored state. The system sends a notification to the alert contacts when the alert status changes to Resolved.'."\n" + ."\n" + .'- `true` (default): The system sends a notification.'."\n" + .'- `false`: The system does not send a notification.', + 'type' => 'boolean', + 'example' => 'true', + ], + 'GroupRule' => [ + 'title' => '分组规则', + 'description' => 'The grouping rule for alert events.', + 'type' => 'object', + 'properties' => [ + 'GroupingFields' => [ + 'title' => '分组字段,为空则不分组,默认按照alertname分组', + 'description' => 'An array of alert event group objects.'."\n" + ."\n" + .'* If you do not specify the groupingFields field, all alerts will be sent to contacts based on `alertname`.'."\n" + .'* If you specify the groupingFields field, alerts with the same field will be sent to contacts in one notification.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The field that is used for grouping.'."\n", + 'type' => 'string', + 'example' => '["alertname"]', + ], + ], + 'GroupWait' => [ + 'title' => '分组等待时间,选填,默认是5秒', + 'description' => 'The waiting time for grouping. Unit: seconds. Default value: 5.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5', + ], + 'GroupInterval' => [ + 'title' => '分组间隔时间,选填,默认是30s', + 'description' => 'The time interval of grouping. Unit: seconds. Default value: 30.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + ], + ], + 'NotifyRule' => [ + 'title' => '通知规则', + 'description' => 'The notification rule.', + 'type' => 'object', + 'properties' => [ + 'NotifyStartTime' => [ + 'title' => '通知时间段开始时间', + 'description' => 'The start time of the notification window.'."\n", + 'type' => 'string', + 'example' => '00:00', + ], + 'NotifyEndTime' => [ + 'title' => '通知时间段结束时间', + 'description' => 'The end time of the notification window.'."\n", + 'type' => 'string', + 'example' => '23:59', + ], + 'NotifyChannels' => [ + 'title' => '通知渠道', + 'description' => 'The notification method.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The notification methods. Valid values:'."\n" + ."\n" + .'* `dingTalk`: DingTalk'."\n" + .'* `email`: email'."\n" + .'* `sms`: text message'."\n" + .'* `tts`: phone call'."\n" + .'* `webhook`: webhook'."\n", + 'type' => 'string', + 'example' => '[ "dingTalk", "email", "sms", "tts","webhook" ]', + ], + ], + 'NotifyObjects' => [ + 'title' => '通知对象', + 'description' => 'The notification objects.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'NotifyObjectType' => [ + 'title' => '通知对象类型,CONTACT, CONTACT_GROUP, ARMS_CONTACT, DING_ROBOT', + 'description' => 'The type of the notification object. Valid values:'."\n" + ."\n" + .'- CONTACT: an individual contact'."\n" + .'- CONTACT_GROUP: a contact group'."\n" + .'- DING_ROBOT: an instant messaging (IM) chatbot'."\n" + .'- CONTACT_SCHEDULE: a person on duty based on an established schedule', + 'type' => 'string', + 'example' => 'CONTACT', + ], + 'NotifyObjectId' => [ + 'title' => '通知对象ID', + 'description' => 'The ID of the notification object.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'NotifyObjectName' => [ + 'title' => '通知对象名称', + 'description' => 'The name of the notification object.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'NotifyChannels' => [ + 'title' => '通知对象为联系人时的联系方式', + 'description' => 'The notification methods specified for a contact.', + 'type' => 'array', + 'items' => [ + 'description' => 'The notification methods.'."\n" + ."\n" + .'- `email`: email'."\n" + .'- `sms`: text message'."\n" + .'- `tts`: phone call', + 'type' => 'string', + 'example' => '[ "email", "sms", "tts" ]', + ], + ], + ], + 'description' => '', + ], + ], + ], + ], + 'NotifyTemplate' => [ + 'title' => '通知模板', + 'description' => 'The notification template.'."\n", + 'type' => 'object', + 'properties' => [ + 'EmailTitle' => [ + 'title' => '邮件标题', + 'description' => 'The title of the alert notification sent by email.', + 'type' => 'string', + 'example' => '{{ .commonLabels.alertname }}', + ], + 'EmailContent' => [ + 'title' => '邮件内容', + 'description' => 'The content of the alert notification sent by email.', + 'type' => 'string', + 'example' => 'Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{if .generatorURL }} \\<a href="{{.generatorURL}}" >Link\\</a> {{end}} {{end}}'."\n", + ], + 'EmailRecoverTitle' => [ + 'title' => '恢复告警邮件标题', + 'description' => 'The title of the alert resolution notification sent by email.', + 'type' => 'string', + 'example' => '{{ .commonLabels.alertname }}', + ], + 'EmailRecoverContent' => [ + 'title' => '恢复告警邮件内容', + 'description' => 'The content of the alert resolution notification sent by email.', + 'type' => 'string', + 'example' => 'Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{if .generatorURL }} \\<a href="{{.generatorURL}}" >Link\\</a> {{end}} {{end}}'."\n", + ], + 'SmsContent' => [ + 'title' => '短信内容', + 'description' => 'The content of the alert notification sent by text message.', + 'type' => 'string', + 'example' => '\\<SmsContent>Notification on the occurrence of a {{ .level }} alert. Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\</SmsContent>'."\n", + ], + 'SmsRecoverContent' => [ + 'title' => '恢复告警短信内容', + 'description' => 'The content of the alert resolution notification sent by text message.', + 'type' => 'string', + 'example' => '\\<SmsRecoverContent>Alert resolution notification. Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\</SmsRecoverContent>'."\n", + ], + 'TtsContent' => [ + 'title' => '智能语音告警内容', + 'description' => 'The content of the alert notification sent by phone.', + 'type' => 'string', + 'example' => '\\<TtsContent>Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert time: {{ .startTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\</TtsContent>'."\n", + ], + 'TtsRecoverContent' => [ + 'title' => '智能语音恢复告警内容', + 'description' => 'The content of the alert resolution notification sent by phone.', + 'type' => 'string', + 'example' => '\\<TtsRecoverContent>Alert name: {{ .commonLabels.alertname }}{{if .commonLabels.clustername }} Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }} Notification policy: {{ .dispatchRuleName }} Alert resolution time: {{ .endTime }} Alert content: {{ for .alerts }} {{.annotations.message}} {{ end }}\\</TtsRecoverContent>'."\n", + ], + 'RobotContent' => [ + 'title' => '机器人告警内容', + 'description' => 'The content of the alert notification sent by an IM chatbot.', + 'type' => 'string', + 'example' => '{{if .commonLabels.clustername }} > Cluster name: {{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }} > Application name: {{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }}> {{.annotations.message}} {{if .generatorURL }} \\[Link]\\({{.generatorURL}}) {{ end }} {{if eq "true" .labels.\\_aliyun_arms_is_denoise_filtered }} (Suspected noise) {{end}} {{end}}'."\n", + ], + ], + ], + 'Repeat' => [ + 'title' => '是否重复通知', + 'description' => 'Indicates whether the system resends notifications for a long-lasting unresolved alert. Valid values:'."\n" + ."\n" + .'- `true` (default): The system resends notifications for a long-lasting unresolved alert at a specified time interval.'."\n" + .'- `false`: The system resends notifications for a long-lasting unresolved alert based on an escalation policy.', + 'type' => 'boolean', + 'example' => 'true', + ], + 'RepeatInterval' => [ + 'title' => '重复通知时间间隔', + 'description' => 'The time interval at which a notification is resent for a long-lasting unresolved alert. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '600', + ], + 'EscalationPolicyId' => [ + 'title' => '升级规则ID', + 'description' => 'The ID of the escalation policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'IntegrationId' => [ + 'title' => '集成ID', + 'description' => 'The integration ID of the ticket system to which alerts are pushed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '34', + ], + 'DirectedMode' => [ + 'title' => '极简模式', + 'description' => 'Indicates whether simple mode is enabled.', + 'type' => 'boolean', + 'example' => 'true', + ], + 'State' => [ + 'title' => '通知策略是否启用,enable 启用,disable 停用', + 'description' => 'Indicates whether the notification policy is enabled. Valid values: enable and disable.', + 'type' => 'string', + 'example' => 'enable', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 24,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"NotificationPolicies\\": [\\n {\\n \\"Id\\": 1234,\\n \\"Name\\": \\"notificationpolicy_test\\",\\n \\"MatchingRules\\": [\\n {\\n \\"MatchingConditions\\": [\\n {\\n \\"Key\\": \\"altertname\\",\\n \\"Value\\": \\"test\\",\\n \\"Operator\\": \\"eq\\"\\n }\\n ]\\n }\\n ],\\n \\"SendRecoverMessage\\": true,\\n \\"GroupRule\\": {\\n \\"GroupingFields\\": [\\n \\"[\\\\\\"alertname\\\\\\"]\\"\\n ],\\n \\"GroupWait\\": 5,\\n \\"GroupInterval\\": 30\\n },\\n \\"NotifyRule\\": {\\n \\"NotifyStartTime\\": \\"00:00\\",\\n \\"NotifyEndTime\\": \\"23:59\\",\\n \\"NotifyChannels\\": [\\n \\"[ \\\\\\"dingTalk\\\\\\", \\\\\\"email\\\\\\", \\\\\\"sms\\\\\\", \\\\\\"tts\\\\\\",\\\\\\"webhook\\\\\\" ]\\"\\n ],\\n \\"NotifyObjects\\": [\\n {\\n \\"NotifyObjectType\\": \\"CONTACT\\",\\n \\"NotifyObjectId\\": 123,\\n \\"NotifyObjectName\\": \\"test\\",\\n \\"NotifyChannels\\": [\\n \\"[ \\\\\\"email\\\\\\", \\\\\\"sms\\\\\\", \\\\\\"tts\\\\\\" ]\\"\\n ]\\n }\\n ]\\n },\\n \\"NotifyTemplate\\": {\\n \\"EmailTitle\\": \\"{{ .commonLabels.alertname }}\\",\\n \\"EmailContent\\": \\"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href=\\\\\\"{{.generatorURL}}\\\\\\" > 详情链接</a> {{ end }} {{ end }}\\",\\n \\"EmailRecoverTitle\\": \\"{{ .commonLabels.alertname }}\\",\\n \\"EmailRecoverContent\\": \\"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href=\\\\\\"{{.generatorURL}}\\\\\\" > 详情链接</a> {{ end }} {{ end }}\\",\\n \\"SmsContent\\": \\"发生{{ .level }}告警 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}\\",\\n \\"SmsRecoverContent\\": \\"告警已经恢复 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}\\",\\n \\"TtsContent\\": \\"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}\\",\\n \\"TtsRecoverContent\\": \\"告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}\\",\\n \\"RobotContent\\": \\"{{if .commonLabels.clustername }} > 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\\\\\"app\\\\\\" .commonLabels._aliyun_arms_involvedObject_kind }} > 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }} > {{ .annotations.message }} {{if .generatorURL }} [详情链接]({{.generatorURL}}) {{end}} {{if eq \\\\\\"true\\\\\\" .labels._aliyun_arms_is_denoise_filtered }} (疑似噪音) {{end}} {{end}}\\"\\n },\\n \\"Repeat\\": true,\\n \\"RepeatInterval\\": 600,\\n \\"EscalationPolicyId\\": 123,\\n \\"IntegrationId\\": 34,\\n \\"DirectedMode\\": true,\\n \\"State\\": \\"enable\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListNotificationPoliciesResponse>\\n <RequestId>78901766-3806-4E96-8E47-CFEF59E4****</RequestId>\\n <PageBean>\\n <Total>24</Total>\\n <Page>1</Page>\\n <Size>20</Size>\\n <NotificationPolicies>\\n <Id>1234</Id>\\n <Name>notificationpolicy_test</Name>\\n <MatchingRules>\\n <MatchingConditions>\\n <Key>altertname</Key>\\n <Value>test</Value>\\n <Operator>eq</Operator>\\n </MatchingConditions>\\n </MatchingRules>\\n <SendRecoverMessage>true</SendRecoverMessage>\\n <GroupRule>\\n <GroupingFields>[\\"alertname\\"]</GroupingFields>\\n <GroupWait>5</GroupWait>\\n <GroupInterval>30</GroupInterval>\\n </GroupRule>\\n <NotifyRule>\\n <NotifyStartTime>00:00</NotifyStartTime>\\n <NotifyEndTime>23:59</NotifyEndTime>\\n <NotifyChannels>[ \\"dingTalk\\", \\"email\\", \\"sms\\", \\"tts\\",\\"webhook\\" ]</NotifyChannels>\\n <NotifyObjects>\\n <NotifyObjectType>CONTACT</NotifyObjectType>\\n <NotifyObjectId>123</NotifyObjectId>\\n <NotifyObjectName>test</NotifyObjectName>\\n </NotifyObjects>\\n </NotifyRule>\\n <NotifyTemplate>\\n <EmailTitle>{{ .commonLabels.alertname }}</EmailTitle>\\n <EmailContent>告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href=\\"{{.generatorURL}}\\" > 详情链接</a> {{ end }} {{ end }}</EmailContent>\\n <EmailRecoverTitle>{{ .commonLabels.alertname }}</EmailRecoverTitle>\\n <EmailRecoverContent>告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{if .generatorURL }} <a href=\\"{{.generatorURL}}\\" > 详情链接</a> {{ end }} {{ end }}</EmailRecoverContent>\\n <SmsContent>发生{{ .level }}告警 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}</SmsContent>\\n <SmsRecoverContent>告警已经恢复 告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}</SmsRecoverContent>\\n <TtsContent>告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 告警时间:{{ .startTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}</TtsContent>\\n <TtsRecoverContent>告警名称:{{ .commonLabels.alertname }}{{if .commonLabels.clustername }} 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }} 通知策略:{{ .dispatchRuleName }} 恢复时间:{{ .endTime }} 告警内容:{{ for .alerts }} {{ .annotations.message }} {{ end }}</TtsRecoverContent>\\n <RobotContent>{{if .commonLabels.clustername }} > 集群名称:{{ .commonLabels.clustername }} {{ end }}{{if eq \\"app\\" .commonLabels._aliyun_arms_involvedObject_kind }} > 应用名称:{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}{{ for .alerts }} > {{ .annotations.message }} {{if .generatorURL }} [详情链接]({{.generatorURL}}) {{end}} {{if eq \\"true\\" .labels._aliyun_arms_is_denoise_filtered }} (疑似噪音) {{end}} {{end}}</RobotContent>\\n </NotifyTemplate>\\n <Repeat>true</Repeat>\\n <RepeatInterval>600</RepeatInterval>\\n <EscalationPolicyId>123</EscalationPolicyId>\\n <IntegrationId>34</IntegrationId>\\n </NotificationPolicies>\\n </PageBean>\\n</ListNotificationPoliciesResponse>","errorExample":""}]', + 'title' => 'ListNotificationPolicies', + ], + 'CreateOrUpdateSilencePolicy' => [ + 'summary' => 'Creates or modifies a silence policy.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'formData', + 'schema' => [ + 'title' => '静默策略ID', + 'description' => 'The ID of the silence policy.'."\n" + ."\n" + .'* If you do not configure this parameter, a new silence policy is created.'."\n" + .'* If you configure this parameter, the specified silence policy is modified.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1234', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'title' => '静默策略名称', + 'description' => 'The name of the silence policy.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'silencepolicy_test', + ], + ], + [ + 'name' => 'MatchingRules', + 'in' => 'formData', + 'schema' => [ + 'title' => '分派规则', + 'description' => 'The matching rules. The following code shows the format of matching rules:'."\n" + ."\n" + .' ['."\n" + .' {'."\n" + .' "matchingConditions": ['."\n" + .' {'."\n" + .' "value": "test", // The value of the matching condition. '."\n" + .' "key": "altertname", // The key of the matching condition. '."\n" + .' "operator": "eq" // The logical operator of the matching condition, including eq (equal to), neq (not equal to), in (contains), nin (does not contain), re (regular expression match), and nre (regular expression mismatch). '."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .' ]'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[ { "matchingConditions": [ { "value": "test", "key": "altertname", "operator": "eq" } ] } ]', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the region.', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou'."\n", + ], + ], + [ + 'name' => 'State', + 'in' => 'formData', + 'schema' => [ + 'title' => '静默策略是否启用,enable 启用,disable 停用', + 'description' => 'Specifies whether to enable the silence policy. Valid values: enable and disable.', + 'type' => 'string', + 'required' => false, + 'example' => 'enable', + ], + ], + [ + 'name' => 'EffectiveTimeType', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The effective duration of the silence policy. Valid values: PERMANENT, CUSTOM_TIME, and CYCLE_EFFECT.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'PERMANENT', + 'default' => 'PERMANENT', + 'enum' => [ + 'PERMANENT', + 'CYCLE_EFFECT', + 'CUSTOM_TIME', + ], + ], + ], + [ + 'name' => 'TimePeriod', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'The recurring period. This parameter is required when EffectiveTimeType is set to CYCLE_EFFECT. DAY: The silence policy is effective by day. WEEK: The silence policy is effective by week.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'DAY', + 'enum' => [ + 'DAY', + 'WEEK', + ], + ], + ], + [ + 'name' => 'TimeSlots', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time period during which the silence policy is effective. If you set EffectiveTimeType to CUSTOM_TIME, specify a custom time period in the following format: \\[{"startTime":"2024-08-04 22:13","endTime":"2024-08-04 22:21"}] If you set EffectiveTimeType to CYCLE_EFFECT and TimePeriod to DAY, specify a custom time period in the following format: \\[{"startTime":"22:13","endTime":"22:21"}]. The start time cannot be later than the end time. If you set EffectiveTimeType to CYCLE_EFFECT and TimePeriod to WEEK, specify a custom time period in the following format: \\[{"startWeek":"1", "endWeek":"2" "startTime":"22:13","endTime":"22:21"}]. Valid values of startWeek and endWeek: 1 to 7. The start time cannot be later than the end time.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"startTime":"2024-08-04 22:13","endTime":"2024-08-04 22:21"}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'SilencePolicy' => [ + 'title' => '静默策略对象', + 'description' => 'The silence policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'title' => '静默策略ID', + 'description' => 'The ID of the silence policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'Name' => [ + 'title' => '静默策略名称', + 'description' => 'The name of the silence policy.'."\n", + 'type' => 'string', + 'example' => 'silencepolicy_test', + ], + 'MatchingRules' => [ + 'title' => '分派规则', + 'description' => 'A list of matching rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The matching rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'MatchingConditions' => [ + 'title' => '分派条件', + 'description' => 'A list of matching conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The matching condition.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '条件字段', + 'description' => 'The key of the matching condition.'."\n", + 'type' => 'string', + 'example' => 'altertname', + ], + 'Value' => [ + 'title' => '条件字段值', + 'description' => 'The value of the matching condition.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'Operator' => [ + 'title' => '对应关系', + 'description' => 'The logical operator of the matching condition. Valid values:'."\n" + ."\n" + .'* `eq`: equal to'."\n" + .'* `neq`: not equal to'."\n" + .'* `in`: contains'."\n" + .'* `nin`: does not contain'."\n" + .'* `re`: regular expression match'."\n" + .'* `nre`: regular expression mismatch'."\n", + 'type' => 'string', + 'example' => 'eq', + ], + ], + ], + ], + ], + ], + ], + 'State' => [ + 'title' => '静默策略是否启用,enable 启用,disable 停用', + 'description' => 'Specifies whether to enable the silence policy. Valid values: enable and disable.', + 'type' => 'string', + 'example' => 'enable', + ], + 'EffectiveTimeType' => [ + 'description' => 'The effective type. Valid values: PERMANENT: The policy is effective permanently. CYCLE_EFFECT: The policy is effective cyclically. CUSTOM_TIME: The policy is effective during a custom time period.'."\n", + 'type' => 'string', + 'example' => 'PERMANENT', + ], + 'TimePeriod' => [ + 'description' => 'Effective period. Valid values: DAY: daily WEEK: weekly'."\n", + 'type' => 'string', + 'example' => 'WEEK', + ], + 'TimeSlots' => [ + 'description' => 'The time period during which the silence policy is effective.'."\n", + 'type' => 'string', + 'example' => '[{startWeek: "1", startTime: "00:00", endTime: "11:59", endWeek:"7"}]'."\n", + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"SilencePolicy\\": {\\n \\"Id\\": 1234,\\n \\"Name\\": \\"silencepolicy_test\\",\\n \\"MatchingRules\\": [\\n {\\n \\"MatchingConditions\\": [\\n {\\n \\"Key\\": \\"altertname\\",\\n \\"Value\\": \\"test\\",\\n \\"Operator\\": \\"eq\\"\\n }\\n ]\\n }\\n ],\\n \\"State\\": \\"enable\\",\\n \\"EffectiveTimeType\\": \\"PERMANENT\\",\\n \\"TimePeriod\\": \\"WEEK\\",\\n \\"TimeSlots\\": \\"[{startWeek: \\\\\\"1\\\\\\", startTime: \\\\\\"00:00\\\\\\", endTime: \\\\\\"11:59\\\\\\", endWeek:\\\\\\"7\\\\\\"}]\\\\n\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateOrUpdateSilencePolicyResponse>\\n <RequestId>A5EC8221-08F2-4C95-9AF1-49FD998C****</RequestId>\\n <SilencePolicy>\\n <Id>1234</Id>\\n <Name>silencepolicy_test</Name>\\n <MatchingRules>\\n <MatchingConditions>\\n <Key>altertname</Key>\\n <Value>test</Value>\\n <Operator>eq</Operator>\\n </MatchingConditions>\\n </MatchingRules>\\n </SilencePolicy>\\n</CreateOrUpdateSilencePolicyResponse>","errorExample":""}]', + 'title' => 'CreateOrUpdateSilencePolicy', + ], + 'DeleteSilencePolicy' => [ + 'summary' => 'Deletes a silence policy based on its ID.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'title' => '静默策略ID', + 'description' => 'The ID of the silence policy.'."\n" + ."\n" + .'For more information about how to obtain the ID of a silence policy, see [ListSilencePolicies](~~2612383~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1234', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The operation that you want to perform. Set the value to **DeleteSilencePolicy**.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + 'IsSuccess' => [ + 'title' => '删除静默策略是否成功', + 'description' => 'Indicates whether the silence policy was deleted successfully. Valid values:'."\n" + ."\n" + .'* `true`: The silence policy was deleted successfully.'."\n" + .'* `false`: The silence policy failed to be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\",\\n \\"IsSuccess\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteSilencePolicyResponse>\\n <RequestId>A5EC8221-08F2-4C95-9AF1-49FD998C****</RequestId>\\n <IsSuccess>true</IsSuccess>\\n</DeleteSilencePolicyResponse>","errorExample":""}]', + 'title' => 'DeleteSilencePolicy', + ], + 'ListEscalationPolicies' => [ + 'summary' => 'Queries the information about an escalation policy.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the escalation policy.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'prod escalation policy'."\n", + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'title' => '页数', + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'title' => '每页展示数目', + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'PageBean' => [ + 'title' => '分页对象', + 'description' => 'The returned objects.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每页展示数目', + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'EscalationPolicies' => [ + 'description' => 'The list of escalation policies.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the escalation policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the escalation policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'Name' => [ + 'description' => 'The name of the escalation policy.'."\n", + 'type' => 'string', + 'example' => 'prod escalation policy'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"EscalationPolicies\\": [\\n {\\n \\"Id\\": 1234,\\n \\"Name\\": \\"prod升级策略\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListEscalationPoliciesResponse>\\n <RequestId>78901766-3806-4E96-8E47-CFEF59E4****</RequestId>\\n <PageBean>\\n <Total>24</Total>\\n <Page>1</Page>\\n <Size>20</Size>\\n <EscalationPolicies>\\n <Id>1234</Id>\\n <Name>prod升级策略</Name>\\n </EscalationPolicies>\\n </PageBean>\\n</ListEscalationPoliciesResponse>","errorExample":""}]', + 'title' => 'ListEscalationPolicies', + ], + 'ListOnCallSchedules' => [ + 'summary' => 'Queries the information about a scheduling policy.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '排班策略名称', + 'description' => 'The name of the scheduling policy.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'OnCallSchedule_test', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'title' => '页数', + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'title' => '展示数目', + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'PageBean' => [ + 'title' => '分页对象', + 'description' => 'The objects that were returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每页展示数目', + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'OnCallSchedules' => [ + 'description' => 'The information about the scheduling policy.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the scheduling policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'title' => '排班策略ID', + 'description' => 'The ID of the scheduling policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'Name' => [ + 'title' => '排班策略名称', + 'description' => 'The name of the scheduling policy.'."\n", + 'type' => 'string', + 'example' => 'OnCallSchedule_test', + ], + 'Description' => [ + 'title' => '排班策略描述', + 'description' => 'The description of the scheduling policy.'."\n", + 'type' => 'string', + 'example' => 'Test scheduling policy'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"OnCallSchedules\\": [\\n {\\n \\"Id\\": 1234,\\n \\"Name\\": \\"OnCallSchedule_test\\",\\n \\"Description\\": \\"测试排班策略\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListOnCallSchedulesResponse>\\n <RequestId>78901766-3806-4E96-8E47-CFEF59E4****</RequestId>\\n <PageBean>\\n <Total>24</Total>\\n <Page>1</Page>\\n <Size>20</Size>\\n <OnCallSchedules>\\n <Id>1234</Id>\\n <Name>OnCallSchedule_test</Name>\\n <Description>测试排版策略</Description>\\n </OnCallSchedules>\\n </PageBean>\\n</ListOnCallSchedulesResponse>","errorExample":""}]', + 'title' => 'ListOnCallSchedules', + ], + 'GetOnCallSchedulesDetail' => [ + 'summary' => 'Queries the information about a scheduling policy.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'title' => '排班策略ID', + 'description' => 'The ID of the scheduling policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1234', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '查询排班人开始时间:yyyy-MM-dd', + 'description' => 'The date from which the shift starts. Format: `yyyy-MM-dd`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-10-01', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => 'String.Class 查询排班人结束时间:yyyy-MM-dd', + 'description' => 'The date on which the shift ends. Format: `yyyy-MM-dd`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-10-30', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '21E85B16-75A6-429A-9F65-8AAC9A54****', + ], + 'Data' => [ + 'title' => '排班策略详情信息', + 'description' => 'The information about the scheduling policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'title' => '排班策略ID', + 'description' => 'The ID of the scheduling policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'Name' => [ + 'title' => '排名策略名称', + 'description' => 'The name of the scheduling policy.'."\n", + 'type' => 'string', + 'example' => 'Scheduling policy test'."\n", + ], + 'Description' => [ + 'title' => '描述', + 'description' => 'The description of the scheduling policy.'."\n", + 'type' => 'string', + 'example' => 'Test'."\n", + ], + 'AlertRobotId' => [ + 'description' => 'The URL of the DingTalk chatbot, which is used to receive notifications about shift changes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=69d4e009547e11069c6513309414937b7bf0482fb9284125b5******', + ], + 'ScheduleLayers' => [ + 'description' => 'The information about the shift.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ContactIds' => [ + 'description' => 'The ID list of users on duty.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the user on duty.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '[123, 234, 456]', + ], + ], + 'StartTime' => [ + 'description' => 'The date on which the shift change took effect.'."\n", + 'type' => 'string', + 'example' => '2022-10-01'."\n", + ], + 'ShiftLength' => [ + 'description' => 'The shift cycle. Unit: hours.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '8', + ], + 'RotationType' => [ + 'description' => 'The type of the shift. Valid values:'."\n" + ."\n" + .'* DAY'."\n" + .'* WEEK'."\n" + .'* CUSTOM'."\n", + 'type' => 'string', + 'example' => 'DAY', + ], + 'Restrictions' => [ + 'description' => 'The limit on the time of the shift.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RestrictionType' => [ + 'description' => 'The type of the limit. Valid values:'."\n" + ."\n" + .'* daily_restriction'."\n" + .'* weekly_restriction'."\n", + 'type' => 'string', + 'example' => 'daily_restriction', + ], + 'StartTimeOfDay' => [ + 'description' => 'The start time of the shift per day.'."\n", + 'type' => 'string', + 'example' => '09:00', + ], + 'EndTimeOfDay' => [ + 'description' => 'The end time of the shift per day.'."\n", + 'type' => 'string', + 'example' => '18:00', + ], + ], + ], + ], + ], + ], + ], + 'RenderedLayerEntries' => [ + 'description' => 'The scheduled users on duty within a time range.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Start' => [ + 'description' => 'The date from which the scheduled user was supposed to start shift work.'."\n", + 'type' => 'string', + 'example' => '2022-10-01', + ], + 'End' => [ + 'description' => 'The date on which the scheduled user was supposed to complete shift work.'."\n", + 'type' => 'string', + 'example' => '2022-10-30', + ], + 'SimpleContact' => [ + 'description' => 'The information about the scheduled user.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the scheduled user.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'Name' => [ + 'description' => 'The name of the scheduled user.'."\n", + 'type' => 'string', + 'example' => 'Employee 1'."\n", + ], + ], + ], + ], + ], + ], + ], + 'RenderedSubstitudeEntries' => [ + 'description' => 'The information about the substitutes within a time range.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Start' => [ + 'description' => 'The date from which the substitute was supposed to start shift work.'."\n", + 'type' => 'string', + 'example' => '2022-10-01', + ], + 'End' => [ + 'description' => 'The date on which the substitute was supposed to complete shift work.'."\n", + 'type' => 'string', + 'example' => '2022-10-30', + ], + 'SimpleContact' => [ + 'description' => 'The information about the substitute.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the substitute.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '234', + ], + 'Name' => [ + 'description' => 'The name of the substitute.'."\n", + 'type' => 'string', + 'example' => 'Employee 2'."\n", + ], + ], + ], + ], + ], + ], + 'RenderedFinnalEntries' => [ + 'description' => 'The information about the final user on duty.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Start' => [ + 'description' => 'The date from which the user started shift work.'."\n", + 'type' => 'string', + 'example' => '2022-10-01', + ], + 'End' => [ + 'description' => 'The date on which the user completed shift work.'."\n", + 'type' => 'string', + 'example' => '2022-10-30', + ], + 'SimpleContact' => [ + 'description' => 'The information about the user on duty.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the user on duty.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'Name' => [ + 'description' => 'The name of the user on duty.'."\n", + 'type' => 'string', + 'example' => 'Employee 1'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"21E85B16-75A6-429A-9F65-8AAC9A54****\\",\\n \\"Data\\": {\\n \\"Id\\": 1234,\\n \\"Name\\": \\"排班策略测试\\",\\n \\"Description\\": \\"测试\\",\\n \\"AlertRobotId\\": 0,\\n \\"ScheduleLayers\\": [\\n {\\n \\"ContactIds\\": [\\n 0\\n ],\\n \\"StartTime\\": \\"2022-10-01\\\\n\\",\\n \\"ShiftLength\\": 8,\\n \\"RotationType\\": \\"DAY\\",\\n \\"Restrictions\\": [\\n {\\n \\"RestrictionType\\": \\"daily_restriction\\",\\n \\"StartTimeOfDay\\": \\"09:00\\",\\n \\"EndTimeOfDay\\": \\"18:00\\"\\n }\\n ]\\n }\\n ],\\n \\"RenderedLayerEntries\\": [\\n [\\n {\\n \\"Start\\": \\"2022-10-01\\",\\n \\"End\\": \\"2022-10-30\\",\\n \\"SimpleContact\\": {\\n \\"Id\\": 123,\\n \\"Name\\": \\"员工1\\"\\n }\\n }\\n ]\\n ],\\n \\"RenderedSubstitudeEntries\\": [\\n {\\n \\"Start\\": \\"2022-10-01\\",\\n \\"End\\": \\"2022-10-30\\",\\n \\"SimpleContact\\": {\\n \\"Id\\": 234,\\n \\"Name\\": \\"员工2\\"\\n }\\n }\\n ],\\n \\"RenderedFinnalEntries\\": [\\n {\\n \\"Start\\": \\"2022-10-01\\",\\n \\"End\\": \\"2022-10-30\\",\\n \\"SimpleContact\\": {\\n \\"Id\\": 123,\\n \\"Name\\": \\"员工1\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetOnCallSchedulesDetail', + ], + 'ListSilencePolicies' => [ + 'summary' => 'Queries the information of a silence policy list.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'title' => '静默策略名称', + 'description' => 'The name of the silence policy.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'silencepolicy_test', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'title' => '页数', + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'title' => '每页战术数目', + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'IsDetail', + 'in' => 'query', + 'schema' => [ + 'title' => '是否查询详情信息', + 'description' => 'Specifies whether to query the details of a silence policy. Valid values:'."\n" + ."\n" + .'* `true`: Details of the silence policy are queried.'."\n" + .'* `false`: Details about notification policies are not queried.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + 'PageBean' => [ + 'title' => '分页对象', + 'description' => 'The returned pages.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The number of silence policies that were returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The number of the page returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每页数目', + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'SilencePolicies' => [ + 'title' => '静默策略列表', + 'description' => 'The queried silence policies.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'A silence policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'title' => '静默策略ID', + 'description' => 'The ID of the silence policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'Name' => [ + 'title' => '静默策略名称', + 'description' => 'The name of the silence policy.'."\n", + 'type' => 'string', + 'example' => 'silencepolicy_test', + ], + 'MatchingRules' => [ + 'title' => '事件匹配规则列表', + 'description' => 'The matching rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The matching rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'MatchingConditions' => [ + 'title' => '匹配条件', + 'description' => 'The matching conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'An array of matching condition objects.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '条件字段', + 'description' => 'The key of the matching condition.'."\n", + 'type' => 'string', + 'example' => 'altertname', + ], + 'Value' => [ + 'title' => '条件字段值', + 'description' => 'The value of the matching condition.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'Operator' => [ + 'title' => '对应关系', + 'description' => 'The logical operator of the matching condition. Valid values:'."\n" + ."\n" + .'* `eq`: equal to'."\n" + .'* `neq`: not equal to'."\n" + .'* `in`: contains'."\n" + .'* `nin`: does not contain'."\n" + .'* `re`: regular expression match'."\n" + .'* `nre`: regular expression mismatch'."\n", + 'type' => 'string', + 'example' => 'eq', + ], + ], + ], + ], + ], + ], + ], + 'State' => [ + 'title' => '静默策略是否启用,enable 启用,disable 停用', + 'description' => 'Indicates whether the silence policy is enabled. Valid values: enable and disable.'."\n", + 'type' => 'string', + 'example' => 'enable', + ], + 'TimeSlots' => [ + 'description' => 'Effective period.'."\n", + 'type' => 'string', + 'example' => '[{"endTime":"00:00","endWeek":"7","startTime":"00:00","startWeek":"1"}]', + ], + 'TimePeriod' => [ + 'description' => 'The effective time. Valid values: WEEK: weekly DAY: daily'."\n", + 'type' => 'string', + 'example' => 'WEEK', + ], + 'EffectiveTimeType' => [ + 'description' => 'The effective type. Valid values: PERMANENT: The policy is effective permanently. CYCLE_EFFECT: The policy is effective cyclically. CUSTOM_TIME: The policy is effective during a custom time period.'."\n", + 'type' => 'string', + 'example' => 'PERMANENT', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"SilencePolicies\\": [\\n {\\n \\"Id\\": 123,\\n \\"Name\\": \\"silencepolicy_test\\",\\n \\"MatchingRules\\": [\\n {\\n \\"MatchingConditions\\": [\\n {\\n \\"Key\\": \\"altertname\\",\\n \\"Value\\": \\"test\\",\\n \\"Operator\\": \\"eq\\"\\n }\\n ]\\n }\\n ],\\n \\"State\\": \\"enable\\",\\n \\"TimeSlots\\": \\"[{\\\\\\"endTime\\\\\\":\\\\\\"00:00\\\\\\",\\\\\\"endWeek\\\\\\":\\\\\\"7\\\\\\",\\\\\\"startTime\\\\\\":\\\\\\"00:00\\\\\\",\\\\\\"startWeek\\\\\\":\\\\\\"1\\\\\\"}]\\",\\n \\"TimePeriod\\": \\"WEEK\\",\\n \\"EffectiveTimeType\\": \\"PERMANENT\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListSilencePoliciesResponse>\\n <RequestId>78901766-3806-4E96-8E47-CFEF59E4****</RequestId>\\n <PageBean>\\n <Total>1</Total>\\n <Page>1</Page>\\n <Size>20</Size>\\n <SilencePolicies>\\n <Id>123</Id>\\n <Name>silencepolicy_test</Name>\\n <MatchingRules>\\n <MatchingConditions>\\n <Key>altertname</Key>\\n <Value>test</Value>\\n <Operator>eq</Operator>\\n </MatchingConditions>\\n </MatchingRules>\\n </SilencePolicies>\\n </PageBean>\\n</ListSilencePoliciesResponse>","errorExample":""}]', + 'title' => 'ListSilencePolicies', + ], + 'ListAlerts' => [ + 'summary' => 'Queries the alert sending history.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'AlertName', + 'in' => 'query', + 'schema' => [ + 'title' => '告警名称', + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Test alert'."\n", + ], + ], + [ + 'name' => 'State', + 'in' => 'query', + 'schema' => [ + 'title' => '告警状态(0 - 待处理, 1 - 处理中, 2 - 已处理)', + 'description' => 'The status of the alert. Valid values:'."\n" + ."\n" + .'* 0: The alert is pending.'."\n" + .'* 1: The alert is being handled.'."\n" + .'* 2: The alert is handled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2', + ], + ], + [ + 'name' => 'Severity', + 'in' => 'query', + 'schema' => [ + 'title' => '告警等级(P1~P6)', + 'description' => 'The severity level of the alert. Valid values: P6, P5, P4, P3, P2, and P1. The preceding values are listed in ascending order of severity.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'P6', + ], + ], + [ + 'name' => 'DispatchRuleId', + 'in' => 'query', + 'schema' => [ + 'title' => '通知策略ID', + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '12345', + ], + ], + [ + 'name' => 'IntegrationType', + 'in' => 'query', + 'schema' => [ + 'title' => '集成类型', + 'description' => 'The integration type.'."\n" + ."\n" + .'* ARMS'."\n" + .'* CLOUD_MONITOR'."\n" + .'* MSE'."\n" + .'* ARMS_CLOUD_DIALTEST'."\n" + .'* PROMETHEUS'."\n" + .'* LOG_SERVICE'."\n" + .'* CUSTOM'."\n" + .'* ARMS_PROMETHEUS'."\n" + .'* ARMS_APP_MON'."\n" + .'* ARMS_FRONT_MON'."\n" + .'* ARMS_CUSTOM'."\n" + .'* XTRACE'."\n" + .'* GRAFANA'."\n" + .'* ZABBIX'."\n" + .'* SKYWALKING'."\n" + .'* EVENT_BRIDGE'."\n" + .'* NAGIOS'."\n" + .'* OPENFALCON'."\n" + .'* ARMS_INSIGHTS'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ARMS_APP_MON', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '查询告警发送历史记录的开始时间,时间格式:YYYY-MM-DD HH:mm:ss', + 'description' => 'The start time of the alert sending history that you want to query. Specify the time in the `YYYY-MM-DD HH:mm:ss` format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2021-12-10 00:00:00', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '查询告警发送历史记录的开始时间,时间格式:YYYY-MM-DD HH:mm:ss', + 'description' => 'The end time of the alert sending history that you want to query. Specify the time in the `YYYY-MM-DD HH:mm:ss` format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2021-12-22 23:59:59', + ], + ], + [ + 'name' => 'ShowEvents', + 'in' => 'query', + 'schema' => [ + 'title' => '默认不查事件,showEvents=true才查', + 'description' => 'Specifies whether to query the events that correspond to alerts. Valid values:'."\n" + ."\n" + .'* `false` (default value): The events are not queried.'."\n" + .'* `true`: The events are queried.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'ShowActivities', + 'in' => 'query', + 'schema' => [ + 'title' => '默认不查活动记录,showActivities=true才查,只查最近3天的内容', + 'description' => 'Specifies whether to query the activities that correspond to alerts. Valid values:'."\n" + ."\n" + .'* `false` (default value): The activities are not queried.'."\n" + .'* `true`: The activities in the last three days are queried.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'title' => '页数', + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Size', + 'in' => 'query', + 'schema' => [ + 'title' => '每页展示数目', + 'description' => 'The number of alerts to return on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Owner', + 'in' => 'query', + 'schema' => [ + 'description' => 'The notification object configured in the notification policy, responsible for handling alerts.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Alice', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => '请求ID', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '2FC13182-B9AF-4E6B-BE51-72669B7C****', + ], + 'PageBean' => [ + 'title' => '返回结构体', + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'title' => '总数', + 'description' => 'The total number of queried alerts.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Page' => [ + 'title' => '页数', + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Size' => [ + 'title' => '每页展示数目', + 'description' => 'The number of alerts returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'ListAlerts' => [ + 'title' => '告警发送历史信息组', + 'description' => 'The queried alert notification history records.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The object struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlertName' => [ + 'title' => '告警名称', + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'Test alert'."\n", + ], + 'Severity' => [ + 'title' => '告警等级(P1~P6)', + 'description' => 'The severity level of the alert. Valid values: P6, P5, P4, P3, P2, and P1. The preceding values are listed in ascending order of severity.'."\n", + 'type' => 'string', + 'example' => 'P6', + ], + 'State' => [ + 'title' => '告警状态(0 - 待处理, 1 - 处理中, 2 - 已处理)', + 'description' => 'The status of the alert. Valid values:'."\n" + ."\n" + .'* 0: The alert is pending.'."\n" + .'* 1: The alert is being handled.'."\n" + .'* 2: The alert is handled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'DispatchRuleId' => [ + 'title' => '通知策略ID', + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '12345', + ], + 'DispatchRuleName' => [ + 'title' => '通知策略名称', + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'DingTalk Notification'."\n", + ], + 'CreateTime' => [ + 'title' => '创建时间', + 'description' => 'The time when the alert was created.'."\n", + 'type' => 'string', + 'example' => '2022-01-18 00:21:35', + ], + 'Activities' => [ + 'title' => '活动列表', + 'description' => 'The list of activities.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of each activity.'."\n", + 'type' => 'object', + 'properties' => [ + 'Time' => [ + 'title' => '时间', + 'description' => 'The operation time of the activity.'."\n", + 'type' => 'string', + 'example' => '2021-12-20 19:08:57', + ], + 'Type' => [ + 'title' => '活动类型', + 'description' => 'The type of the activity. Valid values:'."\n" + ."\n" + .'* 1: The alert is claimed.'."\n" + .'* 2: The alert is disclaimed.'."\n" + .'* 3: A comment is added for the alert.'."\n" + .'* 4: The alert is disabled.'."\n" + .'* 5: An alert notification is sent.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'HandlerName' => [ + 'title' => '处理人名称', + 'description' => 'The name of the handler.'."\n", + 'type' => 'string', + 'example' => 'O\\&M Engineer A'."\n", + ], + 'Description' => [ + 'title' => '描述', + 'description' => 'The description of the activity.'."\n", + 'type' => 'string', + 'example' => '\\[Alert Claimed] The alert is claimed'."\n", + ], + 'Content' => [ + 'title' => '通知内容', + 'description' => 'The content of the alert notification.'."\n", + 'type' => 'string', + 'example' => '\\[Notification policy: Send notifications to DingTalk groups] Host monitoring. Host IP address: 10.76.XX.XX. Average memory usage of the host in the last 1 minute ≥ 1.0%. Current value: 84.7454%.'."\n", + ], + ], + ], + ], + 'AlertEvents' => [ + 'title' => '事件列表', + 'description' => 'The list of events.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of each event.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlertName' => [ + 'title' => '事件名称', + 'description' => 'The name of the event.'."\n", + 'type' => 'string', + 'example' => 'Test-triggered alert'."\n", + ], + 'Severity' => [ + 'title' => '事件等级', + 'description' => 'The severity level of the event. Valid values:'."\n" + ."\n" + .'* critical'."\n" + .'* error'."\n" + .'* warning'."\n" + .'* info'."\n", + 'type' => 'string', + 'example' => 'warning', + ], + 'State' => [ + 'title' => '告警状态Active("Active"), * Inhibited("Inhibited"), * Silenced("Silenced"), * Resolved("Resolved")', + 'description' => 'The status of the event. Valid values:'."\n" + ."\n" + .'* Active: The event is not cleared.'."\n" + .'* Silenced: The event is silenced.'."\n" + .'* Resolved: The event is cleared.'."\n", + 'type' => 'string', + 'example' => 'Active', + ], + 'StartTime' => [ + 'title' => '开始时间', + 'description' => 'The time when the event started.'."\n", + 'type' => 'string', + 'example' => '2022-01-18 00:14:00', + ], + 'EndTime' => [ + 'title' => '结束时间', + 'description' => 'The time when the event ended.'."\n", + 'type' => 'string', + 'example' => '2022-01-19 17:10:31', + ], + 'ReceiveTime' => [ + 'title' => '事件接受时间', + 'description' => 'The time when the event was created.'."\n", + 'type' => 'string', + 'example' => '2022-01-19 17:05:42', + ], + 'IntegrationName' => [ + 'title' => '集成名称', + 'description' => 'The name of the integration that corresponds to the alert event.'."\n", + 'type' => 'string', + 'example' => 'ARMS', + ], + 'IntegrationType' => [ + 'title' => '集成类型', + 'description' => 'The type of the integration that corresponds to the alert event. Valid values:'."\n" + ."\n" + .'* ARMS'."\n" + .'* CLOUD_MONITOR'."\n" + .'* MSE'."\n" + .'* ARMS_CLOUD_DIALTEST'."\n" + .'* PROMETHEUS'."\n" + .'* LOG_SERVICE'."\n" + .'* CUSTOM'."\n" + .'* ARMS_PROMETHEUS'."\n" + .'* ARMS_APP_MON'."\n" + .'* ARMS_FRONT_MON'."\n" + .'* ARMS_CUSTOM'."\n" + .'* XTRACE'."\n" + .'* GRAFANA'."\n" + .'* ZABBIX'."\n" + .'* SKYWALKING'."\n" + .'* EVENT_BRIDGE'."\n" + .'* NAGIOS'."\n" + .'* OPENFALCON'."\n" + .'* ARMS_INSIGHTS'."\n", + 'type' => 'string', + 'example' => 'ARMS_APP_MON', + ], + 'GeneratorURL' => [ + 'title' => '事件地址', + 'description' => 'The URL of the event.'."\n", + 'type' => 'string', + 'example' => 'http://arms.console.aliyun.com', + ], + 'Description' => [ + 'title' => '事件描述', + 'description' => 'The description of the event.'."\n", + 'type' => 'string', + 'example' => 'Host monitoring. Host IP address: 10.76.XX.XX. Average memory usage of the host in the last 1 minute ≥ 1.0%. Current value: 84.7454%.'."\n", + ], + 'Annotations' => [ + 'description' => 'The annotations.'."\n", + 'type' => 'string', + 'example' => '{ "_aliyun_arms_alert_value":"4.0" "_aliyun_arms_alert_traceId":"ac10c43116421327442277073d5461-105075299"}', + 'title' => '', + ], + 'Labels' => [ + 'title' => '标签列表', + 'description' => 'The tags.'."\n", + 'type' => 'string', + 'example' => '{ "severity":"warning" "_aliyun_arms_alert_level":"ERROR" "_aliyun_arms_entropy":"0.30170457417889235"}', + ], + ], + ], + ], + 'AlertId' => [ + 'title' => '告警ID', + 'description' => 'The alert ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2279', + ], + 'Solution' => [ + 'title' => '告警解决方案', + 'description' => 'The Alert solution.', + 'type' => 'string', + 'example' => '--', + ], + 'Owner' => [ + 'description' => 'The notification object configured in the notification policy, responsible for handling alerts.', + 'type' => 'string', + 'example' => 'Alice', + ], + 'Handler' => [ + 'description' => 'Alarm handler.', + 'type' => 'string', + 'example' => 'Alice', + ], + 'AcknowledgeTime' => [ + 'description' => 'Time to claim the alarm.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '-1', + 'default' => '-1', + ], + 'RecoverTime' => [ + 'description' => 'Alarm recovery time.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '-1', + 'default' => '-1', + ], + 'NotifyRobots' => [ + 'description' => 'The contact card of an instant messaging app.'."\n", + 'type' => 'string', + 'example' => 'Test Robot', + ], + 'Describe' => [ + 'description' => 'The description of a event execution status.'."\n", + 'type' => 'string', + 'example' => '[Notification Strategy: ARMS Front-end Alarm]\\nPage Indicator Page Name: Home JS Error Number Average in the last 5 minutes >= 1.0 times, current value 1.0000 times\\n', + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'description' => 'The returned error message.'."\n", + 'type' => 'string', + 'example' => 'alert.manager.error.code.signature.invalid', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2FC13182-B9AF-4E6B-BE51-72669B7C****\\",\\n \\"PageBean\\": {\\n \\"Total\\": 1,\\n \\"Page\\": 1,\\n \\"Size\\": 20,\\n \\"ListAlerts\\": [\\n {\\n \\"AlertName\\": \\"告警测试\\",\\n \\"Severity\\": \\"P6\\",\\n \\"State\\": 0,\\n \\"DispatchRuleId\\": 12345,\\n \\"DispatchRuleName\\": \\"钉群通知\\",\\n \\"CreateTime\\": \\"2022-01-18 00:21:35\\",\\n \\"Activities\\": [\\n {\\n \\"Time\\": \\"2021-12-20 19:08:57\\",\\n \\"Type\\": 1,\\n \\"HandlerName\\": \\"运维A\\",\\n \\"Description\\": \\"[告警认领]认领了该告警\\",\\n \\"Content\\": \\"【通知策略: 钉群通知】 主机监控 节点机IP: 10.76.XX.XX 节点机内存利用率最近1分钟求平均 >= 1.0 %, 当前值84.7454 %\\"\\n }\\n ],\\n \\"AlertEvents\\": [\\n {\\n \\"AlertName\\": \\"测试触发的告警\\",\\n \\"Severity\\": \\"warning\\",\\n \\"State\\": \\"Active\\",\\n \\"StartTime\\": \\"2022-01-18 00:14:00\\",\\n \\"EndTime\\": \\"2022-01-19 17:10:31\\",\\n \\"ReceiveTime\\": \\"2022-01-19 17:05:42\\",\\n \\"IntegrationName\\": \\"ARMS\\",\\n \\"IntegrationType\\": \\"ARMS_APP_MON\\",\\n \\"GeneratorURL\\": \\"http://arms.console.aliyun.com\\",\\n \\"Description\\": \\"主机监控 节点机IP: 10.76.XX.XX 节点机内存利用率最近1分钟求平均 >= 1.0 %, 当前值84.7454 %\\",\\n \\"Annotations\\": \\"{ \\\\\\"_aliyun_arms_alert_value\\\\\\":\\\\\\"4.0\\\\\\" \\\\\\"_aliyun_arms_alert_traceId\\\\\\":\\\\\\"ac10c43116421327442277073d5461-105075299\\\\\\"}\\",\\n \\"Labels\\": \\"{ \\\\\\"severity\\\\\\":\\\\\\"warning\\\\\\" \\\\\\"_aliyun_arms_alert_level\\\\\\":\\\\\\"ERROR\\\\\\" \\\\\\"_aliyun_arms_entropy\\\\\\":\\\\\\"0.30170457417889235\\\\\\"}\\"\\n }\\n ],\\n \\"AlertId\\": 2279,\\n \\"Solution\\": \\"重启解决\\",\\n \\"Owner\\": \\"通知策略中配置的联系人通知对象\\",\\n \\"Handler\\": \\"认领、关闭告警的处理人\\",\\n \\"AcknowledgeTime\\": 0,\\n \\"RecoverTime\\": 0,\\n \\"NotifyRobots\\": \\"钉钉的名片。\\",\\n \\"Describe\\": \\"[告警通知]通过[webhook]通知了xxx(成功)\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"alert.manager.error.code.signature.invalid\\"\\n}","errorExample":""},{"type":"xml","example":"<ListAlertsResponse>\\n <RequestId>2FC13182-B9AF-4E6B-BE51-72669B7C****</RequestId>\\n <PageBean>\\n <Total>1</Total>\\n <Page>1</Page>\\n <Size>20</Size>\\n <ListAlerts>\\n <AlertName>告警测试</AlertName>\\n <Severity>P6</Severity>\\n <State>0</State>\\n <DispatchRuleId>12345</DispatchRuleId>\\n <DispatchRuleName>钉群通知</DispatchRuleName>\\n <CreateTime>2022-01-18 00:21:35</CreateTime>\\n <Activities>\\n <Time>2021-12-20 19:08:57</Time>\\n <Type>1</Type>\\n <HandlerName>运维A</HandlerName>\\n <Description>[告警认领]认领了该告警</Description>\\n <Content>【通知策略: 钉群通知】 主机监控 节点机IP: 10.76.XX.XX 节点机内存利用率最近1分钟求平均 >= 1.0 %, 当前值84.7454 %</Content>\\n </Activities>\\n <AlertEvents>\\n <AlertName>测试触发的告警</AlertName>\\n <Severity>warning</Severity>\\n <State>Active</State>\\n <StartTime>2022-01-18 00:14:00</StartTime>\\n <EndTime>2022-01-19 17:10:31</EndTime>\\n <ReceiveTime>2022-01-19 17:05:42</ReceiveTime>\\n <IntegrationName>ARMS</IntegrationName>\\n <IntegrationType>ARMS_APP_MON</IntegrationType>\\n <GeneratorURL>http://arms.console.aliyun.com</GeneratorURL>\\n <Description>主机监控 节点机IP: 10.76.XX.XX 节点机内存利用率最近1分钟求平均 >= 1.0 %, 当前值84.7454 %</Description>\\n <Annotations>{ \\"_aliyun_arms_alert_value\\":\\"4.0\\" \\"_aliyun_arms_alert_traceId\\":\\"ac10c43116421327442277073d5461-105075299\\"}</Annotations>\\n <Labels>{ \\"severity\\":\\"warning\\" \\"_aliyun_arms_alert_level\\":\\"ERROR\\" \\"_aliyun_arms_entropy\\":\\"0.30170457417889235\\"}</Labels>\\n </AlertEvents>\\n </ListAlerts>\\n </PageBean>\\n</ListAlertsResponse>","errorExample":""}]', + 'title' => 'ListAlerts', + ], + 'BlockAlarmNotification' => [ + 'summary' => 'Blocks alert notifications. After an alert is blocked, no more notifications are sent within the specified time range.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AlarmId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert.'."\n" + ."\n" + .'For more information about how to obtain the ID of an alert, see [ListAlertEvents](~~2612346~~).', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '133', + ], + ], + [ + 'name' => 'Timeout', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of seconds that elapse before alert notifications are blocked. Unit: seconds.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '180', + ], + ], + [ + 'name' => 'HandlerId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert handler.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2044049', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '626037F5-FDEB-45B0-804C-B3C92797****', + ], + 'Result' => [ + '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. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"626037F5-FDEB-45B0-804C-B3C92797****\\",\\n \\"Result\\": true,\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'BlockAlarmNotification', + ], + 'ChangeAlarmSeverity' => [ + 'summary' => 'Modifies the severity level of an alert.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AlarmId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert.'."\n" + ."\n" + .'For more information about how to obtain the ID of an alert, see [ListAlertEvents](~~2612346~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '155', + ], + ], + [ + 'name' => 'Severity', + 'in' => 'query', + 'schema' => [ + 'description' => 'The severity level of the alert. Valid values: P1, P2, P3, and P4. P4 indicates the lowest severity, whereas P1 indicates the highest severity.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'P1', + 'enum' => [ + 'P1', + 'P2', + 'P3', + 'P4', + ], + ], + ], + [ + 'name' => 'HandlerId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the handler.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2046076', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'F7781D4A-2818-41E7-B7BB-79D809E9****', + ], + 'Result' => [ + 'description' => 'Indicates whether the severity level was modified.'."\n" + ."\n" + .'- `true`: The severity level was modified.'."\n" + .'- `false`: The severity level failed to be modified.', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- true'."\n" + .'- false', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The returned message.', + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F7781D4A-2818-41E7-B7BB-79D809E9****\\",\\n \\"Result\\": true,\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'ChangeAlarmSeverity', + ], + 'CloseAlarm' => [ + 'summary' => 'Disables an alert. Make sure that the alert is resolved before you disable the alert. If an alert is not resolved, new alerts can be triggered even after the alert is disabled.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AlarmId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert.'."\n" + ."\n" + .'For more information about how to obtain the ID of an alert, see [ListAlertEvents](~~2612346~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '163', + ], + ], + [ + 'name' => 'Solution', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alert solution.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Restart Repair', + ], + ], + [ + 'name' => 'HandlerId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert handler.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2048065', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '46355DD8-FC56-40C5-BFC6-269DE4F9****', + ], + 'Result' => [ + '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. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'True', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"46355DD8-FC56-40C5-BFC6-269DE4F9****\\",\\n \\"Result\\": true,\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'CloseAlarm', + ], + 'ClaimAlarm' => [ + 'summary' => 'Claims an alert. This operation can be used together with escalation policies. When multiple handlers are involved in alert management, each handler can call this operation to claim alerts. After an alert is claimed, the alert enters the Being Processed state.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AlarmId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert.'."\n" + ."\n" + .'For more information about how to obtain the ID of an alert, see [ListAlertEvents](~~2612346~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '30', + ], + ], + [ + 'name' => 'HandlerId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the handler.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2046076', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '6A9AEA84-7186-4D8D-B498-4585C6A2****', + ], + 'Result' => [ + '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. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'`true`'."\n" + ."\n" + .'`false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6A9AEA84-7186-4D8D-B498-4585C6A2****\\",\\n \\"Result\\": true,\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'ClaimAlarm', + ], + 'CreatePrometheusAlertRule' => [ + 'summary' => 'Creates an alert rule.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AlertName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Prometheus_Alert', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'c0bad479465464e1d8c1e641b0afb****', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the alert rule. Valid values:'."\n" + ."\n" + .'- 99: custom alert'."\n" + .'- 101: Prometheus Service alert', + 'type' => 'string', + 'required' => false, + 'example' => '101', + ], + ], + [ + 'name' => 'NotifyType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The method that is used to send alert notifications. Valid values:'."\n" + ."\n" + .'- `ALERT_MANAGER`: Alert notifications are sent by Operation Center. This is the default value.'."\n" + .'- `DISPATCH_RULE`: Alert notifications are sent based on the specified notification policy.', + 'type' => 'string', + 'required' => false, + 'example' => 'ALERT_MANAGER', + ], + ], + [ + 'name' => 'DispatchRuleId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the notification policy. This parameter is required if the NotifyType parameter is set to `DISPATCH_RULE`.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10282', + ], + ], + [ + 'name' => 'Expression', + 'in' => 'query', + 'schema' => [ + 'description' => 'The expression of the alert rule. The expression must follow the PromQL syntax.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\"pod_name\\", \\"$1\\", \\"pod\\", \\"(.*)\\")) by (pod_name))>75', + ], + ], + [ + 'name' => 'Duration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The duration. The value ranges from 1 to 1440 minutes.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '10m', + ], + ], + [ + 'name' => 'Message', + 'in' => 'query', + 'schema' => [ + 'description' => 'The content of the alert notification. Tags can be referenced in the {{$labels.xxx}} format.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'The CPU utilization of ${{$labels.pod_name}} has exceeded 80%. Current value: {{$value}}%'."\n", + ], + ], + [ + 'name' => 'Labels', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tags that are described in a JSON string. You must specify the name and value of each tag.', + 'type' => 'string', + 'required' => false, + 'example' => '[{"Value": "critical","Name": "severity"}]', + ], + ], + [ + 'name' => 'Annotations', + 'in' => 'query', + 'schema' => [ + 'description' => 'The annotations that are described in a JSON string. You must specify the name and value of each annotation.', + 'type' => 'string', + 'required' => false, + 'example' => '[{"Value": "xxx","Name": "description"}]', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'type', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'value1', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '9FEA6D00-317F-45E3-9004-7FB8B0B7****', + ], + 'PrometheusAlertRule' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'Indicates whether the alert rule is enabled. Valid values:'."\n" + ."\n" + .'- `1`: The alert rule is enabled.'."\n" + .'- `0`: The alert rule is disabled.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Type' => [ + 'description' => 'The type of the alert rule.', + 'type' => 'string', + 'example' => 'Kubernetes component alert'."\n", + ], + 'NotifyType' => [ + 'description' => 'The method that is used to send alert notifications. Valid values:'."\n" + ."\n" + .'- ALERT_MANAGER: Alert notifications are sent by Operation Center.'."\n" + .'- DISPATCH_RULE: Alert notifications are sent based on the specified notification policy.', + 'type' => 'string', + 'example' => 'ALERT_MANAGER', + ], + 'Expression' => [ + 'description' => 'The expression of the alert rule.', + 'type' => 'string', + 'example' => '100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\"pod_name\\", \\"$1\\", \\"pod\\", \\"(.*)\\")) by (pod_name))>75', + ], + 'Message' => [ + 'description' => 'The content of the alert notification. Tags can be referenced in the {{$labels.xxx}} format.', + 'type' => 'string', + 'example' => 'The CPU utilization of ${{$labels.pod_name}} has exceeded 80%. Current value: {{$value}}%'."\n", + ], + 'Duration' => [ + 'description' => 'The duration. The value ranges from 1 to 1440 minutes.'."\n", + 'type' => 'string', + 'example' => '10m', + ], + 'DispatchRuleId' => [ + 'description' => 'The ID of the notification policy.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10282', + ], + 'AlertName' => [ + 'description' => 'The name of the alert rule.', + 'type' => 'string', + 'example' => 'Prometheus_Alert', + ], + 'AlertId' => [ + 'description' => 'The ID of the alert rule.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3888704', + ], + 'ClusterId' => [ + 'description' => 'The ID of the cluster.', + 'type' => 'string', + 'example' => 'c0bad479465464e1d8c1e641b0afb****', + ], + 'Labels' => [ + 'description' => 'The tags of the alert rule.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the tag.'."\n", + 'type' => 'string', + 'example' => 'severity', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => 'critical', + ], + ], + 'description' => 'The tags of the alert rule.'."\n", + ], + ], + 'Annotations' => [ + 'description' => 'The annotations of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The annotation of the alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the annotation.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Value' => [ + 'description' => 'The value of the annotation.'."\n", + 'type' => 'string', + 'example' => 'The CPU utilization of ${{$labels.pod_name}} has exceeded 80%. Current value: {{$value}}%', + ], + ], + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9FEA6D00-317F-45E3-9004-7FB8B0B7****\\",\\n \\"PrometheusAlertRule\\": {\\n \\"Status\\": 1,\\n \\"Type\\": \\"Kubernetes组件告警\\",\\n \\"NotifyType\\": \\"ALERT_MANAGER\\",\\n \\"Expression\\": \\"100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\\\\\\\\\\\\\"pod_name\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"$1\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"pod\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"(.*)\\\\\\\\\\\\\\")) by (pod_name))>75\\",\\n \\"Message\\": \\"${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%\\",\\n \\"Duration\\": \\"10m\\",\\n \\"DispatchRuleId\\": 10282,\\n \\"AlertName\\": \\"Prometheus_Alert\\",\\n \\"AlertId\\": 3888704,\\n \\"ClusterId\\": \\"c0bad479465464e1d8c1e641b0afb****\\",\\n \\"Labels\\": [\\n {\\n \\"Name\\": \\"severity\\",\\n \\"Value\\": \\"critical\\"\\n }\\n ],\\n \\"Annotations\\": [\\n {\\n \\"Name\\": \\"message\\",\\n \\"Value\\": \\"${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%\\"\\n }\\n ]\\n },\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<CreatePrometheusAlertRuleResponse>\\n <RequestId>9FEA6D00-317F-45E3-9004-7FB8B0B7****</RequestId>\\n <PrometheusAlertRule>\\n <Status>1</Status>\\n <Type>Kubernetes组件告警</Type>\\n <NotifyType>ALERT_MANAGER</NotifyType>\\n <Expression>100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\\\\\"pod_name\\\\\\", \\\\\\"$1\\\\\\", \\\\\\"pod\\\\\\", \\\\\\"(.*)\\\\\\")) by (pod_name))&gt;75</Expression>\\n <Message>${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%</Message>\\n <Duration>1m</Duration>\\n <DispatchRuleId>10282</DispatchRuleId>\\n <AlertName>Prometheus_Alert</AlertName>\\n <AlertId>3888704</AlertId>\\n <ClusterId>c0bad479465464e1d8c1e641b0afb****</ClusterId>\\n <Labels>\\n <Name>severity</Name>\\n <Value>critical</Value>\\n </Labels>\\n <Annotations>\\n <Name>message</Name>\\n <Value>${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%</Value>\\n </Annotations>\\n </PrometheusAlertRule>\\n</CreatePrometheusAlertRuleResponse>","errorExample":""}]', + 'title' => 'CreatePrometheusAlertRule', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeletePrometheusAlertRule' => [ + 'summary' => 'Deletes an alert rule of Prometheus Service.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'AlertId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert rule. You can call the ListPrometheusAlertRules operation to query the ID of the alert rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'minimum' => '0', + 'example' => '3888704', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster ID of the Prometheus monitoring alarm rule.', + 'type' => 'string', + 'required' => false, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the alert rule was deleted. Valid values:'."\n" + ."\n" + .'* `true`: The alert rule was deleted.'."\n" + .'* `false`: The alert rule failed to be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '9FEA6D00-317F-45E3-9004-7FB8B0B7****', + ], + 'Code' => [ + 'description' => 'Status code. 200 means success, other status codes are exceptions.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'More Information.', + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Success\\": true,\\n \\"RequestId\\": \\"9FEA6D00-317F-45E3-9004-7FB8B0B7****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<DeletePrometheusAlertRuleResponse>\\n <RequestId>9FEA6D00-317F-45E3-9004-7FB8B0B7****</RequestId>\\n <Success>true</Success>\\n</DeletePrometheusAlertRuleResponse>","errorExample":""}]', + 'title' => 'DeletePrometheusAlertRule', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UpdatePrometheusAlertRule' => [ + 'summary' => 'Updates a Prometheus alert rule.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AlertName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the alert rule.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Prometheus_Alert', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The cluster ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'c0bad479465464e1d8c1e641b0afb****', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the alert rule.', + 'type' => 'string', + 'required' => false, + 'example' => 'Kubernetes component alert', + ], + ], + [ + 'name' => 'NotifyType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The method that is used to send alert notifications. Valid values:'."\n" + ."\n" + .'- `ALERT_MANAGER`: Alert notifications are sent by Operation Center. This is the default value.'."\n" + .'- `DISPATCH_RULE`: Alert notifications are sent based on the specified notification policy.', + 'type' => 'string', + 'required' => false, + 'example' => 'ALERT_MANAGER', + ], + ], + [ + 'name' => 'DispatchRuleId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the notification policy. This parameter is required if the NotifyType parameter is set to `DISPATCH_RULE`.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10282', + ], + ], + [ + 'name' => 'Expression', + 'in' => 'query', + 'schema' => [ + 'description' => 'The expression of the alert rule. The expression must follow the PromQL syntax.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\"pod_name\\", \\"$1\\", \\"pod\\", \\"(.*)\\")) by (pod_name))>75', + ], + ], + [ + 'name' => 'Duration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The duration. The value ranges from 1 to 1440 minutes.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Message', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alert message. Tags can be referenced in the {{$labels.xxx}} format.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'The CPU utilization of ${{$labels.pod_name}} exceeds 80%. Current value: {{$value}}%', + ], + ], + [ + 'name' => 'Labels', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tags that are described in a JSON string. You must specify the name and value of each tag.', + 'type' => 'string', + 'required' => false, + 'example' => '[{"Value": "critical","Name": "severity"}]', + ], + ], + [ + 'name' => 'Annotations', + 'in' => 'query', + 'schema' => [ + 'description' => 'The annotations that are described in a JSON string. You must specify the name and value of each annotation.', + 'type' => 'string', + 'required' => false, + 'example' => '[{"Value": "xxx","Name": "description"}]', + ], + ], + [ + 'name' => 'AlertId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert rule. You can call the ListPrometheusAlertRules operation to query the ID of the alert rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '3888704', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.', + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.', + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9FEA6D00-317F-45E3-9004-7FB8B0B7****', + ], + 'PrometheusAlertRule' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'Indicates whether the alert rule is enabled. Valid values:'."\n" + ."\n" + .'- `1`: The alert rule is enabled.'."\n" + .'- `0`: The alert rule is disabled.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Type' => [ + 'description' => 'The type of the alert rule.', + 'type' => 'string', + 'example' => 'Kubernetes component alert', + ], + 'NotifyType' => [ + 'description' => 'The method of that is used to send alert notifications. Valid values:'."\n" + ."\n" + .'* `ALERT_MANAGER`: Alert notifications are sent by Operation Center.'."\n" + .'* `DISPATCH_RULE`: Alert notifications are sent based on the specified notification policy.'."\n", + 'type' => 'string', + 'example' => 'ALERT_MANAGER', + ], + 'Expression' => [ + 'description' => 'The expression of the alert rule.', + 'type' => 'string', + 'example' => '100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\"pod_name\\", \\"$1\\", \\"pod\\", \\"(.*)\\")) by (pod_name))>75', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'The CPU utilization of ${{$labels.pod_name}} exceeds 80%. Current value: {{$value}}%', + ], + 'Duration' => [ + 'description' => 'The duration. The value ranges from 1 to 1440 minutes.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'DispatchRuleId' => [ + 'description' => 'The ID of the notification policy.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10282', + ], + 'AlertName' => [ + 'description' => 'The name of the alert rule.', + 'type' => 'string', + 'example' => 'Prometheus_Alert', + ], + 'AlertId' => [ + 'description' => 'The ID of the alert rule.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3888704', + ], + 'ClusterId' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'c0bad479465464e1d8c1e641b0afb****', + ], + 'Labels' => [ + 'description' => 'The tags of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the tag.'."\n", + 'type' => 'string', + 'example' => 'severity', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => 'critical', + ], + ], + ], + ], + 'Annotations' => [ + 'description' => 'The annotation of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the annotation.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Value' => [ + 'description' => 'The value of the annotation.'."\n", + 'type' => 'string', + 'example' => 'The CPU utilization of ${{$labels.pod_name}} exceeds 80%. Current value: {{$value}}%', + ], + ], + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'True', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9FEA6D00-317F-45E3-9004-7FB8B0B7****\\",\\n \\"PrometheusAlertRule\\": {\\n \\"Status\\": 1,\\n \\"Type\\": \\"Kubernetes组件告警\\",\\n \\"NotifyType\\": \\"ALERT_MANAGER\\",\\n \\"Expression\\": \\"100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\\\\\\\\\\\\\"pod_name\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"$1\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"pod\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"(.*)\\\\\\\\\\\\\\")) by (pod_name))>75\\",\\n \\"Message\\": \\"${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%\\",\\n \\"Duration\\": \\"1\\",\\n \\"DispatchRuleId\\": 10282,\\n \\"AlertName\\": \\"Prometheus_Alert\\",\\n \\"AlertId\\": 3888704,\\n \\"ClusterId\\": \\"c0bad479465464e1d8c1e641b0afb****\\",\\n \\"Labels\\": [\\n {\\n \\"Name\\": \\"severity\\",\\n \\"Value\\": \\"critical\\"\\n }\\n ],\\n \\"Annotations\\": [\\n {\\n \\"Name\\": \\"message\\",\\n \\"Value\\": \\"${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%\\"\\n }\\n ]\\n },\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdatePrometheusAlertRuleResponse>\\n <RequestId>9FEA6D00-317F-45E3-9004-7FB8B0B7****</RequestId>\\n <PrometheusAlertRule>\\n <Status>1</Status>\\n <NotifyType>ALERT_MANAGER</NotifyType>\\n <Type>Kubernetes组件告警</Type>\\n <AlertId>3888704</AlertId>\\n <AlertName>Prometheus_Alert</AlertName>\\n <Message>${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%</Message>\\n <ClusterId>c0bad479465464e1d8c1e641b0afb****</ClusterId>\\n <Expression>100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\\\\\"pod_name\\\\\\", \\\\\\"$1\\\\\\", \\\\\\"pod\\\\\\", \\\\\\"(.*)\\\\\\")) by (pod_name))&gt;75</Expression>\\n <DispatchRuleId>10282</DispatchRuleId>\\n <Duration>1m</Duration>\\n <Labels>\\n <Value>critical</Value>\\n <Name>severity</Name>\\n </Labels>\\n <Annotations>\\n <Value>${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%</Value>\\n <Name>message</Name>\\n </Annotations>\\n </PrometheusAlertRule>\\n</UpdatePrometheusAlertRuleResponse>","errorExample":""}]', + 'title' => 'UpdatePrometheusAlertRule', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribePrometheusAlertRule' => [ + 'summary' => 'Queries the details about an alert rule for a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'AlertId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert rule. You can call the ListPrometheusAlertRules operation to query the ID of the alert rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '3888704', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Prometheus instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cc7a37ee31aea4ed1a059eff8034b****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '9FEA6D00-317F-45E3-9004-7FB8B0B7****', + ], + 'PrometheusAlertRule' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'Indicates whether the alert rule is enabled. Valid values:'."\n" + ."\n" + .'* `1`: The alert rule is enabled.'."\n" + .'* `0`: The alert rule is disabled.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Type' => [ + 'description' => 'The type of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'Kubernetes component alert'."\n", + ], + 'NotifyType' => [ + 'description' => 'The method of that is used to send alert notifications. Valid values:'."\n" + ."\n" + .'* `ALERT_MANAGER`: Alert notifications are sent by Operation Center.'."\n" + .'* `DISPATCH_RULE`: Alert notifications are sent based on the specified notification policy.'."\n", + 'type' => 'string', + 'example' => 'ALERT_MANAGER', + ], + 'Expression' => [ + 'description' => 'The expression of the alert rule.'."\n", + 'type' => 'string', + 'example' => '100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\"pod_name\\", \\"$1\\", \\"pod\\", \\"(.*)\\")) by (pod_name))>75', + ], + 'Message' => [ + 'description' => 'The alert message. Tags can be referenced in the {{$labels.xxx}} format.'."\n", + 'type' => 'string', + 'example' => 'The CPU utilization of ${{$labels.pod_name}} has exceeded 80%. Current value: {{$value}}%'."\n", + ], + 'Duration' => [ + 'description' => 'The duration of the alert. Valid values: 1 to 1440. Unit: minutes.'."\n", + 'type' => 'string', + 'example' => '1m', + ], + 'DispatchRuleId' => [ + 'description' => 'The ID of the notification policy. This parameter is returned if the **NotifyType** parameter is set to `DISPATCH_RULE`.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10282', + ], + 'AlertName' => [ + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'Prometheus_Alert', + ], + 'AlertId' => [ + 'description' => 'The ID of the alert rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3888704', + ], + 'ClusterId' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'c0bad479465464e1d8c1e641b0afb****', + ], + 'Labels' => [ + 'description' => 'The tags of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the tag.'."\n", + 'type' => 'string', + 'example' => 'severity', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => 'critical', + ], + ], + ], + ], + 'Annotations' => [ + 'description' => 'The annotations of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the annotation.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Value' => [ + 'description' => 'The value of the annotation.'."\n", + 'type' => 'string', + 'example' => 'The CPU utilization of ${{$labels.pod_name}} has exceeded 80%. Current value: {{$value}}%'."\n", + ], + ], + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'True', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9FEA6D00-317F-45E3-9004-7FB8B0B7****\\",\\n \\"PrometheusAlertRule\\": {\\n \\"Status\\": 1,\\n \\"Type\\": \\"Kubernetes组件告警\\",\\n \\"NotifyType\\": \\"ALERT_MANAGER\\",\\n \\"Expression\\": \\"100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\\\\\\\\\\\\\"pod_name\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"$1\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"pod\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"(.*)\\\\\\\\\\\\\\")) by (pod_name))>75\\",\\n \\"Message\\": \\"${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%\\",\\n \\"Duration\\": \\"1m\\",\\n \\"DispatchRuleId\\": 10282,\\n \\"AlertName\\": \\"Prometheus_Alert\\",\\n \\"AlertId\\": 3888704,\\n \\"ClusterId\\": \\"c0bad479465464e1d8c1e641b0afb****\\",\\n \\"Labels\\": [\\n {\\n \\"Name\\": \\"severity\\",\\n \\"Value\\": \\"critical\\"\\n }\\n ],\\n \\"Annotations\\": [\\n {\\n \\"Name\\": \\"message\\",\\n \\"Value\\": \\"${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%\\"\\n }\\n ]\\n },\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Message\\": \\"success\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribePrometheusAlertRuleResponse>\\n <RequestId>9FEA6D00-317F-45E3-9004-7FB8B0B7****</RequestId>\\n <PrometheusAlertRule>\\n <Status>1</Status>\\n <NotifyType>ALERT_MANAGER</NotifyType>\\n <Type>Kubernetes组件告警</Type>\\n <AlertId>3888704</AlertId>\\n <AlertName>Prometheus_Alert</AlertName>\\n <Message>${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%</Message>\\n <ClusterId>c0bad479465464e1d8c1e641b0afb****</ClusterId>\\n <Expression>100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\\\\\"pod_name\\\\\\", \\\\\\"$1\\\\\\", \\\\\\"pod\\\\\\", \\\\\\"(.*)\\\\\\")) by (pod_name))&gt;75</Expression>\\n <DispatchRuleId>10282</DispatchRuleId>\\n <Duration>1m</Duration>\\n <Labels>\\n <Value>critical</Value>\\n <Name>severity</Name>\\n </Labels>\\n <Annotations>\\n <Value>${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%</Value>\\n <Name>message</Name>\\n </Annotations>\\n </PrometheusAlertRule>\\n</DescribePrometheusAlertRuleResponse>","errorExample":""}]', + 'title' => 'DescribePrometheusAlertRule', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ListPrometheusAlertRules' => [ + 'summary' => 'Queries the alert rules created for a Prometheus instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the alert rule.', + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'Prometheus_Alert', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID of the instance.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the cluster.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'c0bad479465464e1d8c1e641b0afb****', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the alert rule.', + 'type' => 'string', + 'required' => false, + 'example' => 'Custom'."\n", + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether the alert rule is enabled. Valid values:'."\n" + ."\n" + .'- 1: enables the alert rule.'."\n" + .'- 0: disables the alert rule.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'MatchExpressions', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tag match conditions that are described in a JSON string. For more information about this parameter, see the **Additional description of the MatchExpressions parameter** section.', + 'type' => 'string', + 'required' => false, + 'example' => '[{"key":"severity","value":"critical","operator":"re"}]', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'owner', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'zhangsan', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '9FEA6D00-317F-45E3-9004-7FB8B0B7****', + ], + 'PrometheusAlertRules' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'Indicates whether the alert rule is enabled. Valid values:'."\n" + ."\n" + .'- 1: The alert rule is enabled.'."\n" + .'- 0: The alert rule is disabled.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Type' => [ + 'description' => 'The type of the alert rule.', + 'type' => 'string', + 'example' => 'Custom', + ], + 'NotifyType' => [ + 'description' => 'The method that is used to send alert notifications. Valid values:'."\n" + ."\n" + .'- ALERT_MANAGER: Alert notifications are sent by Operation Center.'."\n" + .'- DISPATCH_RULE: Alert notifications are', + 'type' => 'string', + 'example' => 'ALERT_MANAGER', + ], + 'Expression' => [ + 'description' => 'The expression of the alert rule.', + 'type' => 'string', + 'example' => '100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\"pod_name\\", \\"$1\\", \\"pod\\", \\"(.*)\\")) by (pod_name))>75', + ], + 'Message' => [ + 'description' => 'The alert message. Tags can be referenced in the {{$labels.xxx}} format.', + 'type' => 'string', + 'example' => 'The CPU utilization of ${{$labels.pod_name}} exceeds 80%. Current value: {{$value}}%'."\n", + ], + 'Duration' => [ + 'description' => 'The duration of the alert. Valid values: 1 to 1440. Unit: minutes.', + 'type' => 'string', + 'example' => '1m', + ], + 'DispatchRuleId' => [ + 'description' => 'The ID of the notification policy. This parameter is returned if the NotifyType parameter is set to `DISPATCH_RULE`.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10282', + ], + 'AlertName' => [ + 'description' => 'The name of the alert rule.', + 'type' => 'string', + 'example' => 'Prometheus_Alert', + ], + 'AlertId' => [ + 'description' => 'The ID of the alert rule.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3888704', + ], + 'ClusterId' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'example' => 'c0bad479465464e1d8c1e641b0afb****', + ], + 'Labels' => [ + 'description' => 'The tags of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag of the alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the tag.', + 'type' => 'string', + 'example' => 'severity', + ], + 'Value' => [ + 'description' => 'The value of the tag associated with the instance.', + 'type' => 'string', + 'example' => 'critical', + ], + ], + ], + ], + 'Annotations' => [ + 'description' => 'The annotations of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The annotation of the alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the annotation.', + 'type' => 'string', + 'example' => 'message', + ], + 'Value' => [ + 'description' => 'The value of the annotation.', + 'type' => 'string', + 'example' => 'The CPU utilization of ${{$labels.pod_name}} exceeds 80%. Current value: {{$value}}%'."\n", + ], + ], + ], + ], + 'Tags' => [ + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'key', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'value', + ], + ], + ], + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful. Other status codes indicate that the request failed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'True', + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9FEA6D00-317F-45E3-9004-7FB8B0B7****\\",\\n \\"PrometheusAlertRules\\": [\\n {\\n \\"Status\\": 1,\\n \\"Type\\": \\"自定义\\",\\n \\"NotifyType\\": \\"ALERT_MANAGER\\",\\n \\"Expression\\": \\"100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\\\\\\\\\\\\\"pod_name\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"$1\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"pod\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"(.*)\\\\\\\\\\\\\\")) by (pod_name))>75\\",\\n \\"Message\\": \\"${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%\\",\\n \\"Duration\\": \\"1m\\",\\n \\"DispatchRuleId\\": 10282,\\n \\"AlertName\\": \\"Prometheus_Alert\\",\\n \\"AlertId\\": 3888704,\\n \\"ClusterId\\": \\"c0bad479465464e1d8c1e641b0afb****\\",\\n \\"Labels\\": [\\n {\\n \\"Name\\": \\"severity\\",\\n \\"Value\\": \\"critical\\"\\n }\\n ],\\n \\"Annotations\\": [\\n {\\n \\"Name\\": \\"message\\",\\n \\"Value\\": \\"${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%\\"\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n }\\n ],\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ListPrometheusAlertRulesResponse>\\n <PrometheusAlertRules>\\n <Status>1</Status>\\n <NotifyType>ALERT_MANAGER</NotifyType>\\n <Type>自定义</Type>\\n <AlertId>3888704</AlertId>\\n <AlertName>Prometheus_Alert</AlertName>\\n <Message>${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%</Message>\\n <ClusterId>c0bad479465464e1d8c1e641b0afb****</ClusterId>\\n <Expression>100 * (sum(rate(container_cpu_usage_seconds_total[1m])) by (pod_name) / sum(label_replace(kube_pod_container_resource_limits_cpu_cores, \\\\\\"pod_name\\\\\\", \\\\\\"$1\\\\\\", \\\\\\"pod\\\\\\", \\\\\\"(.*)\\\\\\")) by (pod_name))&gt;75</Expression>\\n <DispatchRuleId>10282</DispatchRuleId>\\n <Duration>1m</Duration>\\n <Labels>\\n <Value>critical</Value>\\n <Name>severity</Name>\\n </Labels>\\n <Annotations>\\n <Value>${{$labels.pod_name}}CPU使用率大于80%,当前值{{$value}}%</Value>\\n <Name>message</Name>\\n </Annotations>\\n </PrometheusAlertRules>\\n <RequestId>9FEA6D00-317F-45E3-9004-7FB8B0B7****</RequestId>\\n</ListPrometheusAlertRulesResponse>","errorExample":""}]', + 'title' => 'ListPrometheusAlertRules', + 'requestParamsDescription' => '### Additional description of the MatchExpressions parameter'."\n" + .'JSON string example and description'."\n" + ."\n" + .'```'."\n" + .'['."\n" + .'{'."\n" + .' "key":"severity", // The key of the tag. '."\n" + .' "value":"critical", // The value of the tag. '."\n" + .' "operator":"re" // eq: equals to. re: matches a regular expression. '."\n" + .'}'."\n" + .']'."\n" + .'```', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ListPrometheusAlertTemplates' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'c0bad479465464e1d8c1e641b0afb****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '9FEA6D00-317F-45E3-9004-7FB8B0B7****', + ], + 'PrometheusAlertTemplates' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'Node'."\n", + ], + 'Description' => [ + 'description' => 'The content of the alert notification. Tags can be referenced in the {{$labels.xxx}} format.'."\n", + 'type' => 'string', + 'example' => 'The available memory on node {{ $labels.instance }} is less than 10%. Available memory: {{ $value }}%'."\n", + ], + 'Expression' => [ + 'description' => 'The expression of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 < 10', + ], + 'Version' => [ + 'description' => 'The version of the alert rule.'."\n", + 'type' => 'string', + 'example' => '1.0', + ], + 'Duration' => [ + 'description' => 'The duration of the alert. Valid values: 1 to 1440. Unit: minutes.'."\n", + 'type' => 'string', + 'example' => '1m', + ], + 'AlertName' => [ + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'The available memory on the node is less than 10%'."\n", + ], + 'Labels' => [ + 'description' => 'The tags of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the tag.'."\n", + 'type' => 'string', + 'example' => 'severity', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => 'warning', + ], + ], + ], + ], + 'Annotations' => [ + 'description' => 'The annotations of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the annotation.'."\n", + 'type' => 'string', + 'example' => 'message', + ], + 'Value' => [ + 'description' => 'The value of the annotation.'."\n", + 'type' => 'string', + 'example' => 'The available memory on node {{ $labels.instance }} is less than 10%. Available memory: {{ $value }}%'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9FEA6D00-317F-45E3-9004-7FB8B0B7****\\",\\n \\"PrometheusAlertTemplates\\": [\\n {\\n \\"Type\\": \\"节点\\",\\n \\"Description\\": \\"节点 {{ $labels.instance }} 可用内存不足10%,当前可用内存 {{ $value }}%\\",\\n \\"Expression\\": \\"node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 < 10\\",\\n \\"Version\\": \\"1.0\\",\\n \\"Duration\\": \\"1m\\",\\n \\"AlertName\\": \\"节点内存可用率不足10%\\",\\n \\"Labels\\": [\\n {\\n \\"Name\\": \\"severity\\",\\n \\"Value\\": \\"warning\\"\\n }\\n ],\\n \\"Annotations\\": [\\n {\\n \\"Name\\": \\"message\\",\\n \\"Value\\": \\"节点 {{ $labels.instance }} 可用内存不足10%,当前可用内存 {{ $value }}%\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListPrometheusAlertTemplatesResponse>\\n <RequestId>9FEA6D00-317F-45E3-9004-7FB8B0B7****</RequestId>\\n <PrometheusAlertTemplates>\\n <Type>节点</Type>\\n <Description>节点 {{ $labels.instance }} 可用内存不足10%,当前可用内存 {{ $value }}%</Description>\\n <AlertName>节点内存可用率不足10%</AlertName>\\n <Version>1</Version>\\n <Expression>node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 &lt; 10</Expression>\\n <Duration>1m</Duration>\\n <Labels>\\n <Value>warning</Value>\\n <Name>severity</Name>\\n </Labels>\\n <Annotations>\\n <Value>节点 {{ $labels.instance }} 可用内存不足10%,当前可用内存 {{ $value }}%</Value>\\n <Name>message</Name>\\n </Annotations>\\n </PrometheusAlertTemplates>\\n</ListPrometheusAlertTemplatesResponse>","errorExample":""}]', + 'title' => 'ListPrometheusAlertTemplates', + 'summary' => 'Queries the alert templates of Prometheus Service.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CreateAlertContact' => [ + 'summary' => 'Creates an alert contact.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'JohnDoe', + ], + ], + [ + 'name' => 'PhoneNum', + 'in' => 'query', + 'schema' => [ + 'description' => 'The mobile number of the alert contact. You must specify at least one of the following parameters: PhoneNum, Email, and DingRobotWebhookUrl.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '1381111****', + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'description' => 'The email address of the alert contact. You must specify at least one of the following parameters: PhoneNum, Email, and DingRobotWebhookUrl.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'DingRobotWebhookUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The webhook URL of the DingTalk chatbot. For more information about how to obtain the URL, see [Configure a DingTalk chatbot to send alert notifications](https://www.alibabacloud.com/help/zh/doc-detail/106247.htm). You must specify at least one of the following parameters: PhoneNum, Email, and DingRobotWebhookUrl.'."\n" + ."\n" + .'> Enter `alert` in the custom keyword field of DingTalk chatbot security settings.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=91f2f6****', + ], + ], + [ + 'name' => 'SystemNoc', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether the alert contact receives system notifications. Valid values:'."\n" + ."\n" + .'* `true`: The alert contact receives system notifications.'."\n" + .'* `false`: The alert contact does not receive system notifications.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region. Set the value to `cn-hangzhou`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group. You can obtain the resource group ID in the **Resource Management** console.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-aek2eq4peca****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ContactId' => [ + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'string', + 'example' => '102**', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'E9C9DA3D-10FE-472E-9EEF-2D0A3E41****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ContactId\\": \\"102**\\",\\n \\"RequestId\\": \\"E9C9DA3D-10FE-472E-9EEF-2D0A3E41****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateAlertContactResponse>\\n\\t<RequestId>E9C9DA3D-10FE-472E-9EEF-2D0A3E41****</RequestId>\\n\\t<ContactId>102**</ContactId>\\n</CreateAlertContactResponse>","errorExample":""}]', + 'title' => 'CreateAlertContact', + 'description' => 'This operation is no longer maintained. To create or modify an alert contact, call the CreateOrUpdateContact operation provided by the new version of the Alert Management module.'."\n", + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CreateWebhook' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the contact.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'WebhookAlert', + ], + ], + [ + 'name' => 'Method', + 'in' => 'query', + 'schema' => [ + 'description' => 'The HTTP request method.'."\n" + ."\n" + .'* `Get`'."\n" + .'* `Post`'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => false, + 'example' => 'Post', + ], + ], + [ + 'name' => 'Url', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the request **method**.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=e1a049121ddbfce1ca963d115ef88cc7219583c4fb79fe6e398fbfb688******', + ], + ], + [ + 'name' => 'HttpParams', + 'in' => 'query', + 'schema' => [ + 'description' => 'The parameters in the HTTP request.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[{"name":"mike"}]', + ], + ], + [ + 'name' => 'HttpHeaders', + 'in' => 'query', + 'schema' => [ + 'description' => 'The HTTP request header.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[{"Content-Type":"application/json"}]', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Body', + 'in' => 'query', + 'schema' => [ + 'description' => 'The notification template that is sent when an alert is triggered. This parameter is required if the **Method** parameter is set to **Post**. You can use the $content placeholder to specify the notification content. The content cannot exceed 500 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{ "Alert Name": "{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster Name": "{{ .commonLabels.clustername }} {{ end }}{{if eq " app" .commonLabels._aliyun_arms_involvedObject_kind }}", "Application Name": "{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}", "Notification Policy": "{{ .dispatchRuleName }}", "Alarm Time": "{{ .startTime }}", "Alert Content": "{{ for .alerts }} {{ .annotations.message }} {{ end }}" }', + ], + ], + [ + 'name' => 'RecoverBody', + 'in' => 'query', + 'schema' => [ + 'description' => 'The notification template that is sent when an alert is resolved. This parameter is required if the **Method** parameter is set to **Post**. You can use the $content placeholder to specify the notification content. The content cannot exceed 500 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "Alert Name": "{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster Name": "{{ .commonLabels.clustername }} {{ end }}{{if eq " app" .commonLabels._aliyun_arms_involvedObject_kind }}", "Application Name": "{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}", "Notification Policy": "{{ .dispatchRuleName }}", "Alarm Time": "{{ .startTime }}", "Alert Content": "{{ for .alerts }} {{ .annotations.message }} {{ end }}" }', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ContactId' => [ + 'description' => 'The ID of the contact for webhook alerts.'."\n", + 'type' => 'string', + 'example' => '48716', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '16AF921B-8187-489F-9913-43C808B4****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ContactId\\": \\"48716\\",\\n \\"RequestId\\": \\"16AF921B-8187-489F-9913-43C808B4****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateWebhookResponse>\\n <ContactId>48716</ContactId>\\n <RequestId>16AF921B-8187-489F-9913-43C808B4****</RequestId>\\n</CreateWebhookResponse>","errorExample":""}]', + 'title' => 'CreateWebhook', + 'summary' => 'Adds a contact for webhook alerts.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CreateAlertContactGroup' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '44428', + 'abilityTreeNodes' => [ + 'FEATUREarmsK5DKZM', + ], + ], + 'parameters' => [ + [ + 'name' => 'ContactGroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the alert contact group.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'TestGroup', + ], + ], + [ + 'name' => 'ContactIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of contacts in the contact group. Separate multiple contact IDs with spaces. You can call the SearchAlertContact operation to query the contact IDs. For more information, see [SearchAlertContact](~~130703~~).'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '12* 23* 34*', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: `cn-hangzhou`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ContactGroupId' => [ + 'description' => 'The ID of the alert contact group.'."\n", + 'type' => 'string', + 'example' => '446*', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '70675725-8F11-4817-8106-CFE0AD71****', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ContactGroupId\\": \\"446*\\",\\n \\"RequestId\\": \\"70675725-8F11-4817-8106-CFE0AD71****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateAlertContactGroupResponse>\\n\\t<ContactGroupId>446*</ContactGroupId>\\n\\t<RequestId>70675725-8F11-4817-8106-CFE0AD71****</RequestId>\\n</CreateAlertContactGroupResponse>","errorExample":""}]', + 'title' => 'CreateAlertContactGroup', + 'summary' => 'Creates an alert contact group.', + 'description' => 'The current API operation is no longer maintained. Call the CreateOrUpdateContactGroup operation of the new Alert Management module to create or modify alert contact groups.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CreateDispatchRule' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '44431', + 'abilityTreeNodes' => [ + 'FEATUREarmsVBCGEE', + ], + ], + 'parameters' => [ + [ + 'name' => 'DispatchRule', + 'in' => 'query', + 'schema' => [ + 'description' => 'The dispatch rule configuration. The value is a JSON string. For more information about this parameter, see the following **additional information about the DispatchRule parameter**.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '{ "system": false, "ruleid": 10282, "name": "Prometheus Alert", "labelMatchExpressionGrid": { "labelMatchExpressionGroups": [ { "labelMatchExpressions": [ { "key": "_aliyun_arms_involvedObject_kind", "value": "app", "operator": "eq" } ] } ] }, "dispatchType": "CREATE_ALERT/DISCARD_ALERT", "isRecover": true, "groupRules": [ { "groupId": 1, "groupingFields": [ "alertname" ], "groupWait": 10, "groupInterval": 15, "repeatInterval": 20 } ], "notifyRules": [ { "notifyObjects": [ { "notifyType": "ARMS_CONTACT", "name": "JohnDoe", "notifyObjectId": 1 }, { "notifyType": "ARMS_CONTACT_GROUP", "name": "JohnDoe_group", "notifyObjectId": 2 } ], "notifyChannels":["dingTalk","wechat","webhook","email"] }, ], }', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DispatchRuleId' => [ + 'description' => 'The ID of the dispatch policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10413', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"DispatchRuleId\\": 10413,\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDispatchRuleResponse>\\n <RequestId>A5EC8221-08F2-4C95-9AF1-49FD998C****</RequestId>\\n <DispatchRuleId>10413</DispatchRuleId>\\n</CreateDispatchRuleResponse>","errorExample":""}]', + 'title' => 'CreateDispatchRule', + 'summary' => 'Creates a dispatch policy.', + 'requestParamsDescription' => '## Additional information about the **DispatchRule** parameter'."\n" + ."\n" + .'**JSON string example and description**'."\n" + ."\n" + .'```'."\n" + ."\n" + .'{'."\n" + .' "system": false, // Specifies whether the dispatch rule is editable. Valid values: true: not editable. false: editable. '."\n" + .' "ruleid": 10282, // The ID of the dispatch rule. '."\n" + .' "name": "Prometheus Alert", // The name of the dispatch policy. '."\n" + .' "labelMatchExpressionGrid": {'."\n" + .' "labelMatchExpressionGroups": [ // Sets the dispatch rule. '."\n" + .' {'."\n" + .' "labelMatchExpressions": ['."\n" + .' {'."\n" + .' "key": "_aliyun_arms_involvedObject_kind", // The key of the tag of the dispatch rule. For more information, see the next section. '."\n" + .' "value": "app", // The value of the tag. '."\n" + .' "operator": "eq" // The operator used in the dispatch rule. Valid values: eq: equals to. re: matches a regular expression. '."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "dispatchType": "CREATE_ALERT/DISCARD_ALERT", // The alert handling method. Valid values: CREATE_ALERT: generates an alert. DISCARD_ALERT: discards the alert event and generates no alert. '."\n" + .' "isRecover": true, // Specifies whether to send the restored alert. Valid values: true: sends the alert. false: does not send the alert. '."\n" + .' "groupRules": [ // Sets the event group. '."\n" + .' {'."\n" + .' "groupId": 1, // The ID of the group. '."\n" + .' "groupingFields": [ // The fields that are used to group events. Events with the same field content are assigned to a group. Alerts with the same specified grouping field are sent to the handler in separate notifications. '."\n" + .' "alertname"'."\n" + .' ],'."\n" + .' "groupWait": 10, // The duration for which the system waits after the first alert is sent. After the duration, all alerts are sent in a single notification to the handler. '."\n" + .' "groupInterval": 15, // The grouping interval. During the silence period of repeated alerts, if new alerts are generated, they will be sent after the group waiting time. '."\n" + .' "repeatInterval": 20 // The silence period of repeated alerts. All alerts are repeatedly sent at specified intervals until the alerts are cleared. '."\n" + .' }'."\n" + .' ],'."\n" + .' "notifyRules": [ // Sets the notification rule. '."\n" + .' {'."\n" + .' "notifyObjects": ['."\n" + .' {'."\n" + .' "notifyType": "ARMS_CONTACT", // The type of the alert contact. Valid values: ARMS_CONTACT: contact. ARMS_CONTACT_GROUP: contact group. '."\n" + .' "name": "JohnDoe", // The name of the contact or contact group. '."\n" + .' "notifyObjectId": 1 // The ID of the contact or contact group. '."\n" + .' },'."\n" + .' {'."\n" + .' "notifyType": "ARMS_CONTACT_GROUP",'."\n" + .' "name": "JohnDoe_group",'."\n" + .' "notifyObjectId": 2'."\n" + .' }'."\n" + .' ],'."\n" + .' "notifyChannels":["dingTalk","wechat","webhook","email"] // The notification method. Valid values: dingTalk, sms, webhook, email, and wechat. '."\n" + .' },'."\n" + .' ],'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'**Enumerated keys of the tag of the dispatch rule**'."\n" + ."\n" + .'* `_aliyun_arms_userid`: user ID'."\n" + .'* `_aliyun_arms_involvedObject_kind`: type of the associated object'."\n" + .'* `_aliyun_arms_involvedObject_id`: ID of the associated object'."\n" + .'* `_aliyun_arms_involvedObject_name`: name of the associated object'."\n" + .'* `_aliyun_arms_alert_name`: alert name'."\n" + .'* `_aliyun_arms_alert_rule_id`: alert rule ID'."\n" + .'* `_aliyun_arms_alert_type`: alert type'."\n" + .'* `_aliyun_arms_alert_level`: alert severity'."\n", + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ListActivatedAlerts' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '44476', + 'abilityTreeNodes' => [ + 'FEATUREarmsK5DKZM', + ], + ], + 'parameters' => [ + [ + 'name' => 'Filter', + 'in' => 'query', + 'schema' => [ + 'description' => 'The filter condition in the `{"key":"value"}`format. You must specify the `key` and `value` of the filter condition.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '{"alertname":"Container CPU usage is greater than 80%"}', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou ', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return. Default value: `1`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + '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' => true, + 'docRequired' => true, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'BDB74B8F-4123-482A-ABB7-7F440349****', + ], + 'Page' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'The number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'Page' => [ + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Alerts' => [ + 'description' => 'The alerts that have been triggered.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'The status of the alert. Valid values:'."\n" + ."\n" + .'* `Active`'."\n" + .'* `Inhibited`'."\n" + .'* `Silenced`'."\n" + .'* `Resolved`'."\n", + 'type' => 'string', + 'example' => 'Active', + ], + 'Severity' => [ + 'description' => 'The level of the alert. Valid values:'."\n" + ."\n" + .'* `critical`'."\n" + .'* `error`'."\n" + .'* `warn`'."\n" + .'* `page`'."\n", + 'type' => 'string', + 'example' => 'critical', + ], + 'IntegrationName' => [ + 'description' => 'The name of the object that is associated with the alert.'."\n", + 'type' => 'string', + 'example' => 'testphp2', + ], + 'CreateTime' => [ + 'description' => 'The timestamp when the alert rule was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1616466300000', + ], + 'Message' => [ + 'description' => 'The description of the alert.'."\n", + 'type' => 'string', + 'example' => 'Alarm name: PodRestart_testphp2,\\n Pod night-test-group-1-1-5f5d6f4d84-pszns is restart, Value: 133.33%, 1.33%', + ], + 'AlertType' => [ + 'description' => 'The type of the alert.'."\n", + 'type' => 'string', + 'example' => 'PROMETHEUS_MONITORING_ALERT_RULE', + ], + 'InvolvedObjectName' => [ + 'description' => 'The name of the service integration that generated the alert.'."\n", + 'type' => 'string', + 'example' => 'Test integration-prometheus', + ], + 'AlertName' => [ + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'Container CPU usage is greater than 80%', + ], + 'Count' => [ + 'description' => 'The number of times that the alert event was received.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '598', + ], + 'ExpandFields' => [ + 'description' => 'The extended fields that indicate the following tags:'."\n" + ."\n" + .'* The tags that are carried in the metrics of the alert rule expression.'."\n" + .'* The tags that are created based on the alert rule.'."\n" + .'* The default tags of Application Real-Time Monitoring Service (ARMS).'."\n", + 'type' => 'object', + 'example' => '', + ], + 'EndsAt' => [ + 'description' => 'The timestamp when the alert was ended.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1616502540000', + ], + 'InvolvedObjectKind' => [ + 'description' => 'The type of the object that is associated with the alert.'."\n", + 'type' => 'string', + 'example' => 'cluster', + ], + 'IntegrationType' => [ + 'description' => 'The type of the service integration that generated the alert.'."\n", + 'type' => 'string', + 'example' => 'PROMETHEUS', + ], + 'StartsAt' => [ + 'description' => 'The timestamp when the alert was generated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1616466300000', + ], + 'AlertId' => [ + 'description' => 'The ID of the alert rule.'."\n", + 'type' => 'string', + 'example' => '3888704', + ], + 'DispatchRules' => [ + 'description' => 'The notification policies.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RuleId' => [ + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '7021', + ], + 'RuleName' => [ + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'NotificationPolicy1', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"BDB74B8F-4123-482A-ABB7-7F440349****\\",\\n \\"Page\\": {\\n \\"PageSize\\": 20,\\n \\"Total\\": 5,\\n \\"Page\\": 1,\\n \\"Alerts\\": [\\n {\\n \\"Status\\": \\"Active\\",\\n \\"Severity\\": \\"critical\\",\\n \\"IntegrationName\\": \\"testphp2\\",\\n \\"CreateTime\\": 1616466300000,\\n \\"Message\\": \\"报警名称:PodRestart_testphp2,\\\\\\\\n Pod night-test-group-1-1-5f5d6f4d84-pszns is restart, Value: 133.33%, 1.33%\\",\\n \\"AlertType\\": \\"ARMS-Prometheus监控\\",\\n \\"InvolvedObjectName\\": \\"测试集成-prometheus\\",\\n \\"AlertName\\": \\"容器CPU使用率大于80%\\",\\n \\"Count\\": 598,\\n \\"ExpandFields\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"EndsAt\\": 1616502540000,\\n \\"InvolvedObjectKind\\": \\"cluster\\",\\n \\"IntegrationType\\": \\"PROMETHEUS\\",\\n \\"StartsAt\\": 1616466300000,\\n \\"AlertId\\": \\"3888704\\",\\n \\"DispatchRules\\": [\\n {\\n \\"RuleId\\": 7021,\\n \\"RuleName\\": \\"容器CPU使用率大于80%的通知策略\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"Message\\": \\"CurrentPage is mandatory for this action.\\"\\n}","errorExample":""},{"type":"xml","example":"<ListActivatedAlertsResponse>\\n<RequestId>BDB74B8F-4123-482A-ABB7-7F440349****</RequestId>\\n<Page>\\n <PageSize>20</PageSize>\\n <Total>5</Total>\\n <Page>1</Page>\\n <Alerts>\\n <Status>Active</Status>\\n <AlertName>容器CPU使用率大于80%</AlertName>\\n <Message>报警名称:PodRestart_testphp2,\\\\n Pod night-test-group-1-1-5f5d6f4d84-pszns is restart, Value: 133.33%, 1.33%</Message>\\n <InvolvedObjectKind>cluster</InvolvedObjectKind>\\n <CreateTime>1616466300000</CreateTime>\\n <Severity>critical</Severity>\\n <Count>598</Count>\\n <ExpandFields> \\"severity\\": \\"critical\\", \\"_aliyun_arms_alert_level\\": \\"ERROR\\", \\"pod\\": \\"night-test-group-1-1-5f5d6f4d84-pszns\\", \\"_aliyun_arms_alert_type\\": \\"101\\", \\"_aliyun_arms_integration_name\\": \\"测试集成-prometheus\\", \\"alertname\\": \\"PodRestart_jiubiantestphp2\\", \\"_aliyun_arms_userid\\": \\"1131971649496228\\", \\"_aliyun_arms_involvedObject_name\\": \\"jiubiantestphp2\\", \\"_aliyun_arms_involvedObject_id\\": \\"ccafb2763cfa7415eb2e2a60a74b1f825\\", \\"_aliyun_arms_region_id\\": \\"cn-beijing\\", \\"_aliyun_arms_involvedObject_kind\\": \\"cluster\\", \\"_aliyun_arms_product_type\\": \\"PROMETHEUS\\", \\"namespace\\": \\"default\\", \\"_aliyun_arms_integration_id\\": \\"80\\", \\"_aliyun_arms_involvedObject_type\\": \\"ManagedKubernetes\\", \\"_aliyun_arms_alert_rule_id\\": \\"3612229\\"</ExpandFields>\\n <InvolvedObjectName>测试集成-prometheus</InvolvedObjectName>\\n <EndsAt>1616502540000</EndsAt>\\n <AlertType>ARMS-Prometheus监控</AlertType>\\n <IntegrationName>testphp2</IntegrationName>\\n <AlertId>3888704</AlertId>\\n <StartsAt>1616466300000</StartsAt>\\n <IntegrationType>PROMETHEUS</IntegrationType>\\n <DispatchRules>\\n <RuleId>7021</RuleId>\\n <RuleName>容器CPU使用率大于80%的通知策略</RuleName>\\n </DispatchRules>\\n </Alerts>\\n</Page>\\n</ListActivatedAlertsResponse>","errorExample":""}]', + 'title' => 'ListActivatedAlerts', + 'summary' => 'Queries the alerts that have been triggered.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ImportAppAlertRules' => [ + 'summary' => 'Creates an alert rule based on an alert template.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'TemplateAlertId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert template. You must set at least one of the **TemplateAlertId** and **TemplageAlertConfig** parameters. If you set both parameters, the **TemplateAlertId** parameter prevails.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '324324234', + ], + ], + [ + 'name' => 'Pids', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifiers (PIDs) of the applications associated with the alert rule. The value must be a JSON array. For more information about how to obtain the PID, see [Obtain the PID of an application](~~186100#section-bkl-3j6-ezg~~).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '["atc889zkcf@d8deedfa9bfxxxx", "acd129bfcf@d5daebfa6cdxxxx"]', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region where the associated applications reside.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ContactGroupIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the alert contact groups. The value must be a JSON array.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[123, 234]', + ], + ], + [ + 'name' => 'IsAutoStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable the alert rule after it is created. Default value: `false`.'."\n" + ."\n" + .'* `true`: enables the alert rule.'."\n" + .'* `false`: disables the alert rule.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'TemplageAlertConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The configurations of the alert template based on which you want to create an alert rule. The value must be a JSON string. You must set at least one of the **TemplateAlertId** and **TemplageAlertConfig** parameters. If you set both parameters, the **TemplateAlertId** parameter prevails. For more information about the TemplageAlertConfig parameter, see the following **additional information about the TemplageAlertConfig parameter**.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[ { "contactGroupIds": "381", "alertType": 5, "alarmContext": { "subTitle": "", "content": "Alarm name: $alarm name\\nFilter condition: $filter\\nAlarm time : $Alarm time\\nAlarm content: $Alarm content\\nNote: Before the recovery email is received, the alarm is in continuous alarm, and you will be reminded again after 24 hours!" }, "alertLevel": "WARN", " metricParam": { "appId": "70901", "pid": "atc889zkcf@d8deedfa9bf****", "type": "TXN", "dimensions": [ { "type": "STATIC", "value ": "\\\\/hello_test_api_address\\\\/test1", "key": "rpc" } ] }, "alertWay": [ "SMS", "MAIL", "DING_ROBOT" ], "alertRule": { "rules" : [ { "measure": "appstat.txn.rt", "alias": "Entry call response time_ms", "aggregates": "AVG", "nValue": 1, "value": 1, "operator ": "CURRENT_GTE" } ], "operator": "|" }, "title": "Alarm template alarm name", "config": "{\\"continuous\\":false,\\"dataRevision\\":2, \\"ownerId\\":\\"123412341234\\"}", "notice": { "noticeStartTime": 1480521600000, "startTime": 1480521600000, "endTime": 1480607940000, "noticeEndTime": 1480607940000 }, "stat us": "NON " } ]', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'type' => 'string', + 'required' => false, + 'description' => 'The tag key.'."\n", + 'example' => 'type', + ], + 'Value' => [ + 'type' => 'string', + 'required' => false, + 'description' => 'The tag value.'."\n", + 'example' => 'prod', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + 'description' => 'The list of tags.'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The ID of the alert rule.'."\n", + 'type' => 'string', + 'example' => '[12174**]', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"[12174**]\\",\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\"\\n}","errorExample":""},{"type":"xml","example":"<ImportAppAlertRulesResponse>\\n <RequestId>A5EC8221-08F2-4C95-9AF1-49FD998C****</RequestId>\\n <Data>[12174**]</Data>\\n</ImportAppAlertRulesResponse>","errorExample":""}]', + 'title' => 'ImportAppAlertRules', + 'description' => '> You can call the **ImportAppAlertRules** operation to import only the alert rules that are generated by Application Real-Time Monitoring Service (ARMS) for application monitoring and browser monitoring. This operation cannot be used to import custom alert rules, alert rules for Prometheus monitoring, or default emergency alert rules.'."\n", + 'requestParamsDescription' => '## Additional information about the **TemplageAlertConfig** parameter'."\n" + ."\n" + .'**JSON string example and description**'."\n" + ."\n" + .'```'."\n" + ."\n" + .'['."\n" + .' {'."\n" + ."\n" + .' "contactGroupIds": "381", // The ID of the alert contact group. Multiple IDs are separated by commas (,). You can ignore this parameter in the alert template configuration. The value is automatically generated when ARMS creates the alert rule based on the alert template. '."\n" + .' "alertType": 5, // The alert type. Valid values: 4 and 5. A value of 4 indicates browser monitoring. A value of 5 indicates application monitoring. '."\n" + .' "alarmContext": { // The template of the alert notification. '."\n" + .' "subTitle": "",'."\n" + .' "content": "Alert name: $alert name\\nFilter condition: $filter\\nAlert time: $alert time\\nAlert content: $alert content\\nNote: The alert remains being triggered until a reply email is received. The system will remind you 24 hours later."'."\n" + .' },'."\n" + .' "alertLevel": "WARN", // The alert severity. Valid values: FATAL, ERROR, and WARN. '."\n" + .' "metricParam": {'."\n" + .' "appId": "70901", // The ID of the associated application. You can specify an arbitrary value in the alert template configuration. The actual value is automatically generated when ARMS creates the alert rule based on the alert template. '."\n" + .' "pid": "atc889zkcf@d8deedfa9bf****", // The PID of the associated application. You can specify an arbitrary value in the alert template configuration. The actual value is automatically generated when ARMS creates the alert rule based on the alert template. '."\n" + .' "type": "TXN", // The type of the alert metric. For more information, see the following section. '."\n" + .' "dimensions": [ // The information about the associated dimension. For more information, see the following section. '."\n" + .' {'."\n" + .' "type": "STATIC",'."\n" + .' "value": "\\/hello_test_api_address\\/test1",'."\n" + .' "key": "rpc"'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "alertWay": [ // The notification method. Valid values: SMS, MAIL, and DING_ROBOT. '."\n" + .' "SMS",'."\n" + .' "MAIL",'."\n" + .' "DING_ROBOT"'."\n" + .' ],'."\n" + .' "alertRule": {'."\n" + .' "rules": [ // The conditions of the alert rule.'."\n" + .' {'."\n" + .' "measure": "appstat.txn.rt", // The metric based on which alerts are triggered. For more information, see the following section. '."\n" + .' "alias": "the response time of API calls in milliseconds", // The display parameter of the alert metric. You do not need to set this parameter for an alert template. '."\n" + .' "aggregates": "AVG", // The aggregation logic of the alert rule. Valid values: AVG, SUM, MIN, and MAX. '."\n" + .' "nValue": 1, // The time range to query. '."\n" + .' "value": 1, // The threshold of the condition. '."\n" + .' "operator": "CURRENT_GTE" // The operation logic of the condition. Valid values: CURRENT_GTE: greater than or equal to. CURRENT_LTE: less than or equal to. PREVIOUS_UP: the minute-to-minute increase percentage. PREVIOUS_DOWN: the minute-to-minute decrease percentage. HOH_UP: the increase percentage compared with the previous hour. HOH_DOWN: the decrease percentage compared with the previous hour. DOD_UP: the increase percentage compared with the last day. DOD_DOWN: the decrease percentage compared with the last day. '."\n" + .' }'."\n" + .' ],'."\n" + .' "operator": "|" // The logical operator between conditions. Valid values: &: AND. |: OR. '."\n" + .' },'."\n" + .' "title": "Template alert name", // The alert name. An alert rule name in the format of {title}-Application name is generated when ARMS creates the alert rule based on the alert template. '."\n" + .' "config": "{\\"continuous\\":false,\\"dataRevision\\":2,\\"ownerId\\":\\"123412341234\\"}", // If the continuous parameter is set to true, ARMS sends alert notifications without interruption. If the continuous parameter is set to false, an alert silence period of 24 hours is enabled. The dataRevision parameter specifies the data revision policy to be used if no data is obtained or the data is null. Valid values: 0: overwrites the data by using the value 0. 1: overwrites the data by using the value 1. 2: overwrites the data by using the value null, which means that no alert is triggered if no data exists. '."\n" + .' "notice": { // The noticeStartTime and noticeEndTime parameters specify the time range when alert notifications are sent. The startTime and endTime parameters specify the time range when the alert rule takes effect. The values are UNIX timestamps in milliseconds. Each timestamp indicates a point in time on the current day. For example, the 1565964097071 timestamp indicates 22:01:37 on August 16, 2019. '."\n" + .' "noticeStartTime": 1480521600000,'."\n" + .' "startTime": 1480521600000,'."\n" + .' "endTime": 1480607940000,'."\n" + .' "noticeEndTime": 1480607940000'."\n" + .' },'."\n" + .' "status": "NON" // The status of the alert rule. You can ignore this parameter in the alert template configuration. The value is automatically generated when ARMS creates the alert rule based on the alert template. '."\n" + .' }'."\n" + .']'."\n" + .' '."\n" + .'```'."\n" + ."\n" + .'**Description of the Measure, Dimension, and metricParam.type parameters**'."\n" + ."\n" + .'The **metricParam.type** parameter specifies the unique type of each alert rule. Each type of alert rules can use a dimension for the conditions. Multiple conditions can be set for each type of alert rules. Each condition can use multiple metrics of the same type for calculation.****'."\n" + ."\n" + .'The **Dimensions.type** parameter has the following valid values:'."\n" + ."\n" + .'* `STATIC`: checks only the value of this dimension. In this case, you must set the **dimensions.value** parameter.'."\n" + .'* `ALL`: checks the values of all dimensions. The metrics of all API operations are checked. If an operation triggers an alert, the operation name is displayed in the alert notification. In this case, you do not need to set the **dimensions.value** parameter.'."\n" + .'* `DISABLE`: aggregates the values of all dimensions. In this case, you do not need to set the **dimensions.value** parameter.'."\n" + ."\n" + .'**Alert metrics**'."\n" + ."\n" + .'* Alert type (metricParam.type): TXN'."\n" + ."\n" + .' * Dimension (dimensions.key): rpc'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.txn.rt: the response time of API calls in milliseconds'."\n" + .' * appstat.txn.count: the number of API calls'."\n" + .' * appstat.txn.errcount: the number of API call errors'."\n" + ."\n" + .'* Alert type (metricParam.type): TXN_TYPE'."\n" + ."\n" + .' * Dimension (dimensions.key): rpcType'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.incall.rt: the response time of API calls for the services that are provided by the application, in milliseconds'."\n" + .' * appstat.incall.count: the number of API calls for the services that are provided by the application'."\n" + .' * appstat.incall.error: the number of API call errors for the services that are provided by the application'."\n" + .' * appstat.outcall.rt: the response time of API calls for the services on which the application depends, in milliseconds'."\n" + .' * appstat.outcall.count: the number of API calls for the services on which the application depends'."\n" + .' * appstat.outcall.error: the number of API call errors for the services on which the application depends'."\n" + ."\n" + .'* Alert type (metricParam.type): DB'."\n" + ."\n" + .' * Dimension (dimensions.key): endpoint'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.database.rt: the response time of API calls for the database'."\n" + .' * appstat.database.count: the number of API calls for the database'."\n" + .' * appstat.database.errcount: the number of API call errors for the database'."\n" + ."\n" + .'* Alert type (metricParam.type): JVM'."\n" + ."\n" + .' * Dimension (dimensions.key): rootIp'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.jvm.heap_used: the total memory space in the JVM heap, in bytes'."\n" + .' * appstat.jvm.GcPsScavengeCount: the number of garbage collections (GCs) in JVM'."\n" + .' * appstat.jvm.GcPsMarkSweepCount: the number of tag deletions in JVM'."\n" + .' * appstat.jvm.GcG1OldGenCount: the number of Garbage-First (G1) GCs in the old generation'."\n" + .' * appstat.jvm.GcG1YoungGenCount: the number of G1 GCs in the young generation'."\n" + .' * appstat.jvm.gc.YoungGcCountInstant: the number of GCs in the young generation'."\n" + .' * appstat.jvm.gc.OldGcCountInstant: the number of full heap GCs (Full GCs) in JVM'."\n" + .' * appstat.jvm.gc.YoungGcTimeInstant: the time that is consumed for the GCs in the young generation, in milliseconds'."\n" + .' * appstat.jvm.gc.OldGcTimeInstant: the time that is consumed for the Full GCs in JVM, in milliseconds'."\n" + .' * appstat.jvm.ThreadCount: the total number of JVM threads'."\n" + .' * appstat.jvm.non_heap_used: the used space of the non-heap JVM memory, in bytes'."\n" + .' * appstat.jvm.non_heap_max: the maximum space of the non-heap JVM memory, in bytes'."\n" + .' * appstat.jvm.non_heap_init: the initial space of the non-heap JVM memory, in bytes'."\n" + .' * appstat.jvm.non_heap_committed: the submitted space of the non-heap JVM memory, in bytes'."\n" + ."\n" + .'* Alert type (metricParam.type): HOST'."\n" + ."\n" + .' * Dimension (dimensions.key): rootIp'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.jvm.SystemCpuUser: the used CPU of the host, in percentage'."\n" + .' * appstat.jvm.SystemMemFree: the idle memory space of the host, in bytes'."\n" + .' * appstat.jvm.SystemDiskFree: the idle disk space of the host, in bytes'."\n" + .' * appstat.jvm.SystemNetInErrs: the number of error messages that is received by the host'."\n" + .' * appstat.jvm.SystemNetOutErrs: the number of error messages that is sent by the host'."\n" + .' * appstat.jvm.SystemLoad: the system load of the host'."\n" + ."\n" + .'* Alert type (metricParam.type): EXCEPTION'."\n" + ."\n" + .' * Dimension (dimensions.key): rpc'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.exception.rt: the response time of abnormal API calls for the application, in milliseconds'."\n" + .' * appstat.exception.count: the number of abnormal API calls for the application'."\n", + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteAlertRules' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'AlertIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the alert rules that you want to delete. The value is a JSON array, for example, `[123, 234]`. You can call the SearchAlertRules operation and view the `Id` parameter in the response to obtain the alert rule ID. For more information, see [SearchAlertRules](~~175825~~).'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '[123, 234]', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: `cn-hangzhou`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsSuccess' => [ + 'description' => 'Indicates whether the alert rule was deleted.'."\n" + ."\n" + .'* `true`: The alert rule was deleted.'."\n" + .'* `false`: The alert rule failed to be deleted.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsSuccess\\": true,\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteAlertRulesResponse>\\n\\t<IsSuccess>true</IsSuccess>\\n\\t<RequestId>C21AB7CF-B7AF-410F-BD61-82D1567F****</RequestId>\\n</DeleteAlertRulesResponse>","errorExample":""}]', + 'title' => 'DeleteAlertRules', + 'summary' => 'Deletes alert rules.', + 'description' => 'The current operation is no longer maintained. Call the DeleteAlertRule operation of Alert Management (New) to delete alert rules.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteAlertContact' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '44436', + 'abilityTreeNodes' => [ + 'FEATUREarmsK5DKZM', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ContactId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsSuccess' => [ + 'description' => 'Indicates whether the call was successful.'."\n" + ."\n" + .'* `true`: The call was successful.'."\n" + .'* `false`: The call failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request. You can query logs and troubleshoot issues based on the ID.'."\n", + 'type' => 'string', + 'example' => '78901766-3806-4E96-8E47-CFEF59E4****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsSuccess\\": true,\\n \\"RequestId\\": \\"78901766-3806-4E96-8E47-CFEF59E4****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteAlertContactResponse>\\n\\t<IsSuccess>true</IsSuccess>\\n\\t<RequestId>78901766-3806-4E96-8E47-CFEF59E4****</RequestId>\\n</DeleteAlertContactResponse>","errorExample":""}]', + 'title' => 'DeleteAlertContact', + 'summary' => 'Deletes an DeleteAlertContact contact.', + 'description' => '********', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteAlertContactGroup' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ContactGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact group.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsSuccess' => [ + 'description' => 'Indicates whether the call was successful.'."\n" + ."\n" + .'* `true`: The call was successful.'."\n" + .'* `false`: The call failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request, which is used to locate and troubleshoot issues.'."\n", + 'type' => 'string', + 'example' => 'C21AB7CF-B7AF-410F-BD61-82D1567F****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsSuccess\\": true,\\n \\"RequestId\\": \\"C21AB7CF-B7AF-410F-BD61-82D1567F****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteAlertContactGroupResponse>\\n\\t<IsSuccess>true</IsSuccess>\\n\\t<RequestId>C21AB7CF-B7AF-410F-BD61-82D1567F****</RequestId>\\n</DeleteAlertContactGroupResponse>","errorExample":""}]', + 'title' => 'DeleteAlertContactGroup', + 'summary' => 'Deletes an DeleteAlertContactGroup contact group.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteDispatchRule' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '44440', + 'abilityTreeNodes' => [ + 'FEATUREarmsVBCGEE', + ], + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the dispatch policy.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '12345', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '16AF921B-8187-489F-9913-43C808B4****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Success\\": true,\\n \\"RequestId\\": \\"16AF921B-8187-489F-9913-43C808B4****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDispatchRuleResponse>\\n <RequestId>16AF921B-8187-489F-9913-43C808B4****</RequestId>\\n <Success>true</Success>\\n</DeleteDispatchRuleResponse>","errorExample":""}]', + 'title' => 'DeleteDispatchRule', + 'summary' => 'Deletes the dispatch policy of a specified ID.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UpdateWebhook' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the webhook alert contact.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => false, + 'example' => 'Webhook alert'."\n", + ], + ], + [ + 'name' => 'Method', + 'in' => 'query', + 'schema' => [ + 'description' => 'The HTTP request method. Valid values:'."\n" + ."\n" + .'* `Get`'."\n" + .'* `Post`'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => false, + 'example' => 'Post', + ], + ], + [ + 'name' => 'Url', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the HTTP request method.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => false, + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=e1a049121ddbfce1ca963d115ef88cc7219583c4fb79fe6e398fbfb688******', + ], + ], + [ + 'name' => 'HttpParams', + 'in' => 'query', + 'schema' => [ + 'description' => 'The parameters in the HTTP request.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[{"name":"mike"}]', + ], + ], + [ + 'name' => 'HttpHeaders', + 'in' => 'query', + 'schema' => [ + 'description' => 'The HTTP request headers.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[{"Content-Type":"application/json"}]', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ContactId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the webhook alert contact. You can call the **SearchAlertContact** operation to obtain the ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'maximum' => '9223372036854775807', + 'minimum' => '0', + 'example' => '48716', + ], + ], + [ + 'name' => 'Body', + 'in' => 'query', + 'schema' => [ + 'description' => 'The notification template that is sent when an alert is triggered. This parameter is required if the **Method** parameter is set to **Post**. You can use the $content placeholder to specify the notification content. The content cannot exceed 500 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '{ "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }}", "Application name":"{{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}", "Notification policy":"{{ .dispatchRuleName }}", "Alert time":"{{ .startTime }}", "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}" }'."\n", + ], + ], + [ + 'name' => 'RecoverBody', + 'in' => 'query', + 'schema' => [ + 'description' => 'The notification template that is sent when an alert is resolved. This parameter is required if the **Method** parameter is set to **Post**. You can use the $content placeholder to specify the notification content. The content cannot exceed 500 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}", "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels.\\_aliyun_arms_involvedObject_kind }}", "Application name":"{{ .commonLabels.\\_aliyun_arms_involvedObject_name }} {{ end }}", "Notification policy":"{{ .dispatchRuleName }}", "Recovery time":"{{ .endTime }}", "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}" }'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsSuccess' => [ + 'description' => 'The result returned. Valid values:'."\n" + ."\n" + .'* `true`: The modification is successful.'."\n" + .'* `false`: The modification fails.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '16AF921B-8187-489F-9913-43C808B4****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsSuccess\\": true,\\n \\"RequestId\\": \\"16AF921B-8187-489F-9913-43C808B4****\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateWebhookResponse>\\n <IsSuccess>true</IsSuccess>\\n <RequestId>16AF921B-8187-489F-9913-43C808B4****</RequestId>\\n</UpdateWebhookResponse>","errorExample":""}]', + 'title' => 'UpdateWebhook', + 'summary' => 'Modifies the information about a webhook alert contact.', + 'description' => 'This operation is no longer maintained. Call the CreateOrUpdateWebhookContact operation in the new alter management module to create or modify a webhook alert contact.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UpdateAlertContact' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The new name of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'John Doe', + ], + ], + [ + 'name' => 'PhoneNum', + 'in' => 'query', + 'schema' => [ + 'description' => 'The new mobile phone number of the alert contact. You must specify at least one of the following parameters: PhoneNum, Email, and DingRobotWebhookUrl.'."\n" + ."\n" + .'> If you do not specify this parameter, the original parameter value is deleted. If you specify this parameter, the original parameter value is updated.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '1381111****', + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'description' => 'The new email address of the alert contact. You must specify at least one of the following parameters: PhoneNum, Email, and DingRobotWebhookUrl.'."\n" + ."\n" + .'> If you do not specify this parameter, the original parameter value is deleted. If you specify this parameter, the original parameter value is updated.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'DingRobotWebhookUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The new webhook URL of the DingTalk chatbot. For more information, see [Configure a DingTalk chatbot to send alert notifications](~~106247~~). You must specify at least one of the following parameters: PhoneNum, Email, and DingRobotWebhookUrl.'."\n" + ."\n" + .'> If you do not specify this parameter, the original parameter value is deleted. If you specify this parameter, the original parameter value is updated.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=91f2f6****', + ], + ], + [ + 'name' => 'SystemNoc', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether the alert contact receives system notifications. Valid values:'."\n" + ."\n" + .'* `true`: The alert contact receives system notifications.'."\n" + .'* `false`: The alert contact does not receive system notifications.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region. Set the value to `cn-hangzhou`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ContactId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact to be updated. You can call the SearchAlertContact operation to query the contact ID. For more information, see [SearchAlertContact](~~130703~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsSuccess' => [ + 'description' => 'Indicates whether the alert contact was updated. Valid values:'."\n" + ."\n" + .'* true: The alert contact was updated.'."\n" + .'* false: The alert contact failed to be updated.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '1A474FF8-7861-4D00-81B5-5BC3DA4E****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsSuccess\\": true,\\n \\"RequestId\\": \\"1A474FF8-7861-4D00-81B5-5BC3DA4E****\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateAlertContactResponse>\\n\\t<IsSuccess>true</IsSuccess>\\n\\t<RequestId>1A474FF8-7861-4D00-81B5-5BC3DA4E****</RequestId>\\n</UpdateAlertContactResponse>","errorExample":""}]', + 'title' => 'UpdateAlertContact', + 'summary' => 'Updates an alert contact.', + 'description' => 'This operation is no longer maintained. To create or modify an alert contact, call the CreateOrUpdateContact operation provided by the new version of Alert Management.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UpdateAlertContactGroup' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactGroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the alert contact group.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'TestGroup', + ], + ], + [ + 'name' => 'ContactIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '123 234 345', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ContactGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact group.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsSuccess' => [ + 'description' => 'Indicates whether the call was successful.'."\n" + ."\n" + .'* `true`: The call was successful.'."\n" + .'* `false`: The call failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '9319A57D-2D9E-472A-B69B-CF3CD16D****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsSuccess\\": true,\\n \\"RequestId\\": \\"9319A57D-2D9E-472A-B69B-CF3CD16D****\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateAlertContactGroupResponse>\\n\\t<IsSuccess>true</IsSuccess>\\n\\t<RequestId>9319A57D-2D9E-472A-B69B-CF3CD16D****</RequestId>\\n</UpdateAlertContactGroupResponse>","errorExample":""}]', + 'title' => 'UpdateAlertContactGroup', + 'summary' => 'Updates UpdateAlertContactGroup alarm contact group.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UpdateAlertRule' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ContactGroupIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the alert contact groups. The value must be a JSON array.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[123, 234]'."\n", + ], + ], + [ + 'name' => 'IsAutoStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable the alert rule after it is created. Default value: `false`.'."\n" + ."\n" + .'* `true`: enables the alert rule.'."\n" + .'* `false`: disables the alert rule.'."\n", + 'type' => 'boolean', + 'required' => false, + 'docRequired' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'TemplageAlertConfig', + 'in' => 'query', + 'schema' => [ + 'description' => 'The configurations of the alert template based on which you want to create an alert rule. The value must be a JSON string. You must set at least one of the **TemplateAlertId** and **TemplageAlertConfig** parameters. If you set both parameters, the **TemplateAlertId** parameter prevails. For more information about the TemplageAlertConfig parameter, see the following **additional information about the TemplageAlertConfig parameter**.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '[ { "contactGroupIds": "381", "alertType": 5, "alarmContext": { "subTitle": "", "content": "Alarm name: $alarm name\\nFilter condition: $filter\\nAlarm time : $Alarm time\\nAlarm content: $Alarm content\\nNote: Before the recovery email is received, the alarm is in continuous alarm, and you will be reminded again after 24 hours!" }, "alertLevel": "WARN", " metricParam": { "appId": "70901", "pid": "atc889zkcf@d8deedfa9bf****", "type": "TXN", "dimensions": [ { "type": "STATIC", "value ": "\\\\/hello_test_api_address\\\\/test1", "key": "rpc" } ] }, "alertWay": [ "SMS", "MAIL", "DING_ROBOT" ], "alertRule": { "rules" : [ { "measure": "appstat.txn.rt", "alias": "Entry call response time_ms", "aggregates": "AVG", "nValue": 1, "value": 1, "operator ": "CURRENT_GTE" } ], "operator": "|" }, "title": "Alarm template alarm name", "config": "{\\"continuous\\":false,\\"dataRevision\\":2, \\"ownerId\\":\\"123412341234\\"}", "notice": { "noticeStartTime": 1480521600000, "startTime": 1480521600000, "endTime": 1480607940000, "noticeEndTime": 1480607940000 }, "stat us": "NON " } ]', + ], + ], + [ + 'name' => 'AlertId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert rule.', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'example' => '1234567', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'string', + 'example' => '-', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '6A9AEA84-7186-4D8D-B498-4585C6A2****', + ], + 'AlertId' => [ + 'description' => 'The ID of the alert rule.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234567', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"-\\",\\n \\"RequestId\\": \\"6A9AEA84-7186-4D8D-B498-4585C6A2****\\",\\n \\"AlertId\\": 1234567\\n}","type":"json"}]', + 'title' => 'UpdateAlertRule', + ], + 'StartAlert' => [ + 'summary' => '启动报警', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AlertId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert rule. You can call the SearchAlertRules operation and view the `Id` parameter in the response. For more information, see [SearchAlertRules](~~175825~~).', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '1610***', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region. Set the value to `cn-hangzhou`.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsSuccess' => [ + 'description' => 'Indicates whether the call was successful.'."\n" + ."\n" + .'* `true`: The call was successful.'."\n" + .'* `false`: The call failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '27E653FA-5958-45BE-8AA9-14D884DC****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsSuccess\\": true,\\n \\"RequestId\\": \\"27E653FA-5958-45BE-8AA9-14D884DC****\\"\\n}","errorExample":""},{"type":"xml","example":"<StartAlertResponse>\\n\\t<IsSuccess>true</IsSuccess>\\n\\t<RequestId>27E653FA-5958-45BE-8AA9-14D884DC****</RequestId>\\n</StartAlertResponse>","errorExample":""}]', + 'title' => 'StartAlert', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'StopAlert' => [ + 'summary' => 'Call StartAlert to stop an alert rule.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AlertId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert rule.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '1610***', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsSuccess' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* `true`: The request is successful.'."\n" + .'* `false`: The request fails.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '27E653FA-5958-45BE-8AA9-14D884DC****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsSuccess\\": true,\\n \\"RequestId\\": \\"27E653FA-5958-45BE-8AA9-14D884DC****\\"\\n}","errorExample":""},{"type":"xml","example":"<StopAlertResponse>\\n\\t<IsSuccess>true</IsSuccess>\\n\\t<RequestId>27E653FA-5958-45BE-8AA9-14D884DC****</RequestId>\\n</StopAlertResponse>","errorExample":""}]', + 'title' => 'StopAlert', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UpdateDispatchRule' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '44519', + 'abilityTreeNodes' => [ + 'FEATUREarmsVBCGEE', + ], + ], + 'parameters' => [ + [ + 'name' => 'DispatchRule', + 'in' => 'query', + 'schema' => [ + 'description' => 'The dispatch rule configuration. The value is a JSON string. For more information about this parameter, see the following **additional information about the DispatchRule parameter**.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '{ "id": 123, "system": false, "ruleid": 10282, "name": "Prometheus Alert", "labelMatchExpressionGrid": { "labelMatchExpressionGroups": [ { "labelMatchExpressions": [ { "key": "_aliyun_arms_involvedObject_kind", "value": "app", "operator": "eq" } ] } ] }, "dispatchType": "CREATE_ALERT/DISCARD_ALERT", "isRecover": true, "groupRules": [ { "groupId": 1, "groupingFields": [ "alertname" ], "groupWait": 10, "groupInterval": 15, "repeatInterval": 20 } ], "notifyRules": [ { "notifyObjects": [ { "notifyType": "ARMS_CONTACT", "name": "JohnDoe", "notifyObjectId": 1 }, { "notifyType": "ARMS_CONTACT_GROUP", "name": "JohnDoe_group", "notifyObjectId": 2 } ], "notifyChannels":["dingTalk","wechat","webhook","email"] }, ], }', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'* `true`: The request was successful.'."\n" + .'* `false`: The request failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'A5EC8221-08F2-4C95-9AF1-49FD998C****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Success\\": true,\\n \\"RequestId\\": \\"A5EC8221-08F2-4C95-9AF1-49FD998C****\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateDispatchRuleResponse>\\n <RequestId>A5EC8221-08F2-4C95-9AF1-49FD998C****</RequestId>\\n <Success>true</Success>\\n</UpdateDispatchRuleResponse>","errorExample":""}]', + 'title' => 'UpdateDispatchRule', + 'summary' => 'Modifies a dispatch policy.', + 'requestParamsDescription' => '## Additional information about the **DispatchRule** parameter'."\n" + ."\n" + .'**JSON string example and description**'."\n" + ."\n" + .'```'."\n" + ."\n" + .'{'."\n" + .' "id": 123, // The ID of the dispatch policy. '."\n" + .' "system": false, // Specifies whether the dispatch rule is editable. Valid values: true: not editable. false: editable. '."\n" + .' "ruleid": 10282, // The ID of the dispatch rule. '."\n" + .' "name": "Prometheus Alert", // The name of the dispatch policy. '."\n" + .' "labelMatchExpressionGrid": {'."\n" + .' "labelMatchExpressionGroups": [ // Sets the dispatch rule. '."\n" + .' {'."\n" + .' "labelMatchExpressions": ['."\n" + .' {'."\n" + .' "key": "_aliyun_arms_involvedObject_kind", // The key of the tag of the dispatch rule. For more information, see the next section. '."\n" + .' "value": "app", // The value of the tag. '."\n" + .' "operator": "eq" // The operator used in the dispatch rule. Valid values: eq: equals to. re: matches a regular expression. '."\n" + .' }'."\n" + .' ]'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "dispatchType": "CREATE_ALERT/DISCARD_ALERT", // The alert handling method. Valid values: CREATE_ALERT: generates an alert. DISCARD_ALERT: discards the alert event and generates no alert.'."\n" + .' "isRecover": true, // Specifies whether to send the restored alert. Valid values: true: sends the alert. false: does not send the alert. '."\n" + .' "groupRules": [ // Sets the event group. '."\n" + .' {'."\n" + .' "groupId": 1, // The ID of the group. '."\n" + .' "groupingFields": [ // The fields that are used to group events. Events with the same field content are assigned to a group. Alerts with the same specified grouping field are sent to the handler in separate notifications. '."\n" + .' "alertname"'."\n" + .' ],'."\n" + .' "groupWait": 10, // The duration for which the system waits after the first alert is sent. After the duration, all alerts are sent in a single notification to the handler. '."\n" + .' "groupInterval": 15, // The grouping interval. During the silence period of repeated alerts, if new alerts are generated, they will be sent after the group waiting time. '."\n" + .' "repeatInterval": 20 // The silence period of repeated alerts. All alerts are repeatedly sent at specified intervals until the alerts are cleared. '."\n" + .' }'."\n" + .' ],'."\n" + .' "notifyRules": [ // Sets the notification rule. '."\n" + .' {'."\n" + .' "notifyObjects": ['."\n" + .' {'."\n" + .' "notifyType": "ARMS_CONTACT", // The type of the alert contact. Valid values: ARMS_CONTACT: contact. ARMS_CONTACT_GROUP: contact group. '."\n" + .' "name": "JohnDoe", // The name of the contact or contact group. '."\n" + .' "notifyObjectId": 1 // The ID of the contact or contact group. '."\n" + .' },'."\n" + .' {'."\n" + .' "notifyType": "ARMS_CONTACT_GROUP",'."\n" + .' "name": "JohnDoe_group",'."\n" + .' "notifyObjectId": 2'."\n" + .' }'."\n" + .' ],'."\n" + .' "notifyChannels":["dingTalk","wechat","webhook","email"] // The notification method. Valid values: dingTalk, sms, webhook, email, and wechat. '."\n" + .' },'."\n" + .' ],'."\n" + .'}'."\n" + .'```'."\n" + ."\n" + .'**Enumerated keys of the tag of the dispatch rule**'."\n" + ."\n" + .'* `_aliyun_arms_userid`: user ID'."\n" + .'* `_aliyun_arms_involvedObject_kind`: type of the associated object'."\n" + .'* `_aliyun_arms_involvedObject_id`: ID of the associated object'."\n" + .'* `_aliyun_arms_involvedObject_name`: name of the associated object'."\n" + .'* `_aliyun_arms_alert_name`: alert name'."\n" + .'* `_aliyun_arms_alert_rule_id`: alert rule ID'."\n" + .'* `_aliyun_arms_alert_type`: alert type'."\n" + .'* `_aliyun_arms_alert_level`: alert severity'."\n", + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SearchAlertRules' => [ + 'summary' => 'Queries alert rules.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '44502', + 'abilityTreeNodes' => [ + 'FEATUREarms20UGKV', + ], + ], + 'parameters' => [ + [ + 'name' => 'Title', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alert rule name.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'AlertRuleTitle', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alert rule type. Valid values:'."\n" + ."\n" + .'* `1`: custom alert rules that are used to monitor drill-down data sets'."\n" + .'* `3`: custom alert rules that are used to monitor tiled data sets'."\n" + .'* `4`: alert rules that are used to monitor the browser, including the default frontend alert rules'."\n" + .'* `5`: alert rules that are used to monitor applications, including the default application alert rules'."\n" + .'* `6`: the default browser alert rules'."\n" + .'* `7`: the default application alert rules'."\n" + .'* `8`: Tracing Analysis alert rules'."\n" + .'* `101`: Prometheus alert rules'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '4', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number of the page to return. Default value: `1`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return per page. Default value: `10`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID of the alert data. For more information about the mappings between **RegionId** and **SystemRegionId**, see the detailed description below the table.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application that is associated with the alert rule. For more information about how to obtain the PID, see [Obtain the PID of an application](https://help.aliyun.com/document_detail/186100.html?spm=a2c4g.11186623.6.792.1b50654cqcDPyk#title-imy-7gj-qhr).'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'AppType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the application that is associated with the alert rule. Valid values:'."\n" + ."\n" + .'* `TRACE`: application'."\n" + .'* `RETCODE`: browser'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'TRACE', + ], + ], + [ + 'name' => 'SystemRegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID of the alert rule. For more information about the mappings between **RegionId** and **SystemRegionId**, see the detailed description below the table.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource group. You can obtain the resource group ID in the **Resource Management** console.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmxyexli2****', + ], + ], + [ + 'name' => 'AlertRuleId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The id of AlertRule.', + 'type' => 'string', + 'required' => false, + 'example' => '12345', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag. The following system preset fields are provided:'."\n" + ."\n" + .'* traceId: the ID of the trace.'."\n" + .'* serverApp: the name of the server application.'."\n" + .'* clientApp: the name of the client application.'."\n" + .'* service: the name of the operation.'."\n" + .'* rpc: the type of the call.'."\n" + .'* msOfSpan: the duration exceeds a specific value.'."\n" + .'* clientIp: the IP address of the client.'."\n" + .'* serverIp: the IP address of the server.'."\n" + .'* isError: specifies whether the call is abnormal.'."\n" + .'* hasTprof: contains only thread profiling.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3****', + ], + 'PageBean' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + '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' => '20', + ], + 'TotalCount' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '23', + ], + 'AlertRules' => [ + 'description' => 'The details of the alert rules.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'The status of the alert rule. `RUNNING`: The alert rule is enabled. `STOPPED`: The alert rule is disabled.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'UpdateTime' => [ + 'description' => 'The timestamp that shows when the alert rule was updated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1480521600000', + ], + 'ContactGroupIdList' => [ + 'description' => 'The ID of the contact group. Multiple IDs are separated by commas (,).'."\n", + 'type' => 'string', + 'example' => '381*,572*', + ], + 'CreateTime' => [ + 'description' => 'The timestamp that shows when the alert rule was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1579508519683', + ], + 'AlertTitle' => [ + 'description' => 'The name of the alert rule.'."\n", + 'type' => 'string', + 'example' => 'TestAlertRule', + ], + 'UserId' => [ + 'description' => 'The ID of the user to which the alert rule belongs.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'AlertVersion' => [ + 'description' => 'The version of the alert rule. Default value: `1`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'HostByAlertManager' => [ + 'description' => 'Indicates whether the alert is sent through the alert center. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'AlertType' => [ + 'description' => 'The type of the alert rule. Valid values:'."\n" + ."\n" + .'* `1`: custom alert rules that are used to monitor drill-down data sets'."\n" + .'* `3`: custom alert rules that are used to monitor tiled data sets'."\n" + .'* `4`: alert rules that are used to monitor the browser, including the default frontend alert rules'."\n" + .'* `5`: alert rules that are used to monitor applications, including the default application alert rules'."\n" + .'* `6`: the default browser alert rules'."\n" + .'* `7`: the default application alert rules'."\n" + .'* `8`: Tracing Analysis alert rules'."\n" + .'* `101`: Prometheus alert rules'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'ContactGroupIds' => [ + 'description' => 'The IDs of the alert contact groups. The value is a JSON array.'."\n", + 'type' => 'string', + 'example' => '[123, 234]', + ], + 'Config' => [ + 'description' => 'The configuration items of the alert rule. The value is a JSON string.'."\n" + ."\n" + .'The configuration item **continuous** indicates whether alert notifications are continuously sent. Valid values:'."\n" + ."\n" + .'* `true`: Alert notifications are sent every minute.'."\n" + .'* `false`: The alert silence feature is enabled.'."\n" + ."\n" + .'The configuration item **dataRevision** indicates the data revision policy that is used if no data is obtained or the data is null. Default value: 2. Valid values:'."\n" + ."\n" + .'* `0`: overwrites the data by using the value 0'."\n" + .'* `1`: overwrites the data by using the value 1'."\n" + .'* `2`: overwrites the data by using the value null. This value indicates that no alert is triggered if no data exists'."\n", + 'type' => 'string', + 'example' => '{\\"continuous\\":true,\\"dataRevision\\":2}', + ], + 'RegionId' => [ + 'description' => 'The ID of the region to which the alert rule belongs.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'AlertLevel' => [ + 'description' => 'The severity of the alerts. Only the value `WARN` is supported.'."\n", + 'type' => 'string', + 'example' => 'WARN', + ], + 'TaskStatus' => [ + 'description' => 'The status of the task. This parameter is hidden from users.'."\n", + 'type' => 'string', + 'example' => '""', + ], + 'Title' => [ + 'description' => 'The name of the alert.'."\n", + 'type' => 'string', + 'example' => 'AlertTest', + ], + 'TaskId' => [ + 'description' => 'The ID of the Application Real-Time Monitoring Service (ARMS) task that is associated with the alert rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'Id' => [ + 'description' => 'The ID of the alert rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'AlertWays' => [ + 'description' => 'Sending method of alarm notification.', + 'type' => 'array', + 'items' => [ + 'description' => 'The notification method of the alerts. Valid values:'."\n" + ."\n" + .'* `SMS`: text message'."\n" + .'* `MAIL`: email'."\n" + .'* `DING_ROBOT`: DingTalk chatbot'."\n", + 'type' => 'string', + 'example' => '["MAIL", "SMS", "DING_ROBOT"]', + ], + ], + 'AlarmContext' => [ + 'description' => 'The format of the alert notification.'."\n", + 'type' => 'object', + 'properties' => [ + 'AlarmContentTemplate' => [ + 'description' => 'The template of the alert notification.'."\n", + 'type' => 'string', + 'example' => 'Alert name: $Alert name\\nFilter condition: $Filter\\nAlert time: $Alert time\\nAlert content: $Alert content\\nNote: The alert persists until a reply email is received. The system will remind you again in 24 hours.'."\n", + ], + 'SubTitle' => [ + 'description' => 'The sub-title of the alert notification.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'AlarmContentSubTitle' => [ + 'description' => 'The sub-title of the alert notification content.'."\n", + 'type' => 'string', + 'example' => 'TestSubTitle', + ], + 'Content' => [ + 'description' => 'The content of the alert notification.'."\n", + 'type' => 'string', + 'example' => 'Alert name: $Alert name\\nFilter condition: $Filter\\nAlert time: $Alert time\\nAlert content: $Alert content\\nNote: The alert persists until a reply email is received. The system will remind you again in 24 hours.'."\n", + ], + ], + ], + 'AlertRule' => [ + 'description' => 'The conditions of the alert rule. Multiple conditions are separated by the AND or OR logical operators.'."\n", + 'type' => 'object', + 'properties' => [ + 'Operator' => [ + 'description' => 'The logical operator between conditions. Valid values: `&`: AND. `|`: OR.'."\n", + 'type' => 'string', + 'example' => '|', + ], + 'Rules' => [ + 'description' => 'The condition of the alert rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Measure' => [ + 'description' => 'The metric based on which alerts are triggered. For more information, see the "[Alert metrics](https://help.aliyun.com/document_detail/175825.html#h2-url-4)" section in this topic.'."\n", + 'type' => 'string', + 'example' => 'appstat.jvm.SystemDiskFree', + ], + 'Value' => [ + 'description' => 'The threshold of the condition.'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '30', + ], + 'Aggregates' => [ + 'description' => 'The aggregation logic of the metric data of the alert rule. Valid values:'."\n" + ."\n" + .'* `AVG`: calculates the average value for each minute'."\n" + .'* `SUM`: calculates the total value for each minute'."\n" + .'* `MAX`: calculates the maximum value for each minute'."\n" + .'* `MIN`: calculates the minimum value for each minute'."\n", + 'type' => 'string', + 'example' => 'AVG', + ], + 'NValue' => [ + 'description' => 'The time range when data is requested. Unit: minutes. For example, a value of 5 indicates that the alert rule applies to the data in the last 5 minutes.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'Operator' => [ + 'description' => 'The operation logic of the condition. Valid values:'."\n" + ."\n" + .'* CURRENT_GTE: greater than or equal to'."\n" + .'* CURRENT_LTE: less than or equal to'."\n" + .'* PREVIOUS_UP: the increase percentage compared with the last period'."\n" + .'* PREVIOUS_DOWN: the decrease percentage compared with the last period'."\n" + .'* HOH_UP: the increase percentage compared with the last hour'."\n" + .'* HOH_DOWN: the decrease percentage compared with the last hour'."\n" + .'* DOD_UP: the increase percentage compared with the last day'."\n" + .'* DOD_DOWN: the decrease percentage compared with the last day'."\n", + 'type' => 'string', + 'example' => 'CURRENT_GTE', + ], + 'Alias' => [ + 'description' => 'The displayed description of the alert metric.'."\n", + 'type' => 'string', + 'example' => 'response time_ms'."\n", + ], + ], + ], + ], + ], + ], + 'MetricParam' => [ + 'description' => 'The information about the application that is associated with the alert rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the metric. Valid values:'."\n" + ."\n" + .'* `txn`: the number of API calls during application monitoring'."\n" + .'* `txn_type`: the types of API calls during application monitoring'."\n" + .'* `db`: database metrics'."\n" + .'* `jvm`: Java virtual machine (JVM) metrics'."\n" + .'* `host`: host metrics'."\n" + .'* `exception`: API call errors'."\n", + 'type' => 'string', + 'example' => 'DB', + ], + 'AppGroupId' => [ + 'description' => 'The ID of the application group that is associated with the alert rule. This parameter is applicable to Enterprise Distributed Application Service (EDAS) applications.'."\n", + 'type' => 'string', + 'example' => 'DEFAULT', + ], + 'AppId' => [ + 'description' => 'The auto-increment ID of the ARMS application. You can ignore this ID.'."\n", + 'type' => 'string', + 'example' => '123', + ], + 'Pid' => [ + 'description' => 'The PID of the application that is associated with the alert rule.'."\n", + 'type' => 'string', + 'example' => '9870ca99-8105-4da7-a3a4-d72dd1b1****', + ], + 'Dimensions' => [ + 'description' => 'The dimensions in the condition.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the dimension. Valid values:'."\n" + ."\n" + .'* `rpc`: the name of the API'."\n" + .'* `rpcType`: the type of the API call, such as HTTP or DUBBO'."\n" + .'* `endpoint`: the name of the database'."\n" + .'* `rootIp`: the IP address of the host'."\n", + 'type' => 'string', + 'example' => 'rootIp', + ], + 'Type' => [ + 'description' => 'The type of the dimension. Valid values:'."\n" + ."\n" + .'* `STATIC`: checks only the value of this dimension. In this case, you must set the **dimensions.value** parameter.'."\n" + .'* `ALL`: checks the values of all dimensions. The metrics of all API calls are checked. If an API call triggers an alert, the name of the API is displayed in the alert notification. In this case, you do not need to set the **dimensions.value** parameter.'."\n" + .'* `DISABLE`: aggregates the values of all dimensions. In this case, you do not need to set the **dimensions.value** parameter.'."\n", + 'type' => 'string', + 'example' => 'DISABLE', + ], + 'Value' => [ + 'description' => 'The value of the dimension.'."\n", + 'type' => 'string', + 'example' => '"127.0.0.1"', + ], + ], + ], + ], + ], + ], + 'Notice' => [ + 'description' => 'The time ranges when the alert rule takes effect and when alert notifications are sent.'."\n", + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => 'The end of the time range when the alert rule takes effect within 24 hours per day. This value is a UNIX timestamp. The year, month, and day that are indicated by the timestamp are not displayed in this value. Only the hour, minute, and second are displayed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1480607940000', + ], + 'NoticeEndTime' => [ + 'description' => 'The end of the time range when alert notifications are sent based on the alert rule within 24 hours per day. This value is a UNIX timestamp. The year, month, and day that are indicated by the timestamp are not displayed in this value. Only the hour, minute, and second are displayed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1480607940000', + ], + 'StartTime' => [ + 'description' => 'The beginning of the time range when the alert rule takes effect within 24 hours per day. This value is a UNIX timestamp. The year, month, and day that are indicated by the timestamp are not displayed in this value. Only the hour, minute, and second are displayed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1480521600000', + ], + 'NoticeStartTime' => [ + 'description' => 'The beginning of the time range when alert notifications are sent based on the alert rule within 24 hours per day. This value is a UNIX timestamp. The year, month, and day that are indicated by the timestamp are not displayed in this value. Only the hour, minute, and second are displayed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1480521600000', + ], + ], + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmxyexli2****', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\",\\n \\"PageBean\\": {\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 23,\\n \\"AlertRules\\": [\\n {\\n \\"Status\\": \\"RUNNING\\",\\n \\"UpdateTime\\": 1480521600000,\\n \\"ContactGroupIdList\\": \\"381*,572*\\",\\n \\"CreateTime\\": 1579508519683,\\n \\"AlertTitle\\": \\"TestAlertRule\\",\\n \\"UserId\\": \\"113197164949****\\",\\n \\"AlertVersion\\": 1,\\n \\"HostByAlertManager\\": true,\\n \\"AlertType\\": 4,\\n \\"ContactGroupIds\\": \\"[123, 234]\\",\\n \\"Config\\": \\"{\\\\\\\\\\\\\\"continuous\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"dataRevision\\\\\\\\\\\\\\":2}\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AlertLevel\\": \\"WARN\\",\\n \\"TaskStatus\\": \\"\\\\\\"\\\\\\"\\",\\n \\"Title\\": \\"AlertTest\\",\\n \\"TaskId\\": 123,\\n \\"Id\\": 123,\\n \\"AlertWays\\": [\\n \\"[\\\\\\"MAIL\\\\\\", \\\\\\"SMS\\\\\\", \\\\\\"DING_ROBOT\\\\\\"]\\"\\n ],\\n \\"AlarmContext\\": {\\n \\"AlarmContentTemplate\\": \\"报警名称:$报警名称\\\\\\\\n筛选条件:$筛选\\\\\\\\n报警时间:$报警时间\\\\\\\\n报警内容:$报警内容\\\\\\\\n注意:该报警未收到恢复邮件之前,正在持续报警中,24小时后会再次提醒您!\\",\\n \\"SubTitle\\": \\"test\\",\\n \\"AlarmContentSubTitle\\": \\"TestSubTitle\\",\\n \\"Content\\": \\"报警名称:$报警名称\\\\\\\\n筛选条件:$筛选\\\\\\\\n报警时间:$报警时间\\\\\\\\n报警内容:$报警内容\\\\\\\\n注意:该报警未收到恢复邮件之前,正在持续报警中,24小时后会再次提醒您!\\"\\n },\\n \\"AlertRule\\": {\\n \\"Operator\\": \\"|\\",\\n \\"Rules\\": [\\n {\\n \\"Measure\\": \\"appstat.jvm.SystemDiskFree\\",\\n \\"Value\\": 30,\\n \\"Aggregates\\": \\"AVG\\",\\n \\"NValue\\": 5,\\n \\"Operator\\": \\"CURRENT_GTE\\",\\n \\"Alias\\": \\"调用响应时间_ms\\"\\n }\\n ]\\n },\\n \\"MetricParam\\": {\\n \\"Type\\": \\"DB\\",\\n \\"AppGroupId\\": \\"DEFAULT\\",\\n \\"AppId\\": \\"123\\",\\n \\"Pid\\": \\"9870ca99-8105-4da7-a3a4-d72dd1b1****\\",\\n \\"Dimensions\\": [\\n {\\n \\"Key\\": \\"rootIp\\",\\n \\"Type\\": \\"DISABLE\\",\\n \\"Value\\": \\"\\\\\\"127.0.0.1\\\\\\"\\"\\n }\\n ]\\n },\\n \\"Notice\\": {\\n \\"EndTime\\": 1480607940000,\\n \\"NoticeEndTime\\": 1480607940000,\\n \\"StartTime\\": 1480521600000,\\n \\"NoticeStartTime\\": 1480521600000\\n },\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<SearchAlertRulesResponse>\\n <RequestId>34ED024E-9E31-434A-9E4E-D9D15C3****</RequestId>\\n <PageBean>\\n <PageNumber>1</PageNumber>\\n <PageSize>20</PageSize>\\n <TotalCount>23</TotalCount>\\n <AlertRules>\\n <Status>RUNNING</Status>\\n <UpdateTime>1480521600000</UpdateTime>\\n <ContactGroupIdList>381*,572*</ContactGroupIdList>\\n <CreateTime>1579508519683</CreateTime>\\n <AlertTitle>TestAlertRule</AlertTitle>\\n <UserId>113197164949****</UserId>\\n <AlertVersion>1</AlertVersion>\\n <HostByAlertManager>true</HostByAlertManager>\\n <AlertType>4</AlertType>\\n <ContactGroupIds>[123, 234]</ContactGroupIds>\\n <Config>{\\\\\\"continuous\\\\\\":true,\\\\\\"dataRevision\\\\\\":2}</Config>\\n <RegionId>cn-hangzhou</RegionId>\\n <AlertLevel>WARN</AlertLevel>\\n <TaskStatus>\\"\\"</TaskStatus>\\n <Title>AlertTest</Title>\\n <TaskId>123</TaskId>\\n <Id>123</Id>\\n <AlertWays>[\\"MAIL\\", \\"SMS\\", \\"DING_ROBOT\\"]</AlertWays>\\n <AlarmContext>\\n <AlarmContentTemplate>报警名称:$报警名称\\\\n筛选条件:$筛选\\\\n报警时间:$报警时间\\\\n报警内容:$报警内容\\\\n注意:该报警未收到恢复邮件之前,正在持续报警中,24小时后会再次提醒您!</AlarmContentTemplate>\\n <SubTitle>test</SubTitle>\\n <AlarmContentSubTitle>TestSubTitle</AlarmContentSubTitle>\\n <Content>报警名称:$报警名称\\\\n筛选条件:$筛选\\\\n报警时间:$报警时间\\\\n报警内容:$报警内容\\\\n注意:该报警未收到恢复邮件之前,正在持续报警中,24小时后会再次提醒您!</Content>\\n </AlarmContext>\\n <AlertRule>\\n <Operator>|</Operator>\\n <Rules>\\n <Measure>appstat.jvm.SystemDiskFree</Measure>\\n <Value>30</Value>\\n <Aggregates>AVG</Aggregates>\\n <NValue>5</NValue>\\n <Operator>CURRENT_GTE</Operator>\\n <Alias>调用响应时间_ms</Alias>\\n </Rules>\\n </AlertRule>\\n <MetricParam>\\n <Type>DB</Type>\\n <AppGroupId>DEFAULT</AppGroupId>\\n <AppId>123</AppId>\\n <Pid>9870ca99-8105-4da7-a3a4-d72dd1b1****</Pid>\\n <Dimensions>\\n <Key>rootIp</Key>\\n <Type>DISABLED</Type>\\n <Value>\\"127.0.0.1\\"</Value>\\n </Dimensions>\\n </MetricParam>\\n <Notice>\\n <EndTime>1480607940000</EndTime>\\n <NoticeEndTime>1480607940000</NoticeEndTime>\\n <StartTime>1480521600000</StartTime>\\n <NoticeStartTime>1480521600000</NoticeStartTime>\\n </Notice>\\n </AlertRules>\\n </PageBean>\\n</SearchAlertRulesResponse>","errorExample":""}]', + 'title' => 'SearchAlertRules', + 'description' => 'The current operation is no longer maintained. You can call the GetAlertRules operation of Alert Management (New) to query existing alert rules.'."\n", + 'requestParamsDescription' => '### Mappings between **RegionId** and **SystemRegionId**'."\n" + ."\n" + .'The SearchAlertRules operation obtains the alert rules of the specified region based on the value specified for **SystemRegionId**.'."\n" + ."\n" + .'* If the **SystemRegionId** parameter is not specified, the backend automatically uses the **RegionId** value as the **SystemRegionId** value.'."\n" + .'* If the **SystemRegionId** parameter is specified, **RegionId** must be specified based on the following mappings. Otherwise, data cannot be returned.'."\n" + ."\n" + .'|RegionId|SystemRegionId|'."\n" + .'|---|---|'."\n" + .'|cn-hangzhou: China (Hangzhou)|cn-hangzhou: China (Hangzhou)|'."\n" + .'|cn-hangzhou: China (Hangzhou)|cn-shanghai: China (Shanghai)|'."\n" + .'|cn-hangzhou: China (Hangzhou)|cn-qingdao: China (Qingdao)|'."\n" + .'|cn-hangzhou: China (Hangzhou)|cn-beijing: China (Beijing)|'."\n" + .'|cn-hangzhou: China (Hangzhou)|cn-zhangjiakou: China (Zhangjiakou)|'."\n" + .'|cn-hangzhou: China (Hangzhou)|cn-huhehaote: China (Hohhot)|'."\n" + .'|cn-hangzhou: China (Hangzhou)|cn-shenzhen: China (Shenzhen)|'."\n" + .'|cn-hangzhou: China (Hangzhou)|cn-chengdu: China (Chengdu)|'."\n" + .'|cn-hangzhou: China (Hangzhou)|cn-hongkong: China (Hong Kong)|'."\n" + .'|ap-southeast-1: Singapore|ap-southeast-1: Singapore|'."\n" + .'|ap-southeast-1: Singapore|ap-southeast-2: Australia (Sydney)|'."\n" + .'|ap-southeast-1: Singapore|ap-southeast-3: Malaysia (Kuala Lumpur)|'."\n" + .'|ap-southeast-1: Singapore|ap-southeast-5: Indonesia (Jakarta)|'."\n" + .'|ap-southeast-1: Singapore|ap-south-1: India (Mumbai)|'."\n" + .'|ap-southeast-1: Singapore|me-east-1: UAE (Dubai)|'."\n" + .'|ap-southeast-1: Singapore|ap-southeast-6: Philippines (Manila)|'."\n" + .'|ap-northeast-1: Japan (Tokyo)|ap-northeast-1: Japan (Tokyo)|'."\n" + .'|us-west-1: US (Silicon Valley)|us-west-1: US (Silicon Valley)|'."\n" + .'|us-west-1: US (Silicon Valley)|us-east-1: US (Virginia)|'."\n" + .'|eu-west-1: UK (London)|eu-central-1: Germany (Frankfurt)|'."\n" + .'|eu-west-1: UK (London)|eu-west-1: UK (London)|'."\n" + .'|cn-hangzhou-finance: China East 1 Finance|cn-shanghai-finance-1: China East 2 Finance|'."\n" + .'|cn-hangzhou-finance: China East 1 Finance|cn-hangzhou-finance: China East 1 Finance|'."\n" + ."\n\n" + .'For example, you can perform the following operations to query the alert data of the China (Shanghai) region:'."\n" + ."\n" + .'* Set **RegionId** to **cn-shanghai** if the **SystemRegionId** parameter is not specified.'."\n" + .'* Set **RegionId** to **cn-hangzhou** and **SystemRegionId** to **cn-shanghai**.'."\n" + ."\n" + .'To query the alert rules of the Germany (Frankfurt) region, set **RegionId** to **eu-west-1** and **SystemRegionId** to **eu-central-1**.', + 'responseParamsDescription' => '## Alert metrics'."\n" + ."\n" + .'* Alert type (metricParam.type): txn'."\n" + ."\n" + .' * Dimension (dimensions.key): rpc'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.txn.rt: the response time of API calls (Unit: milliseconds)'."\n" + .' * appstat.txn.count: the number of API calls'."\n" + .' * appstat.txn.errcount: the number of API call errors'."\n" + ."\n" + .'* Alert type (metricParam.type): txn_type'."\n" + ."\n" + .' * Dimension (dimensions.key): rpcType'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.inbound.rt: the response time of API calls for services that are provided by the application (Unit: milliseconds)'."\n" + .' * appstat.inbound.count: the number of API calls for services that are provided by the application'."\n" + .' * appstat.inbound.error: the number of API call errors for services that are provided by the application'."\n" + .' * appstat.outbound.rt: the response time of API calls for services on which the application depends (Unit: milliseconds)'."\n" + .' * appstat.outbound.count: the number of API calls for services on which the application depends'."\n" + .' * appstat.outbound.error: the number of API call errors for services on which the application depends'."\n" + ."\n" + .'* Alert type (metricParam.type): db'."\n" + ."\n" + .' * Dimension (dimensions.key): endpoint'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.database.rt: the response time of API calls for the database'."\n" + .' * appstat.database.count: the number of API calls for the database'."\n" + .' * appstat.database.errcount: the number of API call errors for the database'."\n" + ."\n" + .'* Alert type (metricParam.type): jvm'."\n" + ."\n" + .' * Dimension (dimensions.key): rootIp'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.jvm.heap_used: the total memory space in the JVM heap (Unit: bytes)'."\n" + .' * appstat.jvm.GcPsScavengeCount: the number of garbage collections (GCs) in JVM'."\n" + .' * appstat.jvm.GcPsMarkSweepCount: the number of tag deletions in JVM'."\n" + .' * appstat.jvm.GcG1OldGenCount: the number of Garbage-First (G1) GCs in the old generation'."\n" + .' * appstat.jvm.GcG1YoungGenCount: the number of G1 GCs in the young generation'."\n" + .' * appstat.jvm.gc.YoungGcCountInstant: the number of GCs in the young generation'."\n" + .' * appstat.jvm.gc.OldGcCountInstant: the number of full heap GCs (Full GCs) in JVM'."\n" + .' * appstat.jvm.gc.YoungGcTimeInstant: the time that is consumed for the GCs in the young generation (Unit: milliseconds)'."\n" + .' * appstat.jvm.gc.OldGcTimeInstant: the time that is consumed for the Full GCs in JVM (Unit: milliseconds)'."\n" + .' * appstat.jvm.ThreadCount: the total number of JVM threads'."\n" + .' * appstat.jvm.non_heap_used: the used space of the non-heap JVM memory (Unit: bytes)'."\n" + .' * appstat.jvm.non_heap_max: the maximum space of the non-heap JVM memory (Unit: bytes)'."\n" + .' * appstat.jvm.non_heap_init: the initial space of the non-heap JVM memory (Unit: bytes)'."\n" + .' * appstat.jvm.non_heap_committed: the submitted space of the non-heap JVM memory (Unit: bytes)'."\n" + ."\n" + .'* Alert type (metricParam.type): host'."\n" + ."\n" + .' * Dimension (dimensions.key): rootIp'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.jvm.SystemCpuUser: the CPU usage of the host (Unit: percentage)'."\n" + .' * appstat.jvm.SystemMemFree: the idle memory space of the host (Unit: bytes)'."\n" + .' * appstat.jvm.SystemDiskFree: the idle disk space of the host (Unit: bytes)'."\n" + .' * appstat.jvm.SystemNetInErrs: the number of error messages that are received by the host'."\n" + .' * appstat.jvm.SystemNetOutErrs: the number of error messages that are sent by the host'."\n" + .' * appstat.jvm.SystemLoad: the system load of the host'."\n" + ."\n" + .'* Alert type (metricParam.type): exception'."\n" + ."\n" + .' * Dimension (dimensions.key): rpc'."\n" + ."\n" + .' * Metrics (alertRule.rules.measure):'."\n" + ."\n" + .' * appstat.exception.rt: the response time of abnormal API calls for the application (Unit: milliseconds)'."\n" + .' * appstat.exception.count: the number of abnormal API calls for the application'."\n", + 'extraInfo' => ' ', + ], + 'SearchAlertContact' => [ + 'summary' => 'Queries alert contacts.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'John Doe', + ], + ], + [ + 'name' => 'Phone', + 'in' => 'query', + 'schema' => [ + 'description' => 'The mobile number of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '1381111*****', + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'description' => 'The email address of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region. Set the value to `cn-hangzhou`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ContactIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[12345]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response object.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '21E85B16-75A6-429A-9F65-8AAC9A54****', + ], + 'PageBean' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + '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', + ], + 'TotalCount' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '23', + ], + 'Contacts' => [ + 'description' => 'The information about the alert contacts.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'UpdateTime' => [ + 'description' => 'The timestamp generated when the alert contact was updated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1580258717000', + ], + 'DingRobot' => [ + 'description' => 'The webhook URL of the DingTalk chatbot.'."\n", + 'type' => 'string', + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=91f2f6****', + ], + 'Webhook' => [ + 'description' => 'The information about the webhook.'."\n", + 'type' => 'string', + 'example' => '{\\"body\\":\\"{ \\\\\\"msg_type\\\\\\": \\\\\\"text\\\\\\", \\\\\\"content\\\\\\": { \\\\\\"text\\\\\\": \\\\\\"$content\\\\\\" } }\\",\\"header\\":{\\"Arms-Content-Type\\":\\"json\\"},\\"method\\":\\"post\\",\\"params\\":{},\\"url\\":\\"https://***",\\"userId\\":\\"1131971649***\\"}",', + ], + 'Email' => [ + 'description' => 'The email address of the alert contact.'."\n", + 'type' => 'string', + 'example' => '[email protected]', + ], + 'ContactId' => [ + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'CreateTime' => [ + 'description' => 'The timestamp generated when the alert contact was created.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1572349025000', + ], + 'UserId' => [ + 'description' => 'The ID of the user.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'ContactName' => [ + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'example' => 'John Doe', + ], + 'SystemNoc' => [ + 'description' => 'Indicates whether the alert contact receives system notifications. Valid values:'."\n" + ."\n" + .'* `true`: The alert contact receives system notifications.'."\n" + .'* `false`: The alert contact does not receive system notifications.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'Content' => [ + 'description' => 'The contact group to which the contact belongs. If your contacts are added to multiple contact groups, the contact groups are separated by vertical bars (|).'."\n", + 'type' => 'string', + 'example' => 'Default Group | SRE Group'."\n", + ], + 'Phone' => [ + 'description' => 'The mobile number of the alert contact.'."\n", + 'type' => 'string', + 'example' => '1381111*****', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-acfmxyexli2****', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"21E85B16-75A6-429A-9F65-8AAC9A54****\\",\\n \\"PageBean\\": {\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 23,\\n \\"Contacts\\": [\\n {\\n \\"UpdateTime\\": 1580258717000,\\n \\"DingRobot\\": \\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\\",\\n \\"Webhook\\": \\"{\\\\\\\\\\\\\\"body\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"{ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"msg_type\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\": \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"text\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\", \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"content\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\": { \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"text\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\": \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"$content\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" } }\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"header\\\\\\\\\\\\\\":{\\\\\\\\\\\\\\"Arms-Content-Type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"json\\\\\\\\\\\\\\"},\\\\\\\\\\\\\\"method\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"post\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"params\\\\\\\\\\\\\\":{},\\\\\\\\\\\\\\"url\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"https://***\\\\\\",\\\\\\\\\\\\\\"userId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1131971649***\\\\\\\\\\\\\\"}\\\\\\",\\",\\n \\"Email\\": \\"[email protected]\\",\\n \\"ContactId\\": 123,\\n \\"CreateTime\\": 1572349025000,\\n \\"UserId\\": \\"113197164949****\\",\\n \\"ContactName\\": \\"John Doe\\",\\n \\"SystemNoc\\": false,\\n \\"Content\\": \\"默认分组|SRE分组\\",\\n \\"Phone\\": \\"1381111*****\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxyexli2****\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<SearchAlertContactResponse>\\n <RequestId>21E85B16-75A6-429A-9F65-8AAC9A54****</RequestId>\\n <PageBean>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>23</TotalCount>\\n <Contacts>\\n <UpdateTime>1580258717000</UpdateTime>\\n <DingRobot>https://oapi.dingtalk.com/robot/send?access_token=91f2f6****</DingRobot>\\n <Webhook>{\\\\\\"body\\\\\\":\\\\\\"{ \\\\\\\\\\\\\\"msg_type\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"text\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"content\\\\\\\\\\\\\\": { \\\\\\\\\\\\\\"text\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"$content\\\\\\\\\\\\\\" } }\\\\\\",\\\\\\"header\\\\\\":{\\\\\\"Arms-Content-Type\\\\\\":\\\\\\"json\\\\\\"},\\\\\\"method\\\\\\":\\\\\\"post\\\\\\",\\\\\\"params\\\\\\":{},\\\\\\"url\\\\\\":\\\\\\"https://***\\",\\\\\\"userId\\\\\\":\\\\\\"1131971649***\\\\\\"}\\",</Webhook>\\n <Email>[email protected]</Email>\\n <ContactId>123</ContactId>\\n <CreateTime>1572349025000</CreateTime>\\n <UserId>113197164949****</UserId>\\n <ContactName>John Doe</ContactName>\\n <SystemNoc>false</SystemNoc>\\n <Content>默认分组|SRE分组</Content>\\n <Phone>1381111*****</Phone>\\n </Contacts>\\n </PageBean>\\n</SearchAlertContactResponse>","errorExample":""}]', + 'title' => 'SearchAlertContact', + 'description' => 'This operation is no longer maintained. To query alert contacts, call the DescribeContacts operation provided by the new version of Alert Management.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SearchAlertContactGroup' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'ContactGroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the alert contact group.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'TestGroup', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region. Default value: `cn-hangzhou`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ContactName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'John Doe', + ], + ], + [ + 'name' => 'ContactId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact. You can call the SearchAlertContact operation to query the contact IDs. For more information, see [SearchAlertContact](~~130703~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'docRequired' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'ContactGroupIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert contact group. You can query multiple alert contact groups at a time. Separate multiple group IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '746', + ], + ], + [ + 'name' => 'IsDetail', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to return all alert contacts in the queried alert contact group. By default, not all alert contacts are returned.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '4D6C358A-A58B-4F4B-94CE-F5AAF023****', + ], + 'ContactGroups' => [ + 'description' => 'The information about the alert contact groups.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'UpdateTime' => [ + 'description' => 'The time when the alert contact group was last modified. 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' => '1529668855000', + ], + 'ContactGroupName' => [ + 'description' => 'The name of the alert contact group.'."\n", + 'type' => 'string', + 'example' => 'TestGroup', + ], + 'ContactGroupId' => [ + 'description' => 'The ID of the alert contact group.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '746', + ], + 'CreateTime' => [ + 'description' => 'The time when the alert contact group list was created. 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' => '1529668855000', + ], + 'UserId' => [ + 'description' => 'The ID of the user.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'Contacts' => [ + 'description' => 'The alert contact list.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'UpdateTime' => [ + 'description' => 'The time when the alert contact group was last modified. 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' => '1580258717000', + ], + 'DingRobot' => [ + 'description' => 'The webhook URL of the DingTalk chatbot.'."\n", + 'type' => 'string', + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=91f2f6****', + ], + 'Email' => [ + 'description' => 'The email address of the alert contact.'."\n", + 'type' => 'string', + 'example' => '[email protected]', + ], + 'ContactId' => [ + 'description' => 'The ID of the alert contact.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'CreateTime' => [ + 'description' => 'The time when the alert contact group list was created. 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' => '1572349025000', + ], + 'UserId' => [ + 'description' => 'The ID of the user.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'ContactName' => [ + 'description' => 'The name of the alert contact.'."\n", + 'type' => 'string', + 'example' => 'John Doe', + ], + 'SystemNoc' => [ + 'description' => 'Indicates whether the alert contact receives system notifications. Valid values:'."\n" + ."\n" + .'* true: receives system notifications.'."\n" + .'* false: does not receive system notifications.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'Phone' => [ + 'description' => 'The mobile number of the alert contact.'."\n", + 'type' => 'string', + 'example' => '1381111*****', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4D6C358A-A58B-4F4B-94CE-F5AAF023****\\",\\n \\"ContactGroups\\": [\\n {\\n \\"UpdateTime\\": 1529668855000,\\n \\"ContactGroupName\\": \\"TestGroup\\",\\n \\"ContactGroupId\\": 746,\\n \\"CreateTime\\": 1529668855000,\\n \\"UserId\\": \\"113197164949****\\",\\n \\"Contacts\\": [\\n {\\n \\"UpdateTime\\": 1580258717000,\\n \\"DingRobot\\": \\"https://oapi.dingtalk.com/robot/send?access_token=91f2f6****\\",\\n \\"Email\\": \\"[email protected]\\",\\n \\"ContactId\\": 123,\\n \\"CreateTime\\": 1572349025000,\\n \\"UserId\\": \\"113197164949****\\",\\n \\"ContactName\\": \\"John Doe\\",\\n \\"SystemNoc\\": false,\\n \\"Phone\\": \\"1381111*****\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<SearchAlertContactGroupResponse>\\n<ContactGroups>\\n <ContactGroupId>746</ContactGroupId>\\n <UpdateTime>1529668855000</UpdateTime>\\n <ContactGroupName>TestGroup</ContactGroupName>\\n <UserId>113197164949****</UserId>\\n <CreateTime>1529668855000</CreateTime>\\n</ContactGroups>\\n<ContactGroups>\\n <Contacts>\\n <Email>[email protected]</Email>\\n <UserId>113197164949****</UserId>\\n <Phone>1381111*****</Phone>\\n <CreateTime>1572349025000</CreateTime>\\n <UpdateTime>1580258717000</UpdateTime>\\n <ContactId>123</ContactId>\\n <DingRobot>https://oapi.dingtalk.com/robot/send?access_token=91f2f6****</DingRobot>\\n <SystemNoc>false</SystemNoc>\\n <ContactName>John Doe</ContactName>\\n </Contacts>\\n</ContactGroups>\\n<RequestId>4D6C358A-A58B-4F4B-94CE-F5AAF023****</RequestId>\\n</SearchAlertContactGroupResponse>","errorExample":""}]', + 'title' => 'SearchAlertContactGroup', + 'summary' => 'Queries alert contact groups.', + 'description' => 'The operation is no longer maintained. Call the DescribeContactGroups operation in the alert management module to query alert contact groups.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SearchAlertHistories' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '44501', + 'abilityTreeNodes' => [ + 'FEATUREarmsEYPVV6', + ], + ], + 'parameters' => [ + [ + 'name' => 'AlertId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert rule. You can call the SearchAlertRules operation and view the `Id` parameter in the response. For more information, see [SearchAlertRules](~~175825~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'docRequired' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'AlertType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the alert rule. Valid values:'."\n" + ."\n" + .'* `1`: a custom alert rule that is used to monitor drill-down data sets'."\n" + .'* `3`: a custom alert rule that is used to monitor tiled data sets'."\n" + .'* `4`: an alert rule that is used to monitor web pages, including the default alert rule for browser monitoring'."\n" + .'* `5`: an alert rule that is used to monitor applications, including the default alert rule for application monitoring'."\n" + .'* `6`: the default alert rule for browser monitoring'."\n" + .'* `7`: the default alert rule for application monitoring'."\n" + .'* `8`: a Tracing Analysis alert rule'."\n" + .'* `101`: a Prometheus alert rule'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => false, + 'example' => '4', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return. Default value: `1`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => 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, + 'docRequired' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region. Default value: `cn-hangzhou`.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. The value is a UNIX timestamp of the LONG data type. Unit: milliseconds. The default value is 10 minutes before the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'docRequired' => false, + 'example' => '1595568910000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. The value is a UNIX timestamp of the LONG data type. Unit: milliseconds. The default value is the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'docRequired' => false, + 'example' => '1579499626000', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '2FC13182-B9AF-4E6B-BE51-72669B7C****', + ], + 'PageBean' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + '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', + ], + 'TotalCount' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'AlarmHistories' => [ + 'description' => 'The information about alert records.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AlarmTime' => [ + 'description' => 'The time when the alert notification was sent.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1595564179000', + ], + 'StrategyId' => [ + 'description' => 'The internal fields.'."\n", + 'type' => 'string', + 'example' => '""', + ], + 'AlarmResponseCode' => [ + 'description' => 'The response code returned after the alert notification was sent.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Emails' => [ + 'description' => 'The email address of the alert contact.'."\n", + 'type' => 'string', + 'example' => '[email protected]', + ], + 'UserId' => [ + 'description' => 'The ID of the user.'."\n", + 'type' => 'string', + 'example' => '113197164949****', + ], + 'AlarmSources' => [ + 'description' => 'The webhook URL, such as the webhook URL of a DingTalk chatbot.'."\n", + 'type' => 'string', + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=91f2f65002fefe0ab9b71e6590c5ca504348cad742ff01e9c8ab204439ca****', + ], + 'AlarmContent' => [ + 'description' => 'The content of the alert notification.'."\n", + 'type' => 'string', + 'example' => '"Alert name: Alert1\\nAlert time: 2020-07-24 12:14:00\\nAlert content: A total of four alerts are triggered: \\*\\*\\*\\*"'."\n", + ], + 'Phones' => [ + 'description' => 'The mobile phone number of the alert contact.'."\n", + 'type' => 'string', + 'example' => '1381111****', + ], + 'AlarmType' => [ + 'description' => 'The type of the alert rule. Default value: 4. Valid values:'."\n" + ."\n" + .'* `1`: a custom alert rule that is used to monitor drill-down data sets'."\n" + .'* `3`: a custom alert rule that is used to monitor tiled data sets'."\n" + .'* `4`: an alert rule that is used to monitor web pages, including the default alert rule for browser monitoring'."\n" + .'* `5`: an alert rule that is used to monitor applications, including the default alert rule for application monitoring'."\n" + .'* `6`: the default alert rule for browser monitoring'."\n" + .'* `7`: the default alert rule for application monitoring'."\n" + .'* `8`: a Tracing Analysis alert rule'."\n" + .'* `101`: a Prometheus alert rule'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'Target' => [ + 'description' => 'The internal fields.'."\n", + 'type' => 'string', + 'example' => '""', + ], + 'Id' => [ + 'description' => 'The ID of the alert notification.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2FC13182-B9AF-4E6B-BE51-72669B7C****\\",\\n \\"PageBean\\": {\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 2,\\n \\"AlarmHistories\\": [\\n {\\n \\"AlarmTime\\": 1595564179000,\\n \\"StrategyId\\": \\"\\\\\\"\\\\\\"\\",\\n \\"AlarmResponseCode\\": 200,\\n \\"Emails\\": \\"[email protected]\\",\\n \\"UserId\\": \\"113197164949****\\",\\n \\"AlarmSources\\": \\"https://oapi.dingtalk.com/robot/send?access_token=91f2f65002fefe0ab9b71e6590c5ca504348cad742ff01e9c8ab204439ca****\\",\\n \\"AlarmContent\\": \\"\\\\\\"报警名称:Alert1\\\\\\\\n报警时间:2020-07-24 12:14:00\\\\\\\\n报警内容:共有4条记录触发异常:****\\\\\\"\\",\\n \\"Phones\\": \\"1381111****\\",\\n \\"AlarmType\\": 4,\\n \\"Target\\": \\"\\\\\\"\\\\\\"\\",\\n \\"Id\\": 123\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<SearchAlertHistoriesResponse>\\n<PageBean>\\n <TotalCount>2</TotalCount>\\n <PageSize>10</PageSize>\\n <PageNumber>1</PageNumber>\\n <AlarmHistories>\\n <Target>\\"\\"</Target>\\n <Phones>1381111****</Phones>\\n <AlarmTime>1595564179000</AlarmTime>\\n <UserId>113197164949****</UserId>\\n <AlarmResponseCode>200</AlarmResponseCode>\\n <AlarmType>4</AlarmType>\\n <StrategyId>\\"\\"</StrategyId>\\n <AlarmContent>\\"报警名称:Alert1\\\\n报警时间:2020-07-24 12:14:00\\\\n报警内容:共有4条记录触发异常:****\\"</AlarmContent>\\n <Emails>[email protected]</Emails>\\n <Id>123</Id>\\n <AlarmSources>https://oapi.dingtalk.com/robot/send?access_token=91f2f65002fefe0ab9b71e6590c5ca504348cad742ff01e9c8ab204439ca****</AlarmSources>\\n </AlarmHistories>\\n</PageBean>\\n<RequestId>2FC13182-B9AF-4E6B-BE51-72669B7C****</RequestId>\\n</SearchAlertHistoriesResponse>","errorExample":""}]', + 'title' => 'SearchAlertHistories', + 'summary' => 'Queries the alert records of an alert rule.', + 'description' => 'This operation is no longer maintained. To query alert records, call the ListAlerts operation provided by the new version of Alert Management.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SearchEvents' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'AlertId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the alert rule. You can call the SearchAlertRules operation and view the `Id` parameter in the response. For more information, see [SearchAlertRules](~~175825~~).'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'docRequired' => false, + 'example' => '123', + ], + ], + [ + 'name' => 'Pid', + 'in' => 'query', + 'schema' => [ + 'description' => 'The process identifier (PID) of the application that is associated with the alert rule.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'atc889zkcf@d8deedfa9bf****', + ], + ], + [ + 'name' => 'CurrentPage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return. Default value: `1`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => 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, + 'docRequired' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AppType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the application that is associated with the alert rule. Valid values:'."\n" + ."\n" + .'* `TRACE`: application monitoring'."\n" + .'* `RETCODE`: frontend monitoring'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'TRACE', + ], + ], + [ + 'name' => 'AlertType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the alert rule. Valid values:'."\n" + ."\n" + .'* `1`: custom alert rules to monitor drill-down data sets'."\n" + .'* `3`: custom alert rules to monitor tiled data sets'."\n" + .'* `4`: alert rules to monitor the frontend, including the default frontend alert rules'."\n" + .'* `5`: alert rules to monitor applications, including the default application alert rules'."\n" + .'* `6`: the default frontend alert rules'."\n" + .'* `7`: the default application alert rules'."\n" + .'* `8`: Tracing Analysis alert rules'."\n" + .'* `101`: Prometheus alert rules'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => false, + 'example' => '4', + ], + ], + [ + 'name' => 'IsTrigger', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether the alert event is triggered. If you do not set this parameter, all alert events are queried. Valid values:'."\n" + ."\n" + .'* `1`: The event is triggered.'."\n" + .'* `0`: The event is not triggered.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Specify a UNIX timestamp of the LONG data type, in milliseconds. The default value is 10 minutes before the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'docRequired' => false, + 'example' => '1595565300000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Specify a UNIX timestamp of the LONG data type, in milliseconds. The default value is the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'docRequired' => false, + 'example' => '1595568970000', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'IsTrigger' => [ + 'description' => 'Specifies whether the alert event is triggered. If you do not set this parameter, all alert events are queried. Valid values:'."\n" + ."\n" + .'* `1`: The event is triggered.'."\n" + .'* `0`: The event is not triggered.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '32940175-181B-4B93-966E-4BB69176****', + ], + 'PageBean' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + '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', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'Event' => [ + 'description' => 'The information about the alert events.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'EventTime' => [ + 'description' => 'The timestamp when the event occurred.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1595569020000', + ], + 'EventLevel' => [ + 'description' => 'The severity of the event.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'AlertRule' => [ + 'description' => 'The condition of the alert rule.'."\n", + 'type' => 'string', + 'example' => '{\\"operator\\":\\"&\\",\\"rules\\":[{\\"aggregates\\":\\"AVG\\",\\"alias\\":\\"JVM_线程总数\\",\\"measure\\":\\"appstat.jvm.ThreadCount\\",\\"nValue\\":1,\\"operator\\":\\"HOH_DOWN\\",\\"value\\":50.0}]}', + ], + 'Message' => [ + 'description' => 'The event content. The parameter value is a JSON string. Each key indicates a dimension and each value indicates the alert content in the dimension.'."\n", + 'type' => 'string', + 'example' => 'unknow紧急报警\\nip:172.27.XX.XX\\n应用名 = test\\nRegion = cn-shenzhen\\n异常信息 = {\\"timestamp\\":\\"1615447972235\\"}', + ], + 'AlertType' => [ + 'description' => 'The type of the alert rule. This parameter is not returned. Valid values:'."\n" + ."\n" + .'* `1`: custom alert rules to monitor drill-down data sets'."\n" + .'* `3`: custom alert rules to monitor tiled data sets'."\n" + .'* `4`: alert rules to monitor the frontend, including the default frontend alert rules'."\n" + .'* `5`: alert rules to monitor applications, including the default application alert rules'."\n" + .'* `6`: the default frontend alert rules'."\n" + .'* `7`: the default application alert rules'."\n" + .'* `8`: Tracing Analysis alert rules'."\n" + .'* `101`: Prometheus alert rules'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'AlertName' => [ + 'description' => 'The name of the alert rule that is associated with the event.'."\n", + 'type' => 'string', + 'example' => 'alertName', + ], + 'Id' => [ + 'description' => 'The ID of the event record.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'AlertId' => [ + 'description' => 'The ID of the alert rule that is associated with the event.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'Links' => [ + 'description' => 'The list of event URLs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The region ID of the instance with which the connection is associated.'."\n", + 'type' => 'string', + 'example' => '[ "http://arms.console.aliyun.com/apm?startTime=1595565300000&endTime=1595569246633®ionId=cn-hangzhou&pid=****" ]', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"IsTrigger\\": 0,\\n \\"RequestId\\": \\"32940175-181B-4B93-966E-4BB69176****\\",\\n \\"PageBean\\": {\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 2,\\n \\"Event\\": [\\n {\\n \\"EventTime\\": 1595569020000,\\n \\"EventLevel\\": \\"1\\",\\n \\"AlertRule\\": \\"{\\\\\\\\\\\\\\"operator\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"&\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"rules\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"aggregates\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"AVG\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"alias\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"JVM_线程总数\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"measure\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"appstat.jvm.ThreadCount\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"nValue\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"operator\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"HOH_DOWN\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"value\\\\\\\\\\\\\\":50.0}]}\\",\\n \\"Message\\": \\"unknow紧急报警\\\\\\\\nip:172.27.XX.XX\\\\\\\\n应用名 = test\\\\\\\\nRegion = cn-shenzhen\\\\\\\\n异常信息 = {\\\\\\\\\\\\\\"timestamp\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1615447972235\\\\\\\\\\\\\\"}\\",\\n \\"AlertType\\": 4,\\n \\"AlertName\\": \\"alertName\\",\\n \\"Id\\": 123,\\n \\"AlertId\\": 123,\\n \\"Links\\": [\\n \\"[ \\\\\\"http://arms.console.aliyun.com/apm?startTime=1595565300000&endTime=1595569246633®ionId=cn-hangzhou&pid=****\\\\\\" ]\\"\\n ]\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<SearchEventsResponse>\\n\\t<PageBean>\\n \\t <TotalCount>2</TotalCount>\\n\\t <PageSize>10</PageSize>\\n\\t <PageNumber>1</PageNumber>\\n\\t <Event>\\n\\t <EventLevel>1</EventLevel>\\n\\t <AlertType>4</AlertType>\\n \\t <AlertId>123</AlertId>\\n\\t <AlertName>alertName</AlertName>\\n\\t <Message>unknow紧急报警\\\\nip:172.27.XX.XX\\\\n应用名 = test\\\\nRegion = cn-shenzhen\\\\n异常信息 = {\\\\\\"timestamp\\\\\\":\\\\\\"1615447972235\\\\\\"}</Message>\\n\\t <EventTime>1595569020000</EventTime>\\n\\t <Id>123</Id>\\n\\t <AlertRule>{\\\\\\"operator\\\\\\":\\\\\\"&\\\\\\",\\\\\\"rules\\\\\\":[{\\\\\\"aggregates\\\\\\":\\\\\\"AVG\\\\\\",\\\\\\"alias\\\\\\":\\\\\\"JVM_线程总数\\\\\\",\\\\\\"measure\\\\\\":\\\\\\"appstat.jvm.ThreadCount\\\\\\",\\\\\\"nValue\\\\\\":1,\\\\\\"operator\\\\\\":\\\\\\"HOH_DOWN\\\\\\",\\\\\\"value\\\\\\":50.0}]}</AlertRule>\\n\\t <Links>[ \\"http://arms.console.aliyun.com/apm?startTime=1595565300000&endTime=1595569246633&regionId=cn-hangzhou&pid=****\\" ]</Links>\\n\\t </Event>\\n\\t</PageBean>\\n\\t<RequestId>32940175-181B-4B93-966E-4BB69176****</RequestId>\\n\\t<IsTrigger>0</IsTrigger>\\n</SearchEventsResponse>","errorExample":""}]', + 'title' => 'SearchEvents', + 'summary' => 'Queries alert event records.', + 'description' => 'Alert event records are different from alert notification records. Alert events are recorded every minute after an alert rule filters data. Alert events can be classified based on whether they are triggered or not. If a triggered event is not in the silence period, an alert notification is sent.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDispatchRule' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '44446', + 'abilityTreeNodes' => [ + 'FEATUREarmsVBCGEE', + ], + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the dispatch policy.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => false, + 'example' => '12345', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.', + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3****', + ], + 'DispatchRule' => [ + 'description' => 'The struct returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the dispatch policy.', + 'type' => 'string', + 'example' => 'Prometheus Alert', + ], + 'IsRecover' => [ + 'description' => 'Whether to send recovered alerts.'."\n" + .'true: send.'."\n" + .'false: do not send.', + 'type' => 'boolean', + 'example' => 'true', + ], + 'DispatchType' => [ + 'description' => 'Alarm handling method.'."\n" + ."\n" + .'CREATE_ALERT: Generate an alert.'."\n" + ."\n" + .'DISCARD_ALERT: Discard the alarm event, that is, no alarm.', + 'type' => 'string', + 'example' => 'CREATE_ALERT', + ], + 'State' => [ + 'description' => 'Indicates whether the dispatch policy is enabled. Valid values: '."\n" + ."\n" + .'- `true`: enabled'."\n" + .'- `false`: disabled', + 'type' => 'string', + 'example' => 'true', + ], + 'RuleId' => [ + 'description' => 'The ID of the dispatch rule.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10282', + ], + 'GroupRules' => [ + 'description' => 'The information about groups.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RepeatInterval' => [ + 'description' => 'The time interval at which a notification is resent for a long-lasting unresolved alert. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'GroupId' => [ + 'description' => 'The ID of the group.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'GroupWaitTime' => [ + 'description' => 'The waiting time for grouping.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'GroupInterval' => [ + 'description' => 'The grouping interval.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '15', + ], + 'GroupingFields' => [ + 'description' => 'The grouping fields.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The grouping field.', + 'type' => 'string', + 'example' => '_aliyun_arms_involvedObject_kind', + ], + ], + ], + ], + ], + 'NotifyRules' => [ + 'description' => 'The collection of notification methods.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'NotifyObjects' => [ + 'description' => 'The collection of alert contacts.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'NotifyObjectId' => [ + 'description' => 'The ID of the contact or contact group.', + 'type' => 'string', + 'example' => '1', + ], + 'NotifyType' => [ + 'description' => 'The type of the alert contact. Valid values:'."\n" + ."\n" + .'- `CONTACT`: contact'."\n" + .'- `CONTACT_GROUP`: contact group', + 'type' => 'string', + 'example' => 'CONTACT', + ], + 'Name' => [ + 'description' => 'The name of the contact or contact group.', + 'type' => 'string', + 'example' => 'JohnDoe', + ], + ], + ], + ], + 'NotifyChannels' => [ + 'description' => 'The notification method Array.', + 'type' => 'array', + 'items' => [ + 'description' => 'The notification method. Valid values:'."\n" + ."\n" + .'- `dingTalk`'."\n" + .'- `sms`'."\n" + .'- `webhook`'."\n" + .'- `email`'."\n" + .'- `wechat`', + 'type' => 'string', + 'example' => 'email', + ], + ], + ], + ], + ], + 'LabelMatchExpressionGrid' => [ + 'description' => 'The information about the dispatch rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'LabelMatchExpressionGroups' => [ + 'description' => 'The collection of dispatch rules.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LabelMatchExpressions' => [ + 'description' => 'The collection of conditions of the dispatch rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag of the dispatch rule. Valid values:'."\n" + ."\n" + .'* `_aliyun_arms_userid`: user ID'."\n" + .'* `_aliyun_arms_involvedObject_kind`: type of the associated object'."\n" + .'* `_aliyun_arms_involvedObject_id`: ID of the associated object'."\n" + .'* `_aliyun_arms_involvedObject_name`: name of the associated object'."\n" + .'* `_aliyun_arms_alert_name`: alert name'."\n" + .'* `_aliyun_arms_alert_rule_id`: alert rule ID'."\n" + .'* `_aliyun_arms_alert_type`: alert type'."\n" + .'* `_aliyun_arms_alert_level`: alert severity'."\n", + 'type' => 'string', + 'example' => '_aliyun_arms_involvedObject_kind', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'example' => 'app', + ], + 'Operator' => [ + 'description' => 'The operator used in the dispatch rule. Valid values:'."\n" + ."\n" + .'* `eq`: equals to.'."\n" + .'* `re`: matches a regular expression.'."\n", + 'type' => 'string', + 'example' => 'eq', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\",\\n \\"DispatchRule\\": {\\n \\"Name\\": \\"Prometheus Alert\\",\\n \\"IsRecover\\": true,\\n \\"DispatchType\\": \\"CREATE_ALERT\\",\\n \\"State\\": \\"true\\",\\n \\"RuleId\\": 10282,\\n \\"GroupRules\\": [\\n {\\n \\"RepeatInterval\\": 20,\\n \\"GroupId\\": 1,\\n \\"GroupWaitTime\\": 10,\\n \\"GroupInterval\\": 15,\\n \\"GroupingFields\\": [\\n \\"_aliyun_arms_involvedObject_kind\\"\\n ]\\n }\\n ],\\n \\"NotifyRules\\": [\\n {\\n \\"NotifyObjects\\": [\\n {\\n \\"NotifyObjectId\\": \\"1\\",\\n \\"NotifyType\\": \\"CONTACT\\",\\n \\"Name\\": \\"JohnDoe\\"\\n }\\n ],\\n \\"NotifyChannels\\": [\\n \\"email\\"\\n ]\\n }\\n ],\\n \\"LabelMatchExpressionGrid\\": {\\n \\"LabelMatchExpressionGroups\\": [\\n {\\n \\"LabelMatchExpressions\\": [\\n {\\n \\"Key\\": \\"_aliyun_arms_involvedObject_kind\\",\\n \\"Value\\": \\"app\\",\\n \\"Operator\\": \\"eq\\"\\n }\\n ]\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDispatchRuleResponse>\\n<RequestId>34ED024E-9E31-434A-9E4E-D9D15C3****</RequestId>\\n<DispatchRule>\\n <GroupRules>\\n <GroupInterval>15</GroupInterval>\\n <GroupWaitTime>10</GroupWaitTime>\\n <GroupId>1</GroupId>\\n </GroupRules>\\n <GroupRules>\\n <GroupingFields>_aliyun_arms_involvedObject_kind</GroupingFields>\\n </GroupRules>\\n <State>true</State>\\n <RuleId>10282</RuleId>\\n <LabelMatchExpressionGrid>\\n <LabelMatchExpressionGroups>\\n <LabelMatchExpressions>\\n <Operator>eq</Operator>\\n <Value>app</Value>\\n <Key>_aliyun_arms_involvedObject_kind</Key>\\n </LabelMatchExpressions>\\n </LabelMatchExpressionGroups>\\n </LabelMatchExpressionGrid>\\n <NotifyRules>\\n <NotifyObjects>\\n <NotifyType>CONTACT</NotifyType>\\n <NotifyObjectId>1</NotifyObjectId>\\n <Name>JohnDoe</Name>\\n </NotifyObjects>\\n </NotifyRules>\\n <NotifyRules>\\n <NotifyChannels>email</NotifyChannels>\\n </NotifyRules>\\n <Name>Prometheus Alert</Name>\\n</DispatchRule>\\n</DescribeDispatchRuleResponse>","errorExample":""}]', + 'title' => 'DescribeDispatchRule', + 'summary' => 'Queries the information about a dispatch policy.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ListDispatchRule' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the notification policy. Fuzzy match is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'docRequired' => false, + 'example' => 'Prod', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'System', + 'in' => 'query', + 'schema' => [ + 'description' => '* The type of notification policies to be queried. Valid values: `false` (default): notification policies created in Application Real-Time Monitoring Service (ARMS).'."\n" + .'* `true`: notification policies created in an external system.'."\n" + ."\n" + .'> You cannot use the ARMS console to modify the dispatch rules of a notification policy that is created in an external system.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '34ED024E-9E31-434A-9E4E-D9D15C3**** ', + ], + 'DispatchRules' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The name of the notification policy.'."\n", + 'type' => 'string', + 'example' => 'Prod', + ], + 'State' => [ + 'description' => 'Indicates whether the notification policy is enabled. Valid values:'."\n" + ."\n" + .'* `true`'."\n" + .'* `false`'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'RuleId' => [ + 'description' => 'The ID of the notification policy.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10282', + ], + ], + 'description' => '', + ], + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34ED024E-9E31-434A-9E4E-D9D15C3****\\\\t\\",\\n \\"DispatchRules\\": [\\n {\\n \\"Name\\": \\"Prod\\",\\n \\"State\\": \\"true\\",\\n \\"RuleId\\": 10282\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListDispatchRuleResponse>\\n<RequestId>34ED024E-9E31-434A-9E4E-D9D15C3****\\t</RequestId>\\n<DispatchRules>\\n <State>true</State>\\n <RuleId>10282</RuleId>\\n <Name>Prod</Name>\\n</DispatchRules>\\n</ListDispatchRuleResponse>","errorExample":""}]', + 'title' => 'ListDispatchRule', + 'summary' => 'Queries notification policies.', + 'description' => 'The current API operation is no longer maintained. To query the notification policy information, call the ListNotificationPolicies operation instead.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'OpenArmsServiceSecondVersion' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + [ + 'APP' => [], + ], + [ + 'PrivateKey' => [], + ], + [ + 'BearerToken' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the service. Valid values:'."\n" + ."\n" + .'* `arms`: ARMS'."\n" + .'* `arms_app`: Application Monitoring'."\n" + .'* `arms_web`: Browser Monitoring'."\n" + .'* `prometheus_monitor`: Managed Service for Prometheus'."\n" + .'* `synthetic_post`: Synthetic Monitoring'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'arms', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'OrderId' => [ + 'description' => 'The service ID returned if the service is activated.'."\n", + 'type' => 'string', + 'example' => '20896874992****', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9ED50893-F3C4-42DF-ABB2-C200BE******', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'INSUFFICIENT_AVAILABLE_QUOTA', + 'errorMessage' => '用户可用余额小于0,请充值后再次尝试开通。', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"OrderId\\": \\"20896874992****\\",\\n \\"RequestId\\": \\"9ED50893-F3C4-42DF-ABB2-C200BE******\\"\\n}","errorExample":""},{"type":"xml","example":"<OpenArmsServiceSecondVersionResponse>\\n <OrderId>20896874992****</OrderId>\\n <RequestId>9ED50893-F3C4-42DF-ABB2-C200BE******</RequestId>\\n</OpenArmsServiceSecondVersionResponse>","errorExample":""}]', + 'title' => 'OpenArmsServiceSecondVersion', + 'summary' => 'Activates a specified pay-as-you-go sub-service of Application Real-Time Monitoring Service (ARMS).', + 'description' => 'The **OpenArmsServiceSecondVersion** operation supports the following sub-service editions:'."\n" + ."\n" + .'* Application Monitoring: Basic Edition'."\n" + .'* Browser Monitoring: Basic Edition'."\n" + .'* Synthetic Monitoring: Pro Edition (pay-as-you-go)'."\n" + .'* Prometheus Service: Pro Edition'."\n", + ], + 'OpenXtraceDefaultSLR' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + .' '."\n" + .'* `true`'."\n" + .'* `false`', + 'type' => 'string', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '53CACA70-2CF7-490C-BD06-1A2AE4EB****', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"true\\",\\n \\"RequestId\\": \\"53CACA70-2CF7-490C-BD06-1A2AE4EB****\\"\\n}","errorExample":""},{"type":"xml","example":"<OpenXtraceDefaultSLRResponse>\\n<RequestId>53CACA70-2CF7-490C-BD06-1A2AE4EB****</RequestId>\\n<Data>true</Data>\\n</OpenXtraceDefaultSLRResponse>","errorExample":""}]', + 'title' => 'OpenXtraceDefaultSLR', + 'summary' => 'Activates the service-linked role AliyunServiceRoleForXtrace for Tracing Analysis.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'OpenArmsDefaultSLR' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Indicates whether the call was successful. Valid values:'."\n" + ."\n" + .'* `true`: The call was successful.'."\n" + .'* `false`: The call failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '53CACA70-2CF7-490C-BD06-1A2AE4EB****', + ], + ], + 'description' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"true\\",\\n \\"RequestId\\": \\"53CACA70-2CF7-490C-BD06-1A2AE4EB****\\"\\n}","errorExample":""},{"type":"xml","example":"<OpenArmsDefaultSLRResponse>\\n<RequestId>53CACA70-2CF7-490C-BD06-1A2AE4EB****</RequestId>\\n<Data>true</Data>\\n</OpenArmsDefaultSLRResponse>","errorExample":""}]', + 'title' => 'OpenArmsDefaultSLR', + 'summary' => 'Activates the service-linked role AliyunServiceRoleForARMS for Application Real-Time Monitoring Service (ARMS).', + ], + 'ChangeResourceGroup' => [ + 'summary' => 'Moves a resource to a specific resource group.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ResourceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ggxw4lnjuz@cfd34a78f******', + ], + ], + [ + 'name' => 'NewResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the new resource group. You can view the available resource groups in the Resource Management console.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rg-aek2vezare****', + ], + ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource type.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'APPLICATION', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '46355DD8-FC56-40C5-BFC6-269DE4F9****', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'ResourceId' => [ + 'description' => 'The resource ID.'."\n", + 'type' => 'string', + 'example' => 'ggxw4lnjuz@cfd34a78f******', + ], + 'ResourceGroupId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-aek2vezare****', + ], + ], + ], + 'Code' => [ + 'description' => 'The status code or error code.', + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.', + 'type' => 'string', + 'example' => 'message', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"46355DD8-FC56-40C5-BFC6-269DE4F9****\\",\\n \\"Data\\": {\\n \\"ResourceId\\": \\"ggxw4lnjuz@cfd34a78f******\\",\\n \\"ResourceGroupId\\": \\"rg-aek2vezare****\\"\\n },\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"message\\"\\n}","type":"json"}]', + 'title' => 'ChangeResourceGroup', + ], + 'TagResources' => [ + 'summary' => 'Adds tags to ARMS resources.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'ResourceId', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The resource IDs. You can specify a maximum of 50 resource IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'uxqcr8bh21', + ], + 'required' => true, + 'maxItems' => 50, + 'minItems' => 1, + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tags to add to the resource. You can specify a maximum of 20 tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'code!=""', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Key1', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Test1', + ], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 21, + ], + ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the ARMS resources for which you want to modify tags. Valid values:'."\n" + ."\n" + .'* WEB: Browser Monitoring'."\n" + .'* APPLICATION: Application Monitoring'."\n" + .'* PROMETHEUS: Managed Service for Prometheus'."\n" + .'* SYNTHETICTASK: Synthetic Monitoring'."\n" + .'* ALERTRULE: Application Monitoring alert rule'."\n" + .'* PROMETHEUSALERTRULE: Managed Service for Prometheus alert rule'."\n" + .'* XTRACEAPP: Managed Service for OpenTelemetry'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'PROMETHEUS', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '05919CF2-B8A1-588D-B3DB-89B3********', + ], + 'Data' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'NoPermissionKeyOperator', + 'errorMessage' => 'user is no permission for operating param tagKey.', + ], + [ + 'errorCode' => 'ResourceIdAndTagIsNull', + 'errorMessage' => 'resourceId or tag param must have one', + ], + [ + 'errorCode' => 'TagISNull', + 'errorMessage' => 'param tag must be not null.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'ResourceIdIsNull', + 'errorMessage' => 'param resourceId must be not null.', + ], + [ + 'errorCode' => 'ResourceTypeIllegal', + 'errorMessage' => 'The ResourceType parameter is invalid.', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + [ + 'errorCode' => 'ScopeDisAgreement', + 'errorMessage' => 'Param scope is different from before.', + ], + [ + 'errorCode' => 'ParameterNextTokenIllegal', + 'errorMessage' => 'param nextToken is invalid.', + ], + [ + 'errorCode' => 'InvalidParameterTagKey', + 'errorMessage' => 'The specified TagKey is invalid.', + ], + [ + 'errorCode' => 'InvalidParameterTagValue', + 'errorMessage' => 'The specified TagValue is invalid.', + ], + [ + 'errorCode' => 'TagKeyIsIllegal', + 'errorMessage' => 'The specified TagKey is invalid.', + ], + [ + 'errorCode' => 'TagValueIsIllegal', + 'errorMessage' => 'The specified TagValue is invalid.', + ], + [ + 'errorCode' => 'ResourceIDOUT', + 'errorMessage' => 'The specified resourceId number is out of range.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05919CF2-B8A1-588D-B3DB-89B3********\\",\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'TagResources', + ], + 'UntagResources' => [ + 'summary' => 'Removes tags from ARMS resources.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'TagKey', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tag keys. You can specify a maximum of 20 tag keys.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Key1', + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + [ + 'name' => 'ResourceId', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The resource IDs. You can specify a maximum of 50 resource IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'c7c13c449eea64fe89870ac658de864b4', + ], + 'required' => true, + 'maxItems' => 51, + ], + ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the ARMS resources for which you want to modify tags. Valid values:'."\n" + ."\n" + .'* WEB: Browser Monitoring'."\n" + .'* APPLICATION: Application Monitoring'."\n" + .'* PROMETHEUS: Managed Service for Prometheus'."\n" + .'* SYNTHETICTASK: Synthetic Monitoring'."\n" + .'* ALERTRULE: Application Monitoring alert rule'."\n" + .'* PROMETHEUSALERTRULE: Managed Service for Prometheus alert rule'."\n" + .'* XTRACEAPP: Managed Service for OpenTelemetry'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [], + 'example' => 'PROMETHEUS', + ], + ], + [ + 'name' => 'All', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to delete all tags. This parameter takes effect only when the TagKey.N parameter is not specified. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n" + ."\n" + .'Default value: false.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'False', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of tags.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestKey', + ], + 'Value' => [ + 'description' => 'The value of the tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TestValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => 'FC183B5E-C9AD-5E9E-937F-*******', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'NoPermissionKeyOperator', + 'errorMessage' => 'user is no permission for operating param tagKey.', + ], + [ + 'errorCode' => 'DuplicateTagKey', + 'errorMessage' => 'Param tagKey is duplicate.', + ], + [ + 'errorCode' => 'NoPermissionUSER', + 'errorMessage' => 'user no permission', + ], + [ + 'errorCode' => 'ResourceIdAndTagIsNull', + 'errorMessage' => 'resourceId or tag param must have one', + ], + [ + 'errorCode' => 'TagISNull', + 'errorMessage' => 'param tag must be not null.', + ], + [ + 'errorCode' => 'ScopeDisAgreement', + 'errorMessage' => 'Param scope is different from before.', + ], + [ + 'errorCode' => 'ParameterNextTokenIllegal', + 'errorMessage' => 'param nextToken is invalid.', + ], + [ + 'errorCode' => 'TagNumOUT', + 'errorMessage' => 'the number of tag is out .', + ], + [ + 'errorCode' => 'ResourceTypeIllegal', + 'errorMessage' => 'The ResourceType parameter is invalid.', + ], + [ + 'errorCode' => 'ResourceIdIsNull', + 'errorMessage' => 'param resourceId must be not null.', + ], + [ + 'errorCode' => 'InvalidParameterTagKey', + 'errorMessage' => 'The specified TagKey is invalid.', + ], + [ + 'errorCode' => 'InvalidParameterTagValue', + 'errorMessage' => 'The specified TagValue is invalid.', + ], + [ + 'errorCode' => 'TagKeyIsIllegal', + 'errorMessage' => 'The specified TagKey is invalid.', + ], + [ + 'errorCode' => 'TagValueIsIllegal', + 'errorMessage' => 'The specified TagValue is invalid.', + ], + [ + 'errorCode' => 'ResourceIDOUT', + 'errorMessage' => 'The specified resourceId number is out of range.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FC183B5E-C9AD-5E9E-937F-*******\\",\\n \\"Data\\": \\"success\\"\\n}","type":"json"}]', + 'title' => 'UntagResources', + ], + 'GetCommercialStatus' => [ + 'summary' => 'Queries whether the current account has activated the commercial edition of a service.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'CommodityCode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product code.'."\n" + ."\n" + .'* arms_app_post'."\n" + .'* arms_web_post'."\n" + .'* arms_promethues_public_cn'."\n" + .'* prometheus_pay_public_cn'."\n" + .'* xtrace'."\n" + .'* arms_serverless_public_cn'."\n" + .'* arms_rumserverless_public_cn'."\n" + .'* prometheus_serverless_public_cn'."\n" + .'* xtrace_serverless_public_cn'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'arms_app_post', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '49C82193-E991-5F6A-AF3E-1664D8D05CA3', + ], + 'UserAndCommodityStatus' => [ + 'description' => 'The commercialization status of the service.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'The commercialization status.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Normal: The service is activated.'."\n" + .'* Abnormal: An exception occurs during activation.'."\n" + .'* Free: The service is not activated.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Normal' => 'Normal', + 'Abnormal' => 'Abnormal', + 'Free' => '', + ], + 'example' => 'Normal', + ], + 'FreeDays' => [ + 'description' => 'The number of days during which the service is free of charge.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Basic' => [ + 'description' => 'Indicates whether you are using the Basic Edition.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'ChargeType' => [ + 'description' => 'The billing method.'."\n", + 'type' => 'string', + 'example' => 'usage', + ], + 'Lable' => [ + 'description' => 'The tags.'."\n", + 'type' => 'string', + 'example' => 'NEW', + ], + 'ExtraInfo' => [ + 'description' => 'The additional information.'."\n", + 'type' => 'object', + 'example' => 'info', + ], + 'Enable' => [ + 'description' => 'Indicates whether the service is activated.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"49C82193-E991-5F6A-AF3E-1664D8******\\",\\n \\"UserAndCommodityStatus\\": {\\n \\"Status\\": \\"Normal\\",\\n \\"FreeDays\\": 10,\\n \\"Basic\\": false,\\n \\"ChargeType\\": \\"usage\\",\\n \\"Lable\\": \\"NEW\\",\\n \\"ExtraInfo\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Enable\\": true\\n }\\n}","type":"json"}]', + 'title' => 'GetCommercialStatus', + ], + 'CheckCommercialStatus' => [ + 'summary' => 'Checks whether Application Real-Time Monitoring Service (ARMS) is available for commercial use in a region.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID. Default value: cn-hangzhou.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Service', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ARMS sub-service. Valid values:'."\n" + ."\n" + .'* apm: Application Monitoring'."\n" + .'* rum: RUM'."\n" + .'* prometheus: Managed Service for Prometheus'."\n" + .'* xtrace: Managed Service for OpenTelemetry'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'xtrace' => 'xtrace', + 'prometheus' => 'prometheus', + 'rum' => 'rum', + 'apm' => 'apm', + ], + 'example' => 'apm', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '1A474FF8-7861-4D00-81B5-5BC3DA4E****', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'string', + 'example' => 'True', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A474FF8-7861-4D00-81B5-5BC3DA4E****\\",\\n \\"Data\\": \\"True\\"\\n}","type":"json"}]', + 'title' => 'CheckCommercialStatus', + 'description' => 'You can call this operation to check whether ARMS is available for commercial use in a region.'."\n", + ], + 'QueryCommercialUsage' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'IntervalInSec', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time interval between data slices. Unit: seconds. Minimum value: 3600.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 3600: 1 hour'."\n" + .'* 86400: 1 day'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'docRequired' => true, + 'maximum' => '2147483647', + 'minimum' => '0', + 'enumValueTitles' => [ + 3600 => '', + 86400 => '', + ], + 'example' => '3600', + 'default' => '2147483647', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'maximum' => '9223372036854775806', + 'minimum' => '0', + 'example' => '1699200000000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'docRequired' => true, + 'maximum' => '9223372036854775806', + 'minimum' => '0', + 'example' => '1699286400000', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The dimension by which data is sorted.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* dataType'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n" + ."\n" + .' <!-- -->'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'dataType' => 'dataType', + ], + 'example' => 'dataType', + ], + ], + [ + 'name' => 'Metric', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the metric. Valid value: USAGEFEE.STAT.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'enumValueTitles' => [ + 'USAGEFEE.STAT' => 'USAGEFEE.STAT', + ], + 'example' => 'USAGEFEE.STAT'."\n", + ], + ], + [ + 'name' => 'Order', + 'in' => 'query', + 'schema' => [ + 'description' => 'The order in which data is sorted. Valid value:'."\n" + ."\n" + .'* `ASC`: ascending order'."\n" + .'* `DESC`: descending order'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ASC', + ], + ], + [ + 'name' => 'AdvancedFilters', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The filter conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the filter condition.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'regionId', + ], + 'Value' => [ + 'description' => 'The value of the filter condition.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + 'OpType' => [ + 'description' => 'The operator. Valid values: eq and in.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'in' => 'in', + 'eq' => 'eq', + ], + 'example' => 'eq', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 15, + ], + ], + [ + 'name' => 'Dimensions', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The dimensions of the metric that you want to query. Valid values:'."\n" + ."\n" + .'* dataType: data type'."\n" + .'* productType: product type'."\n" + .'* instanceId: instance ID'."\n" + .'* instanceName: instance name'."\n" + .'* instanceType: instance type'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The dimension of the metric.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'dataType', + ], + 'required' => false, + 'maxItems' => 15, + ], + ], + [ + 'name' => 'Measures', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The measures of the metric that you want to query.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The measure of the metric. Valid value: byte_sum.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'byte_sum' => 'byte_sum', + ], + 'example' => 'byte_sum', + ], + 'required' => false, + 'maxItems' => 15, + ], + ], + [ + 'name' => 'QueryType', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => 'The data type. Valid values:'."\n" + ."\n" + .'* instantQuery: non-time series'."\n" + .'* timeSeriesQuery: time series'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'timeSeriesQuery' => 'timeSeriesQuery', + 'instantQuery' => 'instantQuery', + ], + 'example' => 'instantQuery', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The response status. Valid values: 2XX: The request is successful. 3XX: A redirection message is returned. 4XX: The request is invalid. 5XX: A server error occurs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'HttpStatusCode' => [ + 'description' => 'The HTTP status code.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '99A663CB-8D7B-4B0D-A006-03C8EE38E7BB', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Complete' => [ + 'description' => 'Indicates whether a multi-region query is complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Items' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The queried data.'."\n", + 'type' => 'object', + 'example' => '{'."\n" + .' "date": "1697108400",'."\n" + .' "dataType": "metrics",'."\n" + .' "byte_sum": 9497922'."\n" + .'}', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ParameterMetricIllegal', + 'errorMessage' => 'The specified metric is invalid.', + ], + [ + 'errorCode' => 'ParameterMeasuresIllegal', + 'errorMessage' => 'The specified Measures is invalid.', + ], + [ + 'errorCode' => 'ParameterTimeStampIllegal', + 'errorMessage' => 'The specified timeStamp is invalid.', + ], + [ + 'errorCode' => 'ParameterOrderIllegal', + 'errorMessage' => 'The specified order is invalid.', + ], + [ + 'errorCode' => 'ParameterPageSizeIllegal', + 'errorMessage' => 'The specified PageSize is invalid.', + ], + [ + 'errorCode' => 'ParameterIntervalIllegal', + 'errorMessage' => 'The specified interval is invalid.', + ], + [ + 'errorCode' => 'ParameterMeasuresMissing', + 'errorMessage' => 'You must specify measures.', + ], + [ + 'errorCode' => 'ParameterDimensionsIllegal', + 'errorMessage' => 'The specified dimensions is invalid.', + ], + [ + 'errorCode' => 'ParameterRegionIdIllegal', + 'errorMessage' => 'The specified RegionId is invalid.', + ], + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error. Please try again. Contact the DingTalk service account if the issue persists after multiple retries.', + ], + ], + 403 => [ + [ + 'errorCode' => 'APINotAuthorize', + 'errorMessage' => 'The current user is not authorized to access the interface.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"HttpStatusCode\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"99A663CB-8D7B-4B0D-A006-03C8EE38E7BB\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Complete\\": true,\\n \\"Items\\": [\\n {\\n \\"date\\": \\"1697108400\\",\\n \\"dataType\\": \\"metrics\\",\\n \\"byte_sum\\": 9497922\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'QueryCommercialUsage', + 'summary' => 'Queries the amount of data written to Application Monitoring, Managed Service for OpenTelemetry, Managed Service for Prometheus, and Real User Monitoring (RUM).', + ], + 'GetRumOcuStatisticData' => [ + 'summary' => 'Queries the observability capacity unit (OCU) usage data of Real User Monitoring (RUM).', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1600063200000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1687849260000', + ], + ], + [ + 'name' => 'QueryType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the query. To query non-time series data, set the value to INSTANT. To query time series data, set the value to TIME_SERIES.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'TIME_SERIES', + ], + ], + [ + 'name' => 'Filter', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The filter condition. Three types of filter conditions are provided:'."\n" + ."\n" + .'* Application name: pid (Note that the application name is displayed, but the application ID is actually specified)'."\n" + .'* Application type: siteType'."\n" + .'* Data type: dataType'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the filter condition. Three types of filter conditions are provided:'."\n" + ."\n" + .'* Application name: pid (Note that the application name is displayed, but the application ID is actually specified)'."\n" + .'* Application type: siteType'."\n" + .'* Data type: dataType'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pid', + ], + 'OpType' => [ + 'description' => 'The type of the operator. Valid value: in.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'in', + ], + 'Value' => [ + 'description' => 'The value of the filter condition. The value is a JSON array of strings.'."\n", + 'type' => 'any', + 'required' => false, + 'example' => '["b590xxxxx@2dcbxxxxx9", "b590xxxxx@2dcbxxxxx8"]', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'Group', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The grouping fields. Valid values:'."\n" + ."\n" + .'* siteType: The total number of OCUs is grouped by application type.'."\n" + .'* dataType: The total number of OCUs is grouped by data type.'."\n" + .'* pid: The total number of OCUs is grouped by application ID.'."\n" + .'* appName: The total number of OCUs is grouped by application name.'."\n" + .'* startTime: The total number of OCUs is grouped by start time.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The grouping key.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '['."\n" + .' "siteType",'."\n" + .' "dataType"'."\n" + .']', + ], + 'required' => false, + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '100', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '626037F5-FDEB-45B0-804C-B3C92797****', + ], + 'Code' => [ + 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'null', + ], + 'Data' => [ + 'description' => 'The returned struct.'."\n", + 'type' => 'object', + 'properties' => [ + 'Items' => [ + 'description' => 'The queried data.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the queried data, in the JSON Map format.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'any', + 'description' => 'The queried data.'."\n", + 'example' => '{'."\n" + .' "totalChargedSessionCount": "11008",'."\n" + .' "__time__": 1717948800,'."\n" + .' "appName": "Main console",'."\n" + .' "totalOcu": "55",'."\n" + .' "startTime": "1719244800",'."\n" + .' "pid": "b5xxxxxuqs@1f59cxxxxxxxxxb",'."\n" + .' "totalCount": "11"'."\n" + .'}', + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'Page' => [ + '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' => '100', + ], + 'Complete' => [ + 'description' => 'Indicates whether the next page exists.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"626037F5-FDEB-45B0-804C-B3C92797****\\",\\n \\"Code\\": 200,\\n \\"Message\\": \\"内部错误,请联系客户人员。\\",\\n \\"Data\\": {\\n \\"Items\\": [\\n {\\n \\"key\\": \\"{\\\\n \\\\\\"totalChargedSessionCount\\\\\\": \\\\\\"11008\\\\\\",\\\\n \\\\\\"__time__\\\\\\": 1717948800,\\\\n \\\\\\"appName\\\\\\": \\\\\\"主控制台\\\\\\",\\\\n \\\\\\"totalOcu\\\\\\": \\\\\\"55\\\\\\",\\\\n \\\\\\"startTime\\\\\\": \\\\\\"1719244800\\\\\\",\\\\n \\\\\\"pid\\\\\\": \\\\\\"b5xxxxxuqs@1f59cxxxxxxxxxb\\\\\\",\\\\n \\\\\\"totalCount\\\\\\": \\\\\\"11\\\\\\"\\\\n}\\"\\n }\\n ],\\n \\"Total\\": 100,\\n \\"Page\\": 1,\\n \\"PageSize\\": 100,\\n \\"Complete\\": true\\n }\\n}","type":"json"}]', + 'title' => 'GetRumOcuStatisticData', + 'description' => 'You can query the usage data for the current day at any time. You can query the usage data for the previous day only after 8:00 today.'."\n", + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'cn-qingdao', + 'endpoint' => 'arms.cn-qingdao.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing', + 'endpoint' => 'arms.cn-beijing.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhangjiakou', + 'endpoint' => 'arms.cn-zhangjiakou.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhengzhou-jva', + 'endpoint' => 'arms.cn-zhengzhou-jva.aliyuncs.com', + ], + [ + 'regionId' => 'cn-huhehaote', + 'endpoint' => 'arms.cn-huhehaote.aliyuncs.com', + ], + [ + 'regionId' => 'cn-wulanchabu', + 'endpoint' => 'arms.cn-wulanchabu.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou', + 'endpoint' => 'arms.cn-hangzhou.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai', + 'endpoint' => 'arms.cn-shanghai.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen', + 'endpoint' => 'arms.cn-shenzhen.aliyuncs.com', + ], + [ + 'regionId' => 'cn-heyuan', + 'endpoint' => 'arms.cn-heyuan.aliyuncs.com', + ], + [ + 'regionId' => 'cn-guangzhou', + 'endpoint' => 'arms.cn-guangzhou.aliyuncs.com', + ], + [ + 'regionId' => 'cn-chengdu', + 'endpoint' => 'arms.cn-chengdu.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hongkong', + 'endpoint' => 'arms.cn-hongkong.aliyuncs.com', + ], + [ + 'regionId' => 'ap-northeast-1', + 'endpoint' => 'arms.ap-northeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'ap-northeast-2', + 'endpoint' => 'arms.ap-northeast-2.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-1', + 'endpoint' => 'arms.ap-southeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-2', + 'endpoint' => 'arms.ap-southeast-2.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-3', + 'endpoint' => 'arms.ap-southeast-3.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-5', + 'endpoint' => 'arms.ap-southeast-5.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-6', + 'endpoint' => 'arms.ap-southeast-6.aliyuncs.com', + ], + [ + 'regionId' => 'us-east-1', + 'endpoint' => 'arms.us-east-1.aliyuncs.com', + ], + [ + 'regionId' => 'us-west-1', + 'endpoint' => 'arms.us-west-1.aliyuncs.com', + ], + [ + 'regionId' => 'eu-west-1', + 'endpoint' => 'arms.eu-west-1.aliyuncs.com', + ], + [ + 'regionId' => 'eu-central-1', + 'endpoint' => 'arms.eu-central-1.aliyuncs.com', + ], + [ + 'regionId' => 'ap-south-1', + 'endpoint' => 'arms.ap-south-1.aliyuncs.com', + ], + [ + 'regionId' => 'me-east-1', + 'endpoint' => 'arms.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-finance', + 'endpoint' => 'arms.cn-hangzhou-finance.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-finance-1', + 'endpoint' => 'arms.cn-shanghai-finance-1.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen-finance-1', + 'endpoint' => 'arms.cn-shenzhen-finance-1.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-7', + 'endpoint' => 'arms.ap-southeast-7.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing-finance-1', + 'endpoint' => 'arms.aliyuncs.com', + ], + [ + 'regionId' => 'me-central-1', + 'endpoint' => 'arms.me-central-1.aliyuncs.com', + ], + [ + 'regionId' => 'cn-heyuan-acdr-1', + 'endpoint' => 'arms.cn-heyuan-acdr-1.aliyuncs.com', + ], + ], +]; |
