huaweicloud-sdk-python-v3/huaweicloud-sdk-ces/huaweicloudsdkces/v1/model/show_metric_data_request.py

374 lines
20 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# coding: utf-8
import re
import six
from huaweicloudsdkcore.utils.http_utils import sanitize_for_serialization
class ShowMetricDataRequest:
"""
Attributes:
openapi_types (dict): The key is attribute name
and the value is attribute type.
attribute_map (dict): The key is attribute name
and the value is json key in definition.
"""
sensitive_list = []
openapi_types = {
'namespace': 'str',
'metric_name': 'str',
'dim_0': 'str',
'dim_1': 'str',
'dim_2': 'str',
'dim_3': 'str',
'filter': 'str',
'period': 'int',
'_from': 'int',
'to': 'int'
}
attribute_map = {
'namespace': 'namespace',
'metric_name': 'metric_name',
'dim_0': 'dim.0',
'dim_1': 'dim.1',
'dim_2': 'dim.2',
'dim_3': 'dim.3',
'filter': 'filter',
'period': 'period',
'_from': 'from',
'to': 'to'
}
def __init__(self, namespace=None, metric_name=None, dim_0=None, dim_1=None, dim_2=None, dim_3=None, filter=None, period=None, _from=None, to=None):
"""ShowMetricDataRequest
The model defined in huaweicloud sdk
:param namespace: 指标命名空间弹性云服务器的命名空间为SYS.ECS文档数据库的命名空间为SYS.DDS各服务的命名空间可查看“[服务命名空间](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:type namespace: str
:param metric_name: 资源的监控指标名称弹性云服务器中的监控指标cpu_util表示弹性服务器的CPU使用率文档数据库中的指标mongo001_command_ps表示command执行频率各服务的指标名称可查看“[服务指标名称](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:type metric_name: str
:param dim_0: 指标的第一层维度目前最大支持4个维度维度编号从0开始维度格式为dim.0=key,value如mongodb_cluster_id,4270ff17-aba3-4138-89fa-820594c39755key为指标的维度信息文档数据库服务则第一层维度为mongodb_cluster_idvalue为文档数据库实例ID各服务资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:type dim_0: str
:param dim_1: 指标的第二层维度目前最大支持4个维度维度编号从0开始维度格式为dim.1=key,value如mongos_instance_id,c65d39d7-185c-4616-9aca-ad65703b15f9key为指标的维度信息文档数据库服务则第二层维度为mongos_instance_idvalue为文档数据库集群实例下的mongos节点ID各资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:type dim_1: str
:param dim_2: 指标的第三层维度目前最大支持4个维度维度编号从0开始维度格式为dim.2=key,value如mongod_primary_instance_id,5f9498e9-36f8-4317-9ea1-ebe28cba99b4key为指标的维度信息文档数据库服务则第三层维度为mongod_primary_instance_idvalue为文档数据库实例下的主节点ID各资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:type dim_2: str
:param dim_3: 指标的第四层维度目前最大支持4个维度维度编号从0开始维度格式为dim.3=key,value如mongod_secondary_instance_id,b46fa2c7-aac6-4ae3-9337-f4ea97f885cbkey为指标的维度信息文档数据库服务则第四层维度为mongod_secondary_instance_idvalue为文档数据库实例下的备节点ID各资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:type dim_3: str
:param filter: 数据聚合方式。支持的值为max, min, average, sum, variance。
:type filter: str
:param period: 指标监控数据的聚合粒度取值范围13001200360014400864001为监控资源的实时数据300为聚合5分钟粒度数据表示5分钟一个数据点1200为聚合20分钟粒度数据表示20分钟一个数据点3600为聚合1小时粒度数据表示1小时一个数据点14400为聚合4小时粒度数据表示4小时一个数据点86400为聚合1天粒度数据表示1天一个数据点聚合解释可查看“[聚合含义](https://support.huaweicloud.com/ces_faq/ces_faq_0009.html)”。
:type period: int
:param _from: 查询数据起始时间UNIX时间戳单位毫秒。建议from的值相对于当前时间向前偏移至少1个周期。由于聚合运算的过程是将一个聚合周期范围内的数据点聚合到周期起始边界上如果将from和to的范围设置在聚合周期内会因为聚合未完成而造成查询数据为空所以建议from参数相对于当前时间向前偏移至少1个周期。以5分钟聚合周期为例假设当前时间点为10:3510:30~10:35之间的原始数据会被聚合到10:30这个点上所以查询5分钟数据点时from参数应为10:30或之前。云监控会根据所选择的聚合粒度向前取整from参数1607146998177。
:type _from: int
:param to: 查询数据截止时间UNIX时间戳单位毫秒。from必须小于to1607150598177。
:type to: int
"""
self._namespace = None
self._metric_name = None
self._dim_0 = None
self._dim_1 = None
self._dim_2 = None
self._dim_3 = None
self._filter = None
self._period = None
self.__from = None
self._to = None
self.discriminator = None
self.namespace = namespace
self.metric_name = metric_name
self.dim_0 = dim_0
if dim_1 is not None:
self.dim_1 = dim_1
if dim_2 is not None:
self.dim_2 = dim_2
if dim_3 is not None:
self.dim_3 = dim_3
self.filter = filter
self.period = period
self._from = _from
self.to = to
@property
def namespace(self):
"""Gets the namespace of this ShowMetricDataRequest.
指标命名空间弹性云服务器的命名空间为SYS.ECS文档数据库的命名空间为SYS.DDS各服务的命名空间可查看“[服务命名空间](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:return: The namespace of this ShowMetricDataRequest.
:rtype: str
"""
return self._namespace
@namespace.setter
def namespace(self, namespace):
"""Sets the namespace of this ShowMetricDataRequest.
指标命名空间弹性云服务器的命名空间为SYS.ECS文档数据库的命名空间为SYS.DDS各服务的命名空间可查看“[服务命名空间](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:param namespace: The namespace of this ShowMetricDataRequest.
:type namespace: str
"""
self._namespace = namespace
@property
def metric_name(self):
"""Gets the metric_name of this ShowMetricDataRequest.
资源的监控指标名称弹性云服务器中的监控指标cpu_util表示弹性服务器的CPU使用率文档数据库中的指标mongo001_command_ps表示command执行频率各服务的指标名称可查看“[服务指标名称](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:return: The metric_name of this ShowMetricDataRequest.
:rtype: str
"""
return self._metric_name
@metric_name.setter
def metric_name(self, metric_name):
"""Sets the metric_name of this ShowMetricDataRequest.
资源的监控指标名称弹性云服务器中的监控指标cpu_util表示弹性服务器的CPU使用率文档数据库中的指标mongo001_command_ps表示command执行频率各服务的指标名称可查看“[服务指标名称](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:param metric_name: The metric_name of this ShowMetricDataRequest.
:type metric_name: str
"""
self._metric_name = metric_name
@property
def dim_0(self):
"""Gets the dim_0 of this ShowMetricDataRequest.
指标的第一层维度目前最大支持4个维度维度编号从0开始维度格式为dim.0=key,value如mongodb_cluster_id,4270ff17-aba3-4138-89fa-820594c39755key为指标的维度信息文档数据库服务则第一层维度为mongodb_cluster_idvalue为文档数据库实例ID各服务资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:return: The dim_0 of this ShowMetricDataRequest.
:rtype: str
"""
return self._dim_0
@dim_0.setter
def dim_0(self, dim_0):
"""Sets the dim_0 of this ShowMetricDataRequest.
指标的第一层维度目前最大支持4个维度维度编号从0开始维度格式为dim.0=key,value如mongodb_cluster_id,4270ff17-aba3-4138-89fa-820594c39755key为指标的维度信息文档数据库服务则第一层维度为mongodb_cluster_idvalue为文档数据库实例ID各服务资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:param dim_0: The dim_0 of this ShowMetricDataRequest.
:type dim_0: str
"""
self._dim_0 = dim_0
@property
def dim_1(self):
"""Gets the dim_1 of this ShowMetricDataRequest.
指标的第二层维度目前最大支持4个维度维度编号从0开始维度格式为dim.1=key,value如mongos_instance_id,c65d39d7-185c-4616-9aca-ad65703b15f9key为指标的维度信息文档数据库服务则第二层维度为mongos_instance_idvalue为文档数据库集群实例下的mongos节点ID各资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:return: The dim_1 of this ShowMetricDataRequest.
:rtype: str
"""
return self._dim_1
@dim_1.setter
def dim_1(self, dim_1):
"""Sets the dim_1 of this ShowMetricDataRequest.
指标的第二层维度目前最大支持4个维度维度编号从0开始维度格式为dim.1=key,value如mongos_instance_id,c65d39d7-185c-4616-9aca-ad65703b15f9key为指标的维度信息文档数据库服务则第二层维度为mongos_instance_idvalue为文档数据库集群实例下的mongos节点ID各资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:param dim_1: The dim_1 of this ShowMetricDataRequest.
:type dim_1: str
"""
self._dim_1 = dim_1
@property
def dim_2(self):
"""Gets the dim_2 of this ShowMetricDataRequest.
指标的第三层维度目前最大支持4个维度维度编号从0开始维度格式为dim.2=key,value如mongod_primary_instance_id,5f9498e9-36f8-4317-9ea1-ebe28cba99b4key为指标的维度信息文档数据库服务则第三层维度为mongod_primary_instance_idvalue为文档数据库实例下的主节点ID各资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:return: The dim_2 of this ShowMetricDataRequest.
:rtype: str
"""
return self._dim_2
@dim_2.setter
def dim_2(self, dim_2):
"""Sets the dim_2 of this ShowMetricDataRequest.
指标的第三层维度目前最大支持4个维度维度编号从0开始维度格式为dim.2=key,value如mongod_primary_instance_id,5f9498e9-36f8-4317-9ea1-ebe28cba99b4key为指标的维度信息文档数据库服务则第三层维度为mongod_primary_instance_idvalue为文档数据库实例下的主节点ID各资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:param dim_2: The dim_2 of this ShowMetricDataRequest.
:type dim_2: str
"""
self._dim_2 = dim_2
@property
def dim_3(self):
"""Gets the dim_3 of this ShowMetricDataRequest.
指标的第四层维度目前最大支持4个维度维度编号从0开始维度格式为dim.3=key,value如mongod_secondary_instance_id,b46fa2c7-aac6-4ae3-9337-f4ea97f885cbkey为指标的维度信息文档数据库服务则第四层维度为mongod_secondary_instance_idvalue为文档数据库实例下的备节点ID各资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:return: The dim_3 of this ShowMetricDataRequest.
:rtype: str
"""
return self._dim_3
@dim_3.setter
def dim_3(self, dim_3):
"""Sets the dim_3 of this ShowMetricDataRequest.
指标的第四层维度目前最大支持4个维度维度编号从0开始维度格式为dim.3=key,value如mongod_secondary_instance_id,b46fa2c7-aac6-4ae3-9337-f4ea97f885cbkey为指标的维度信息文档数据库服务则第四层维度为mongod_secondary_instance_idvalue为文档数据库实例下的备节点ID各资源的指标维度名称可查看“[服务指标维度](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html)”。
:param dim_3: The dim_3 of this ShowMetricDataRequest.
:type dim_3: str
"""
self._dim_3 = dim_3
@property
def filter(self):
"""Gets the filter of this ShowMetricDataRequest.
数据聚合方式。支持的值为max, min, average, sum, variance。
:return: The filter of this ShowMetricDataRequest.
:rtype: str
"""
return self._filter
@filter.setter
def filter(self, filter):
"""Sets the filter of this ShowMetricDataRequest.
数据聚合方式。支持的值为max, min, average, sum, variance。
:param filter: The filter of this ShowMetricDataRequest.
:type filter: str
"""
self._filter = filter
@property
def period(self):
"""Gets the period of this ShowMetricDataRequest.
指标监控数据的聚合粒度取值范围13001200360014400864001为监控资源的实时数据300为聚合5分钟粒度数据表示5分钟一个数据点1200为聚合20分钟粒度数据表示20分钟一个数据点3600为聚合1小时粒度数据表示1小时一个数据点14400为聚合4小时粒度数据表示4小时一个数据点86400为聚合1天粒度数据表示1天一个数据点聚合解释可查看“[聚合含义](https://support.huaweicloud.com/ces_faq/ces_faq_0009.html)”。
:return: The period of this ShowMetricDataRequest.
:rtype: int
"""
return self._period
@period.setter
def period(self, period):
"""Sets the period of this ShowMetricDataRequest.
指标监控数据的聚合粒度取值范围13001200360014400864001为监控资源的实时数据300为聚合5分钟粒度数据表示5分钟一个数据点1200为聚合20分钟粒度数据表示20分钟一个数据点3600为聚合1小时粒度数据表示1小时一个数据点14400为聚合4小时粒度数据表示4小时一个数据点86400为聚合1天粒度数据表示1天一个数据点聚合解释可查看“[聚合含义](https://support.huaweicloud.com/ces_faq/ces_faq_0009.html)”。
:param period: The period of this ShowMetricDataRequest.
:type period: int
"""
self._period = period
@property
def _from(self):
"""Gets the _from of this ShowMetricDataRequest.
查询数据起始时间UNIX时间戳单位毫秒。建议from的值相对于当前时间向前偏移至少1个周期。由于聚合运算的过程是将一个聚合周期范围内的数据点聚合到周期起始边界上如果将from和to的范围设置在聚合周期内会因为聚合未完成而造成查询数据为空所以建议from参数相对于当前时间向前偏移至少1个周期。以5分钟聚合周期为例假设当前时间点为10:3510:30~10:35之间的原始数据会被聚合到10:30这个点上所以查询5分钟数据点时from参数应为10:30或之前。云监控会根据所选择的聚合粒度向前取整from参数1607146998177。
:return: The _from of this ShowMetricDataRequest.
:rtype: int
"""
return self.__from
@_from.setter
def _from(self, _from):
"""Sets the _from of this ShowMetricDataRequest.
查询数据起始时间UNIX时间戳单位毫秒。建议from的值相对于当前时间向前偏移至少1个周期。由于聚合运算的过程是将一个聚合周期范围内的数据点聚合到周期起始边界上如果将from和to的范围设置在聚合周期内会因为聚合未完成而造成查询数据为空所以建议from参数相对于当前时间向前偏移至少1个周期。以5分钟聚合周期为例假设当前时间点为10:3510:30~10:35之间的原始数据会被聚合到10:30这个点上所以查询5分钟数据点时from参数应为10:30或之前。云监控会根据所选择的聚合粒度向前取整from参数1607146998177。
:param _from: The _from of this ShowMetricDataRequest.
:type _from: int
"""
self.__from = _from
@property
def to(self):
"""Gets the to of this ShowMetricDataRequest.
查询数据截止时间UNIX时间戳单位毫秒。from必须小于to1607150598177。
:return: The to of this ShowMetricDataRequest.
:rtype: int
"""
return self._to
@to.setter
def to(self, to):
"""Sets the to of this ShowMetricDataRequest.
查询数据截止时间UNIX时间戳单位毫秒。from必须小于to1607150598177。
:param to: The to of this ShowMetricDataRequest.
:type to: int
"""
self._to = to
def to_dict(self):
"""Returns the model properties as a dict"""
result = {}
for attr, _ in six.iteritems(self.openapi_types):
value = getattr(self, attr)
if isinstance(value, list):
result[attr] = list(map(
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
value
))
elif hasattr(value, "to_dict"):
result[attr] = value.to_dict()
elif isinstance(value, dict):
result[attr] = dict(map(
lambda item: (item[0], item[1].to_dict())
if hasattr(item[1], "to_dict") else item,
value.items()
))
else:
if attr in self.sensitive_list:
result[attr] = "****"
else:
result[attr] = value
return result
def to_str(self):
"""Returns the string representation of the model"""
import simplejson as json
if six.PY2:
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
return json.dumps(sanitize_for_serialization(self), ensure_ascii=False)
def __repr__(self):
"""For `print`"""
return self.to_str()
def __eq__(self, other):
"""Returns true if both objects are equal"""
if not isinstance(other, ShowMetricDataRequest):
return False
return self.__dict__ == other.__dict__
def __ne__(self, other):
"""Returns true if both objects are not equal"""
return not self == other