我正在向CloudWatch发送3个维度(诊所Id、电子邮件、节点名)以获取度量。在查询Cloudwatch时,我想基于1维(Clinic\u Id)进行查询,并获得第3维(NodenName)的不同值。是否有解决方法来实现这一点?我知道Cloudwatch会把它(一个一维的)看作一个完全不同的度量标准。你知道吗
我遇到了get_metric_data
函数,我希望这样的函数可以工作:
stats = cloudwatch.get_metric_data(
MetricDataQueries=[{
'Id': 'm1',
'Expression': "SEARCH('{ABC/HEARTBEAT} MetricName=\"PING_PONG\"', 'Average', 300)",
'ReturnData': True,
},
],
我走对了吗?如果是,什么是正确的语法来实现它。如果没有,我还有什么选择?你知道吗
我现在得到:
{"Messages": [], "ResponseMetadata": {"RetryAttempts": 0, "HTTPStatusCode": 200, "RequestId": "f36c1943-0e20-460d-8757-15eedd25d0c4", "HTTPHeaders": {"x-amzn-requestid": "f36c1943-0e20-460d-8757-15eedd25d0c4", "date": "Fri, 06 Dec 2019 00:54:25 GMT", "content-length": "302", "content-type": "text/xml"}}, "MetricDataResults": []}
我现在试着:
MetricDataQueries=[
{
"Id":'m1',
'Expression': "SEARCH('{ABC/HEARTBEAT,Client_Email, Clinic_Id, NodeName} MetricName=\"PING_PONG\" Clinic_Id = 7667', 'Average', 864000)",
'ReturnData': True,
},
在MetricDataResults
中,我只得到时间戳:
如何获得记录的Clinic_Email
和NodeName
的所有值?你知道吗
{"Messages": [], "ResponseMetadata": {"RetryAttempts": 0, "HTTPStatusCode": 200, "RequestId": "2f33cc09-61ff-40b0-9d28-72c4d949b2f0", "HTTPHeaders": {"x-amzn-requestid": "2f33cc09-61ff-40b0-9d28-72c4d949b2f0", "date": "Fri, 06 Dec 2019 22:47:25 GMT", "content-length": "928", "content-type": "text/xml"}}, "MetricDataResults": [{"Timestamps": ["2019-12-06 20:47:00+00:00"], "StatusCode": "Complete", "Values": [1.0], "Id": "m1", "Label": "simran+test2@abc.com"}, {"Timestamps": ["2019-12-06 20:47:00+00:00"], "StatusCode": "Complete", "Values": [1.0], "Id": "m1", "Label": "simran+test4@abc.com"}]}
是的,在这里使用
SEARCH
表达式是正确的方法,您只需要在花括号中列出要匹配的所有维度。你知道吗您在示例中匹配了度量名称,因此要获得具有所有维度的度量,您可以执行以下操作:
您说您希望匹配
Clinic_Id
的特定值和度量名称。您可以通过以下方式实现:相关问题 更多 >
编程相关推荐