我已经配置了度量过滤器以对LogStream上的信息进行计数。我可以在AWS CLoudWatch仪表板上看到我的结果,但我想在AWS SDK Java上获得这些信息。为此,我尝试使用CloudWatchLogsClient类和函数describeMetricFilters(...)
,但结果未检索到我需要的计数数据。
这是我的仪表板,其中包含我想要的信息:
在我的代码中,我尝试获取有关度量过滤器的信息,但我的目标是获取所有度量过滤器的数据,本例中为3。
代码
private CloudWatchLogsClient cloudWatchLogsClient;
public Object getMetricsFilter() {
DescribeMetricFiltersResponse describeMetricFiltersResponse = this.cloudWatchLogsClient.describeMetricFilters(builder -> {
builder.metricNamespace("namespace-name");
builder.metricName("Metric Filter API-KEY-3");
});
return describeMetricFiltersResponse.toString();
}
返回不检索正确的计数,返回它:
DescribeMetricFiltersResponse(MetricFilters=[MetricFilter(FilterName=API-KEY-3 Count,
FilterPattern="apiKeyId" "*******",
MetricTransformations=[MetricTransformation(MetricName=Metric Filter API-KEY-3,
MetricNamespace=namespace-name, MetricValue=1)],
CreationTime=1574249791147, LogGroupName=group-name)])
对于度量过滤器Metric Filter API-KEY-3
,我希望收到类似Count = 7
的数据
答案 0 :(得分:0)
指标过滤器创建指标。
DescribeMetricFilters API为您提供有关指标过滤器的信息。
要获取指标数据,您需要使用 GetMetricData (推荐)或 GetMetricStatistics API。您还可以使用 GetMetricWidgetImage API来获取图形的位图图像。