tencentcloud-sdk-nodejs-intl-en
Version:
1,944 lines (1,636 loc) • 189 kB
JavaScript
/*
* Copyright (c) 2018 THL A29 Limited, a Tencent company. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
const AbstractModel = require("../../common/abstract_model");
/**
* Time series of database space data
* @class
*/
class SchemaSpaceTimeSeries extends AbstractModel {
constructor(){
super();
/**
* Database name
* @type {string || null}
*/
this.TableSchema = null;
/**
* Space metric value in a unit of time interval
* @type {MonitorMetricSeriesData || null}
*/
this.SeriesData = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TableSchema = 'TableSchema' in params ? params.TableSchema : null;
if (params.SeriesData) {
let obj = new MonitorMetricSeriesData();
obj.deserialize(params.SeriesData)
this.SeriesData = obj;
}
}
}
/**
* Details of the source users of slow logs
* @class
*/
class SlowLogUser extends AbstractModel {
constructor(){
super();
/**
* Source username
* @type {string || null}
*/
this.UserName = null;
/**
* Percentage of the number of slow logs from this source username to the total number of slow logs
* @type {number || null}
*/
this.Ratio = null;
/**
* Number of slow logs from this source username
* @type {number || null}
*/
this.Count = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.UserName = 'UserName' in params ? params.UserName : null;
this.Ratio = 'Ratio' in params ? params.Ratio : null;
this.Count = 'Count' in params ? params.Count : null;
}
}
/**
* DescribeRedisTopKeyPrefixList request structure.
* @class
*/
class DescribeRedisTopKeyPrefixListRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Date for query, such as `2021-05-27`. You can select a date as early as in the last 30 days for query.
* @type {string || null}
*/
this.Date = null;
/**
* Service type. Valid value: `redis` (TencentDB for Redis).
* @type {string || null}
*/
this.Product = null;
/**
* The number of queried items. Default value: `20`. Max value: `100`.
* @type {number || null}
*/
this.Limit = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.Date = 'Date' in params ? params.Date : null;
this.Product = 'Product' in params ? params.Product : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* Details of the health report task.
* @class
*/
class HealthReportTask extends AbstractModel {
constructor(){
super();
/**
* Async task request ID.
* @type {number || null}
*/
this.AsyncRequestId = null;
/**
* Source that triggers the task. Valid values: `DAILY_INSPECTION` (instance inspection), `SCHEDULED` (scheduled task), and `MANUAL` (manual trigger).
* @type {string || null}
*/
this.Source = null;
/**
* Task progress in %.
* @type {number || null}
*/
this.Progress = null;
/**
* Task creation time.
* @type {string || null}
*/
this.CreateTime = null;
/**
* Task start time.
* @type {string || null}
*/
this.StartTime = null;
/**
* Task end time.
* @type {string || null}
*/
this.EndTime = null;
/**
* Basic information of the instance to which the task belongs.
* @type {InstanceBasicInfo || null}
*/
this.InstanceInfo = null;
/**
* Health information in health report.
* @type {HealthStatus || null}
*/
this.HealthStatus = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AsyncRequestId = 'AsyncRequestId' in params ? params.AsyncRequestId : null;
this.Source = 'Source' in params ? params.Source : null;
this.Progress = 'Progress' in params ? params.Progress : null;
this.CreateTime = 'CreateTime' in params ? params.CreateTime : null;
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
if (params.InstanceInfo) {
let obj = new InstanceBasicInfo();
obj.deserialize(params.InstanceInfo)
this.InstanceInfo = obj;
}
if (params.HealthStatus) {
let obj = new HealthStatus();
obj.deserialize(params.HealthStatus)
this.HealthStatus = obj;
}
}
}
/**
* OpenAuditService response structure.
* @class
*/
class OpenAuditServiceResponse extends AbstractModel {
constructor(){
super();
/**
* Audit is successfully enabled only when the value of this parameter is `0`.
* @type {number || null}
*/
this.TaskId = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TaskId = 'TaskId' in params ? params.TaskId : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* CreateDBDiagReportTask request structure.
* @class
*/
class CreateDBDiagReportTaskRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Start time, such as "2020-11-08T14:00:00+08:00".
* @type {string || null}
*/
this.StartTime = null;
/**
* End time, such as "2020-11-09T14:00:00+08:00".
* @type {string || null}
*/
this.EndTime = null;
/**
* Whether to send an email. Valid values: `0` (yes), `1` (no).
* @type {number || null}
*/
this.SendMailFlag = null;
/**
* Array of the IDs of recipients to receive email.
* @type {Array.<number> || null}
*/
this.ContactPerson = null;
/**
* Array of IDs of recipient groups to receive email.
* @type {Array.<number> || null}
*/
this.ContactGroup = null;
/**
* Service type. Valid values: `mysql` (TencentDB for MySQL), `cynosdb` (TDSQL-C for MySQL). Default value: `mysql`.
* @type {string || null}
*/
this.Product = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
this.SendMailFlag = 'SendMailFlag' in params ? params.SendMailFlag : null;
this.ContactPerson = 'ContactPerson' in params ? params.ContactPerson : null;
this.ContactGroup = 'ContactGroup' in params ? params.ContactGroup : null;
this.Product = 'Product' in params ? params.Product : null;
}
}
/**
* Time series of database tablespace data
* @class
*/
class TableSpaceTimeSeries extends AbstractModel {
constructor(){
super();
/**
* Table name.
* @type {string || null}
*/
this.TableName = null;
/**
* Database name.
* @type {string || null}
*/
this.TableSchema = null;
/**
* Database table storage engine.
* @type {string || null}
*/
this.Engine = null;
/**
* Space metric value in a unit of time interval
* @type {MonitorFloatMetricSeriesData || null}
*/
this.SeriesData = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TableName = 'TableName' in params ? params.TableName : null;
this.TableSchema = 'TableSchema' in params ? params.TableSchema : null;
this.Engine = 'Engine' in params ? params.Engine : null;
if (params.SeriesData) {
let obj = new MonitorFloatMetricSeriesData();
obj.deserialize(params.SeriesData)
this.SeriesData = obj;
}
}
}
/**
* DescribeSlowLogs request structure.
* @class
*/
class DescribeSlowLogsRequest extends AbstractModel {
constructor(){
super();
/**
* Service type. Valid values: `mysql` (TencentDB for MySQL), `cynosdb` (TDSQL-C for MySQL). Default value: `mysql`.
* @type {string || null}
*/
this.Product = null;
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* MD5 value of a SQL template
* @type {string || null}
*/
this.Md5 = null;
/**
* Start time in the format of "2019-09-10 12:13:14".
* @type {string || null}
*/
this.StartTime = null;
/**
* End time in the format of "2019-09-11 10:13:14". The interval between the end time and the start time can be up to 7 days.
* @type {string || null}
*/
this.EndTime = null;
/**
* The offset. Default value: `0`.
* @type {number || null}
*/
this.Offset = null;
/**
* The number of queried items. Default value: `20`. Max value: `100`.
* @type {number || null}
*/
this.Limit = null;
/**
* Database list
* @type {Array.<string> || null}
*/
this.DB = null;
/**
* Keyword
* @type {Array.<string> || null}
*/
this.Key = null;
/**
* User
* @type {Array.<string> || null}
*/
this.User = null;
/**
* IP
* @type {Array.<string> || null}
*/
this.Ip = null;
/**
* Duration range. The left and right borders of the range are the zeroth and first element of the array, respectively.
* @type {Array.<number> || null}
*/
this.Time = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Product = 'Product' in params ? params.Product : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.Md5 = 'Md5' in params ? params.Md5 : null;
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
this.DB = 'DB' in params ? params.DB : null;
this.Key = 'Key' in params ? params.Key : null;
this.User = 'User' in params ? params.User : null;
this.Ip = 'Ip' in params ? params.Ip : null;
this.Time = 'Time' in params ? params.Time : null;
}
}
/**
* DescribeTopSpaceTables request structure.
* @class
*/
class DescribeTopSpaceTablesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Number of returned top tables. Maximum value: `100`. Default value: `20`.
* @type {number || null}
*/
this.Limit = null;
/**
* Field used to sort top tables. Valid values: `DataLength`, `IndexLength`, `TotalLength`, `DataFree`, `FragRatio`, `TableRows`, `PhysicalFileSize` (only supported for TencentDB for MySQL instances). For TencentDB for MySQL instances, the default value is `PhysicalFileSize`. For other database instances, the default value is `TotalLength`.
* @type {string || null}
*/
this.SortBy = null;
/**
* Service type. Valid values: `mysql` (TencentDB for MySQL), `cynosdb` (TDSQL-C for MySQL). Default value: `mysql`.
* @type {string || null}
*/
this.Product = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.Limit = 'Limit' in params ? params.Limit : null;
this.SortBy = 'SortBy' in params ? params.SortBy : null;
this.Product = 'Product' in params ? params.Product : null;
}
}
/**
* Diagnosis deduction item.
* @class
*/
class ScoreItem extends AbstractModel {
constructor(){
super();
/**
* Exception diagnosis item name.
* @type {string || null}
*/
this.DiagItem = null;
/**
* Diagnosis item type. Valid values: `Availability`, `Maintainability`, `Performance`, `Reliability`.
* @type {string || null}
*/
this.IssueType = null;
/**
* Health level. Valid values: `Healthy`, `Reminder`, `Alarm`, `Severe`, `Critical`.
* @type {string || null}
*/
this.TopSeverity = null;
/**
* Number of occurrences of this exception diagnosis item.
* @type {number || null}
*/
this.Count = null;
/**
* Deducted scores.
* @type {number || null}
*/
this.ScoreLost = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiagItem = 'DiagItem' in params ? params.DiagItem : null;
this.IssueType = 'IssueType' in params ? params.IssueType : null;
this.TopSeverity = 'TopSeverity' in params ? params.TopSeverity : null;
this.Count = 'Count' in params ? params.Count : null;
this.ScoreLost = 'ScoreLost' in params ? params.ScoreLost : null;
}
}
/**
* CreateRedisBigKeyAnalysisTask response structure.
* @class
*/
class CreateRedisBigKeyAnalysisTaskResponse extends AbstractModel {
constructor(){
super();
/**
* Async task ID
* @type {number || null}
*/
this.AsyncRequestId = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AsyncRequestId = 'AsyncRequestId' in params ? params.AsyncRequestId : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* CreateSecurityAuditLogExportTask request structure.
* @class
*/
class CreateSecurityAuditLogExportTaskRequest extends AbstractModel {
constructor(){
super();
/**
* Security audit group ID.
* @type {string || null}
*/
this.SecAuditGroupId = null;
/**
* Exported log start time, such as 2020-12-28 00:00:00.
* @type {string || null}
*/
this.StartTime = null;
/**
* Exported log end time, such as 2020-12-28 01:00:00.
* @type {string || null}
*/
this.EndTime = null;
/**
* Service type. Valid value: `mysql` (TencentDB for MySQL).
* @type {string || null}
*/
this.Product = null;
/**
* List of log risk levels. Valid values: `0` (no risk), `1` (low risk), `2` (medium risk), `3` (high risk).
* @type {Array.<number> || null}
*/
this.DangerLevels = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.SecAuditGroupId = 'SecAuditGroupId' in params ? params.SecAuditGroupId : null;
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
this.Product = 'Product' in params ? params.Product : null;
this.DangerLevels = 'DangerLevels' in params ? params.DangerLevels : null;
}
}
/**
* DescribeDBDiagEvent response structure.
* @class
*/
class DescribeDBDiagEventResponse extends AbstractModel {
constructor(){
super();
/**
* Diagnosis item.
* @type {string || null}
*/
this.DiagItem = null;
/**
* Diagnosis type.
* @type {string || null}
*/
this.DiagType = null;
/**
* Event ID.
* @type {number || null}
*/
this.EventId = null;
/**
* Diagnosis event details. If there is no additional explanation information, the output will be empty.
* @type {string || null}
*/
this.Explanation = null;
/**
* Diagnosis summary.
* @type {string || null}
*/
this.Outline = null;
/**
* Found problem.
* @type {string || null}
*/
this.Problem = null;
/**
* Severity, which can be divided into 5 levels: `1` (Critical), `2` (Severe), `3` (Alarm), `4` (Reminder), `5` (healthy).
* @type {number || null}
*/
this.Severity = null;
/**
* Start time
* @type {string || null}
*/
this.StartTime = null;
/**
* Suggestions. If there are no suggestions, the output will be empty.
* @type {string || null}
*/
this.Suggestions = null;
/**
* Reserved field.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Metric = null;
/**
* End time.
* @type {string || null}
*/
this.EndTime = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiagItem = 'DiagItem' in params ? params.DiagItem : null;
this.DiagType = 'DiagType' in params ? params.DiagType : null;
this.EventId = 'EventId' in params ? params.EventId : null;
this.Explanation = 'Explanation' in params ? params.Explanation : null;
this.Outline = 'Outline' in params ? params.Outline : null;
this.Problem = 'Problem' in params ? params.Problem : null;
this.Severity = 'Severity' in params ? params.Severity : null;
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.Suggestions = 'Suggestions' in params ? params.Suggestions : null;
this.Metric = 'Metric' in params ? params.Metric : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeDBDiagEvents response structure.
* @class
*/
class DescribeDBDiagEventsResponse extends AbstractModel {
constructor(){
super();
/**
* Total number of diagnosis events.
* @type {number || null}
*/
this.TotalCount = null;
/**
* Diagnosis event list.
* @type {Array.<DiagHistoryEventItem> || null}
*/
this.Items = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
if (params.Items) {
this.Items = new Array();
for (let z in params.Items) {
let obj = new DiagHistoryEventItem();
obj.deserialize(params.Items[z]);
this.Items.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeDBDiagReportTasks response structure.
* @class
*/
class DescribeDBDiagReportTasksResponse extends AbstractModel {
constructor(){
super();
/**
* Total number of tasks.
* @type {number || null}
*/
this.TotalCount = null;
/**
* List of tasks.
* @type {Array.<HealthReportTask> || null}
*/
this.Tasks = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
if (params.Tasks) {
this.Tasks = new Array();
for (let z in params.Tasks) {
let obj = new HealthReportTask();
obj.deserialize(params.Tasks[z]);
this.Tasks.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* AddUserContact response structure.
* @class
*/
class AddUserContactResponse extends AbstractModel {
constructor(){
super();
/**
* ID of the successfully added recipient.
* @type {number || null}
*/
this.Id = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Id = 'Id' in params ? params.Id : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Instance details
* @class
*/
class AuditInstanceInfo extends AbstractModel {
constructor(){
super();
/**
* appId
* @type {number || null}
*/
this.AppId = null;
/**
* Audit status. Valid values: `0` (Not enabled), `1` (Enabled).
* @type {number || null}
*/
this.AuditStatus = null;
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Instance name
* @type {string || null}
*/
this.InstanceName = null;
/**
* Project ID
* @type {number || null}
*/
this.ProjectId = null;
/**
* The region where the instance resides
* @type {string || null}
*/
this.Region = null;
/**
* Resource tags
* @type {Array.<string> || null}
*/
this.ResourceTags = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AppId = 'AppId' in params ? params.AppId : null;
this.AuditStatus = 'AuditStatus' in params ? params.AuditStatus : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.InstanceName = 'InstanceName' in params ? params.InstanceName : null;
this.ProjectId = 'ProjectId' in params ? params.ProjectId : null;
this.Region = 'Region' in params ? params.Region : null;
this.ResourceTags = 'ResourceTags' in params ? params.ResourceTags : null;
}
}
/**
* ModifyDiagDBInstanceConf response structure.
* @class
*/
class ModifyDiagDBInstanceConfResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeTopSpaceSchemaTimeSeries response structure.
* @class
*/
class DescribeTopSpaceSchemaTimeSeriesResponse extends AbstractModel {
constructor(){
super();
/**
* Time series list of the returned space statistics of top databases.
* @type {Array.<SchemaSpaceTimeSeries> || null}
*/
this.TopSpaceSchemaTimeSeries = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.TopSpaceSchemaTimeSeries) {
this.TopSpaceSchemaTimeSeries = new Array();
for (let z in params.TopSpaceSchemaTimeSeries) {
let obj = new SchemaSpaceTimeSeries();
obj.deserialize(params.TopSpaceSchemaTimeSeries[z]);
this.TopSpaceSchemaTimeSeries.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Top slow SQL statements
* @class
*/
class SlowLogTopSqlItem extends AbstractModel {
constructor(){
super();
/**
* Total SQL lock wait time in seconds.
* @type {number || null}
*/
this.LockTime = null;
/**
* Maximum lock wait time in seconds
* @type {number || null}
*/
this.LockTimeMax = null;
/**
* Minimum lock wait time in seconds
* @type {number || null}
*/
this.LockTimeMin = null;
/**
* Total number of scanned rows
* @type {number || null}
*/
this.RowsExamined = null;
/**
* Maximum number of scanned rows
* @type {number || null}
*/
this.RowsExaminedMax = null;
/**
* Minimum number of scanned rows
* @type {number || null}
*/
this.RowsExaminedMin = null;
/**
* Total duration in seconds
* @type {number || null}
*/
this.QueryTime = null;
/**
* Maximum execution time in seconds
* @type {number || null}
*/
this.QueryTimeMax = null;
/**
* Minimum execution time in seconds
* @type {number || null}
*/
this.QueryTimeMin = null;
/**
* Total number of returned rows
* @type {number || null}
*/
this.RowsSent = null;
/**
* Maximum number of returned rows
* @type {number || null}
*/
this.RowsSentMax = null;
/**
* Minimum number of returned rows
* @type {number || null}
*/
this.RowsSentMin = null;
/**
* Number of executions
* @type {number || null}
*/
this.ExecTimes = null;
/**
* SQL template
* @type {string || null}
*/
this.SqlTemplate = null;
/**
* SQL statements with parameter (random)
* @type {string || null}
*/
this.SqlText = null;
/**
* Database name
* @type {string || null}
*/
this.Schema = null;
/**
* Ratio of the total duration in %
* @type {number || null}
*/
this.QueryTimeRatio = null;
/**
* Ratio of the total SQL lock wait time in %
* @type {number || null}
*/
this.LockTimeRatio = null;
/**
* Ratio of total number of scanned rows in %
* @type {number || null}
*/
this.RowsExaminedRatio = null;
/**
* Ratio of total number of returned rows in %
* @type {number || null}
*/
this.RowsSentRatio = null;
/**
* Average execution time in seconds
* @type {number || null}
*/
this.QueryTimeAvg = null;
/**
* Average number of returned rows
* @type {number || null}
*/
this.RowsSentAvg = null;
/**
* Average lock wait time in seconds
* @type {number || null}
*/
this.LockTimeAvg = null;
/**
* Average number of scanned rows
* @type {number || null}
*/
this.RowsExaminedAvg = null;
/**
* MD5 value of the SQL template
* @type {string || null}
*/
this.Md5 = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.LockTime = 'LockTime' in params ? params.LockTime : null;
this.LockTimeMax = 'LockTimeMax' in params ? params.LockTimeMax : null;
this.LockTimeMin = 'LockTimeMin' in params ? params.LockTimeMin : null;
this.RowsExamined = 'RowsExamined' in params ? params.RowsExamined : null;
this.RowsExaminedMax = 'RowsExaminedMax' in params ? params.RowsExaminedMax : null;
this.RowsExaminedMin = 'RowsExaminedMin' in params ? params.RowsExaminedMin : null;
this.QueryTime = 'QueryTime' in params ? params.QueryTime : null;
this.QueryTimeMax = 'QueryTimeMax' in params ? params.QueryTimeMax : null;
this.QueryTimeMin = 'QueryTimeMin' in params ? params.QueryTimeMin : null;
this.RowsSent = 'RowsSent' in params ? params.RowsSent : null;
this.RowsSentMax = 'RowsSentMax' in params ? params.RowsSentMax : null;
this.RowsSentMin = 'RowsSentMin' in params ? params.RowsSentMin : null;
this.ExecTimes = 'ExecTimes' in params ? params.ExecTimes : null;
this.SqlTemplate = 'SqlTemplate' in params ? params.SqlTemplate : null;
this.SqlText = 'SqlText' in params ? params.SqlText : null;
this.Schema = 'Schema' in params ? params.Schema : null;
this.QueryTimeRatio = 'QueryTimeRatio' in params ? params.QueryTimeRatio : null;
this.LockTimeRatio = 'LockTimeRatio' in params ? params.LockTimeRatio : null;
this.RowsExaminedRatio = 'RowsExaminedRatio' in params ? params.RowsExaminedRatio : null;
this.RowsSentRatio = 'RowsSentRatio' in params ? params.RowsSentRatio : null;
this.QueryTimeAvg = 'QueryTimeAvg' in params ? params.QueryTimeAvg : null;
this.RowsSentAvg = 'RowsSentAvg' in params ? params.RowsSentAvg : null;
this.LockTimeAvg = 'LockTimeAvg' in params ? params.LockTimeAvg : null;
this.RowsExaminedAvg = 'RowsExaminedAvg' in params ? params.RowsExaminedAvg : null;
this.Md5 = 'Md5' in params ? params.Md5 : null;
}
}
/**
* DescribeAuditInstanceList response structure.
* @class
*/
class DescribeAuditInstanceListResponse extends AbstractModel {
constructor(){
super();
/**
* The number of eligible instances.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.TotalCount = null;
/**
* Instance details
* @type {Array.<AuditInstance> || null}
*/
this.Items = null;
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
if (params.Items) {
this.Items = new Array();
for (let z in params.Items) {
let obj = new AuditInstance();
obj.deserialize(params.Items[z]);
this.Items.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeProxySessionKillTasks request structure.
* @class
*/
class DescribeProxySessionKillTasksRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* The async session killing task ID, which is obtained after the API `CreateProxySessionKillTask` is successfully called.
* @type {Array.<number> || null}
*/
this.AsyncRequestIds = null;
/**
* Service type. Valid value: `redis` (TencentDB for Redis).
* @type {string || null}
*/
this.Product = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.AsyncRequestIds = 'AsyncRequestIds' in params ? params.AsyncRequestIds : null;
this.Product = 'Product' in params ? params.Product : null;
}
}
/**
* CreateRedisBigKeyAnalysisTask request structure.
* @class
*/
class CreateRedisBigKeyAnalysisTaskRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Service type. Valid value: `redis` (TencentDB for Redis).
* @type {string || null}
*/
this.Product = null;
/**
* The list of the serial numbers of shard nodes. When the list is empty, all shard nodes will be selected.
* @type {Array.<number> || null}
*/
this.ShardIds = null;
/**
* The list of separators of top key prefixes.
Currently, the following separators are supported: ",", ";", ":", "_", "-", "+", "@", "=", "|", "#", ".". When the list is empty, all separators will be selected by default.
* @type {Array.<string> || null}
*/
this.KeyDelimiterList = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.Product = 'Product' in params ? params.Product : null;
this.ShardIds = 'ShardIds' in params ? params.ShardIds : null;
this.KeyDelimiterList = 'KeyDelimiterList' in params ? params.KeyDelimiterList : null;
}
}
/**
* DescribeMySqlProcessList response structure.
* @class
*/
class DescribeMySqlProcessListResponse extends AbstractModel {
constructor(){
super();
/**
* List of real-time threads.
* @type {Array.<MySqlProcess> || null}
*/
this.ProcessList = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.ProcessList) {
this.ProcessList = new Array();
for (let z in params.ProcessList) {
let obj = new MySqlProcess();
obj.deserialize(params.ProcessList[z]);
this.ProcessList.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Access source details of the real-time session
* @class
*/
class SessionItem extends AbstractModel {
constructor(){
super();
/**
* Access source
* @type {string || null}
*/
this.Ip = null;
/**
* The number of active connections from the current access source
* @type {string || null}
*/
this.ActiveConn = null;
/**
* The total number of connections from the current access source
* @type {number || null}
*/
this.AllConn = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Ip = 'Ip' in params ? params.Ip : null;
this.ActiveConn = 'ActiveConn' in params ? params.ActiveConn : null;
this.AllConn = 'AllConn' in params ? params.AllConn : null;
}
}
/**
* Instance health status.
* @class
*/
class HealthStatus extends AbstractModel {
constructor(){
super();
/**
* Health score out of 100 points.
* @type {number || null}
*/
this.HealthScore = null;
/**
* Health level. Valid values: `HEALTH` (healthy), `SUB_HEALTH` (sub-healthy), `RISK` (dangerous), and `HIGH_RISK` (high-risk).
* @type {string || null}
*/
this.HealthLevel = null;
/**
* Total deducted scores.
* @type {number || null}
*/
this.ScoreLost = null;
/**
* Deduction details.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {Array.<ScoreDetail> || null}
*/
this.ScoreDetails = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.HealthScore = 'HealthScore' in params ? params.HealthScore : null;
this.HealthLevel = 'HealthLevel' in params ? params.HealthLevel : null;
this.ScoreLost = 'ScoreLost' in params ? params.ScoreLost : null;
if (params.ScoreDetails) {
this.ScoreDetails = new Array();
for (let z in params.ScoreDetails) {
let obj = new ScoreDetail();
obj.deserialize(params.ScoreDetails[z]);
this.ScoreDetails.push(obj);
}
}
}
}
/**
* DescribeTopSpaceTables response structure.
* @class
*/
class DescribeTopSpaceTablesResponse extends AbstractModel {
constructor(){
super();
/**
* List of the returned space statistics of top tables.
* @type {Array.<TableSpaceData> || null}
*/
this.TopSpaceTables = null;
/**
* Timestamp (in seconds) of tablespace data collection points
* @type {number || null}
*/
this.Timestamp = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.TopSpaceTables) {
this.TopSpaceTables = new Array();
for (let z in params.TopSpaceTables) {
let obj = new TableSpaceData();
obj.deserialize(params.TopSpaceTables[z]);
this.TopSpaceTables.push(obj);
}
}
this.Timestamp = 'Timestamp' in params ? params.Timestamp : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Information about Redis session killing task status
* @class
*/
class TaskInfo extends AbstractModel {
constructor(){
super();
/**
* Async task ID.
* @type {number || null}
*/
this.AsyncRequestId = null;
/**
* List of all proxies of the current instance.
* @type {Array.<string> || null}
*/
this.InstProxyList = null;
/**
* Total number of proxies of the current instance.
* @type {number || null}
*/
this.InstProxyCount = null;
/**
* Task creation time.
* @type {string || null}
*/
this.CreateTime = null;
/**
* Task start time.
* @type {string || null}
*/
this.StartTime = null;
/**
* Task status. Valid values: `created` (create), `chosen` (to be executed), `running` (being executed), `failed` (failed), and `finished` (completed).
* @type {string || null}
*/
this.TaskStatus = null;
/**
* IDs of the proxies that have completed the session killing tasks.
* @type {Array.<string> || null}
*/
this.FinishedProxyList = null;
/**
* IDs of the proxies that failed to execute the session killing tasks.
* @type {Array.<string> || null}
*/
this.FailedProxyList = null;
/**
* Task end time.
* @type {string || null}
*/
this.EndTime = null;
/**
* Task progress.
* @type {number || null}
*/
this.Progress = null;
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AsyncRequestId = 'AsyncRequestId' in params ? params.AsyncRequestId : null;
this.InstProxyList = 'InstProxyList' in params ? params.InstProxyList : null;
this.InstProxyCount = 'InstProxyCount' in params ? params.InstProxyCount : null;
this.CreateTime = 'CreateTime' in params ? params.CreateTime : null;
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.TaskStatus = 'TaskStatus' in params ? params.TaskStatus : null;
this.FinishedProxyList = 'FinishedProxyList' in params ? params.FinishedProxyList : null;
this.FailedProxyList = 'FailedProxyList' in params ? params.FailedProxyList : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
this.Progress = 'Progress' in params ? params.Progress : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
}
}
/**
* KillMySqlThreads response structure.
* @class
*/
class KillMySqlThreadsResponse extends AbstractModel {
constructor(){
super();
/**
* List of IDs of the MySQL sessions that have been killed.
* @type {Array.<number> || null}
*/
this.Threads = null;
/**
* Execution ID, which is output in the `Prepare` stage and used to specify the ID of the session to be killed in the `Commit` stage.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.SqlExecId = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Threads = 'Threads' in params ? params.Threads : null;
this.SqlExecId = 'SqlExecId' in params ? params.SqlExecId : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* CreateSchedulerMailProfile request structure.
* @class
*/
class CreateSchedulerMailProfileRequest extends AbstractModel {
constructor(){
super();
/**
* Value range: 1-7, representing Monday to Sunday respectively.
* @type {Array.<number> || null}
*/
this.WeekConfiguration = null;
/**
* Email configuration.
* @type {ProfileInfo || null}
*/
this.ProfileInfo = null;
/**
* Configuration name, which needs to be unique. For scheduled task emails, the name should be in the format of "scheduler_" + {instanceId}, such as "schduler_cdb-test".
* @type {string || null}
*/
this.ProfileName = null;
/**
* ID of the instance for which to configure subscription.
* @type {string || null}
*/
this.BindInstanceId = null;
/**
* Service type. Valid values: `mysql` (TencentDB for MySQL), `cynosdb` (TDSQL-C for MySQL). Default value: `mysql`.
* @type {string || null}
*/
this.Product = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.WeekConfiguration = 'WeekConfiguration' in params ? params.WeekConfiguration : null;
if (params.ProfileInfo) {
let obj = new ProfileInfo();
obj.deserialize(params.ProfileInfo)
this.ProfileInfo = obj;
}
this.ProfileName = 'ProfileName' in params ? params.ProfileName : null;
this.BindInstanceId = 'BindInstanceId' in params ? params.BindInstanceId : null;
this.Product = 'Product' in params ? params.Product : null;
}
}
/**
* Recipient description.
* @class
*/
class ContactItem extends AbstractModel {
constructor(){
super();
/**
* Recipient ID.
* @type {number || null}
*/
this.Id = null;
/**
* Recipient name.
* @type {string || null}
*/
this.Name = null;
/**
* Recipient email.
* @type {string || null}
*/
this.Mail = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Id = 'Id' in params ? params.Id : null;
this.Name = 'Name' in params ? params.Name : null;
this.Mail = 'Mail' in params ? params.Mail : null;
}
}
/**
* DescribeDBSpaceStatus request structure.
* @class
*/
class DescribeDBSpaceStatusRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Query period in days. The end date is the current date, and the query period is 7 days by default.
* @type {number || null}
*/
this.RangeDays = null;
/**
* Service type. Valid values: `mysql` (TencentDB for MySQL), `cynosdb` (TDSQL-C for MySQL). Default value: `mysql`.
* @type {string || null}
*/
this.Product = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.RangeDays = 'RangeDays' in params ? params.RangeDays : null;
this.Product = 'Product' in params ? params.Product : null;
}
}
/**
* Slow log statistics in the specified time range
* @class
*/
class TimeSlice extends AbstractModel {
constructor(){
super();
/**
* Total number
* @type {number || null}
*/
this.Count = null;
/**
* Statistics start time
* @type {number || null}
*/
this.Timestamp = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Count = 'Count' in params ? params.Count : null;
this.Timestamp = 'Timestamp' in params ? params.Timestamp : null;
}
}
/**
* DeleteDBDiagReportTasks request structure.
* @class
*/
class DeleteDBDiagReportTasksRequest extends AbstractModel {
constructor(){
super();
/**
* List of IDs of tasks to be deleted
* @type {Array.<number> || null}
*/
this.AsyncR