get method
Retrieve metrics grouped by dimensions.
The types of metrics you can retrieve include traffic, message counts, API
call latency, response size, and cache hits and counts. Dimensions let you
view metrics in meaningful groups. You can optionally pass dimensions as
path parameters to the stats
API. If dimensions are not specified, the
metrics are computed on the entire set of data for the given time range.
Request parameters:
name
- Required. Resource name for which the interactive query will be
executed. Use the following format in your request:
organizations/{org}/environments/{env}/stats/{dimensions}
Dimensions let
you view metrics in meaningful groupings, such as apiproxy
or
target_host
. The value of dimensions should be a comma-separated list,
as shown below:
organizations/{org}/environments/{env}/stats/apiproxy,request_verb
Value must have pattern
^organizations/\[^/\]+/environments/\[^/\]+/stats/.*$
.
accuracy
- No longer used by Apigee. Supported for backwards
compatibility.
aggTable
- Table name used to query custom aggregate tables. If this
parameter is skipped, then Apigee will try to retrieve the data from fact
tables which will be expensive.
filter
- Filter that enables you to drill down on specific dimension
values.
limit
- Maximum number of result items to return. The default and
maximum value that can be returned is 14400.
offset
- Offset value. Use offset
with limit
to enable pagination of
results. For example, to display results 11-20, set limit to 10
and
offset to 10
.
realtime
- No longer used by Apigee. Supported for backwards
compatibility.
select
- Comma-separated list of metrics. For example:
sum(message_count),sum(error_count)
sonar
- Routes the query to API Monitoring for the last hour.
sort
- Flag that specifies whether the sort order should be ascending or
descending. Valid values include: DESC
and ASC
.
sortby
- Comma-separated list of columns to sort the final result.
timeRange
- Time interval for the interactive query. Time range is
specified in GMT as start~end
. For example: 04/15/2017 00:00~05/15/2017 23:59
timeUnit
- Granularity of metrics returned. Valid values include:
second
, minute
, hour
, day
, week
, or month
.
topk
- Top number of results to return. For example, to return the top 5
results, set topk=5
.
tsAscending
- Flag that specifies whether to list timestamps in
ascending (true
) or descending (false
) order. Apigee recommends that
you set this value to true
if you are using sortby
with sort=DESC
.
tzo
- Timezone offset value.
$fields
- Selector specifying which fields to include in a partial
response.
Completes with a GoogleCloudApigeeV1Stats.
Completes with a commons.ApiRequestError if the API endpoint returned an error.
If the used http.Client
completes with an error when making a REST call,
this method will complete with the same error.
Implementation
async.Future<GoogleCloudApigeeV1Stats> get(
core.String name, {
core.String? accuracy,
core.String? aggTable,
core.String? filter,
core.String? limit,
core.String? offset,
core.bool? realtime,
core.String? select,
core.bool? sonar,
core.String? sort,
core.String? sortby,
core.String? timeRange,
core.String? timeUnit,
core.String? topk,
core.bool? tsAscending,
core.String? tzo,
core.String? $fields,
}) async {
final queryParams_ = <core.String, core.List<core.String>>{
if (accuracy != null) 'accuracy': [accuracy],
if (aggTable != null) 'aggTable': [aggTable],
if (filter != null) 'filter': [filter],
if (limit != null) 'limit': [limit],
if (offset != null) 'offset': [offset],
if (realtime != null) 'realtime': ['${realtime}'],
if (select != null) 'select': [select],
if (sonar != null) 'sonar': ['${sonar}'],
if (sort != null) 'sort': [sort],
if (sortby != null) 'sortby': [sortby],
if (timeRange != null) 'timeRange': [timeRange],
if (timeUnit != null) 'timeUnit': [timeUnit],
if (topk != null) 'topk': [topk],
if (tsAscending != null) 'tsAscending': ['${tsAscending}'],
if (tzo != null) 'tzo': [tzo],
if ($fields != null) 'fields': [$fields],
};
final url_ = 'v1/' + core.Uri.encodeFull('$name');
final response_ = await _requester.request(
url_,
'GET',
queryParams: queryParams_,
);
return GoogleCloudApigeeV1Stats.fromJson(
response_ as core.Map<core.String, core.dynamic>);
}