<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="apigee_v1.html">Apigee API</a> . <a href="apigee_v1.organizations.html">organizations</a> . <a href="apigee_v1.organizations.hostStats.html">hostStats</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#get">get(name, accuracy=None, envgroupHostname=None, filter=None, limit=None, offset=None, realtime=None, select=None, sort=None, sortby=None, timeRange=None, timeUnit=None, topk=None, tsAscending=None, tzo=None, x__xgafv=None)</a></code></p>
<p class="firstline">Retrieve metrics grouped by dimensions in host level. 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. The stats api does accept dimensions as path params. The dimensions are optional in which case the metrics are computed on the entire data for the given timerange.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, accuracy=None, envgroupHostname=None, filter=None, limit=None, offset=None, realtime=None, select=None, sort=None, sortby=None, timeRange=None, timeUnit=None, topk=None, tsAscending=None, tzo=None, x__xgafv=None)</code>
  <pre>Retrieve metrics grouped by dimensions in host level. 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. The stats api does accept dimensions as path params. The dimensions are optional in which case the metrics are computed on the entire data for the given timerange.

Args:
  name: string, Required. The resource name for which the interactive query will be executed. Must be of the form `organizations/{organization_id}/hostStats/{dimensions}`. Dimensions let you view metrics in meaningful groupings. E.g. apiproxy, target_host. The value of dimensions should be comma separated list as shown below `organizations/{org}/hostStats/apiproxy,request_verb` (required)
  accuracy: string, Legacy field: not used anymore.
  envgroupHostname: string, Required. The hostname for which the interactive query will be executed.
  filter: string, Enables drill-down on specific dimension values.
  limit: string, This parameter is used to limit the number of result items. Default and the max value is 14400.
  offset: string, Use offset with limit to enable pagination of results. For example, to display results 11-20, set limit to &#x27;10&#x27; and offset to &#x27;10&#x27;.
  realtime: boolean, Legacy field: not used anymore.
  select: string, The select parameter contains a comma separated list of metrics. E.g. sum(message_count),sum(error_count)
  sort: string, This parameter specifies if the sort order should be ascending or descending Supported values are DESC and ASC.
  sortby: string, Comma separated list of columns to sort the final result.
  timeRange: string, Time interval for the interactive query. Time range is specified as start~end E.g. 04/15/2017 00:00~05/15/2017 23:59
  timeUnit: string, A value of second, minute, hour, day, week, month. Time Unit specifies the granularity of metrics returned.
  topk: string, Take &#x27;top k&#x27; results from results, for example, to return the top 5 results &#x27;topk=5&#x27;.
  tsAscending: boolean, Lists timestamps in ascending order if set to true. Recommend setting this value to true if you are using sortby with sort=DESC.
  tzo: string, This parameters contains the timezone offset value.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This message type encapsulates a stats response.
  &quot;environments&quot;: [ # This field contains a list of query results on environment level.
    { # This message type encapsulates the environment wrapper: &quot;environments&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.52056245E8&quot; ] } ], &quot;name&quot;: &quot;prod&quot; } ]
      &quot;dimensions&quot;: [ # This field contains the list of metrics grouped under dimensions.
        { # This message type encapsulates a metric grouped by dimension.
          &quot;metrics&quot;: [ # This field contains a list of metrics.
            { # This message type encapsulates the metric data point. Example: { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [ { &quot;timestamp&quot;: 1549004400000, &quot;value&quot;: &quot;39.0&quot; }, { &quot;timestamp&quot; : 1548997200000, &quot;value&quot; : &quot;0.0&quot; } ] } or { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [&quot;39.0&quot;] }
              &quot;name&quot;: &quot;A String&quot;, # This field contains the metric name.
              &quot;values&quot;: [ # List of metric values. Possible value format: &quot;values&quot;:[&quot;39.0&quot;] or &quot;values&quot;:[ { &quot;value&quot;: &quot;39.0&quot;, &quot;timestamp&quot;: 1232434354} ]
                &quot;&quot;,
              ],
            },
          ],
          &quot;name&quot;: &quot;A String&quot;, # This field contains the name of the dimension.
        },
      ],
      &quot;metrics&quot;: [ # In the final response, only one of the following fields will be present based on the dimensions provided. If no dimensions are provided, then only a top level metrics is provided. If dimensions are included, then there will be a top level dimensions field under environments which will contain metrics values and the dimension name. Example: &quot;environments&quot;: [ { &quot;dimensions&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.14049521E8&quot; ] } ], &quot;name&quot;: &quot;nit_proxy&quot; } ], &quot;name&quot;: &quot;prod&quot; } ] OR &quot;environments&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.19026331E8&quot; ] } ], &quot;name&quot;: &quot;prod&quot; } ] This field contains the list of metric values.
        { # This message type encapsulates the metric data point. Example: { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [ { &quot;timestamp&quot;: 1549004400000, &quot;value&quot;: &quot;39.0&quot; }, { &quot;timestamp&quot; : 1548997200000, &quot;value&quot; : &quot;0.0&quot; } ] } or { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [&quot;39.0&quot;] }
          &quot;name&quot;: &quot;A String&quot;, # This field contains the metric name.
          &quot;values&quot;: [ # List of metric values. Possible value format: &quot;values&quot;:[&quot;39.0&quot;] or &quot;values&quot;:[ { &quot;value&quot;: &quot;39.0&quot;, &quot;timestamp&quot;: 1232434354} ]
            &quot;&quot;,
          ],
        },
      ],
      &quot;name&quot;: &quot;A String&quot;,
    },
  ],
  &quot;hosts&quot;: [ # This field contains a list of query results grouped by host.
    { # This message type encapsulates the hostname wrapper: &quot;hosts&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.52056245E8&quot; ] } ], &quot;name&quot;: &quot;example.com&quot; } ]
      &quot;dimensions&quot;: [ # This field contains the list of metrics grouped under dimensions.
        { # This message type encapsulates a metric grouped by dimension.
          &quot;metrics&quot;: [ # This field contains a list of metrics.
            { # This message type encapsulates the metric data point. Example: { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [ { &quot;timestamp&quot;: 1549004400000, &quot;value&quot;: &quot;39.0&quot; }, { &quot;timestamp&quot; : 1548997200000, &quot;value&quot; : &quot;0.0&quot; } ] } or { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [&quot;39.0&quot;] }
              &quot;name&quot;: &quot;A String&quot;, # This field contains the metric name.
              &quot;values&quot;: [ # List of metric values. Possible value format: &quot;values&quot;:[&quot;39.0&quot;] or &quot;values&quot;:[ { &quot;value&quot;: &quot;39.0&quot;, &quot;timestamp&quot;: 1232434354} ]
                &quot;&quot;,
              ],
            },
          ],
          &quot;name&quot;: &quot;A String&quot;, # This field contains the name of the dimension.
        },
      ],
      &quot;metrics&quot;: [ # In the final response, only one of the following fields will be present based on the dimensions provided. If no dimensions are provided, then only a top level metrics is provided. If dimensions are included, then there will be a top level dimensions field under hostnames which will contain metrics values and the dimension name. Example: &quot;hosts&quot;: [ { &quot;dimensions&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.14049521E8&quot; ] } ], &quot;name&quot;: &quot;nit_proxy&quot; } ], &quot;name&quot;: &quot;example.com&quot; } ] OR &quot;hosts&quot;: [ { &quot;metrics&quot;: [ { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot;: [ &quot;2.19026331E8&quot; ] } ], &quot;name&quot;: &quot;example.com&quot; } ] This field contains the list of metric values.
        { # This message type encapsulates the metric data point. Example: { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [ { &quot;timestamp&quot;: 1549004400000, &quot;value&quot;: &quot;39.0&quot; }, { &quot;timestamp&quot; : 1548997200000, &quot;value&quot; : &quot;0.0&quot; } ] } or { &quot;name&quot;: &quot;sum(message_count)&quot;, &quot;values&quot; : [&quot;39.0&quot;] }
          &quot;name&quot;: &quot;A String&quot;, # This field contains the metric name.
          &quot;values&quot;: [ # List of metric values. Possible value format: &quot;values&quot;:[&quot;39.0&quot;] or &quot;values&quot;:[ { &quot;value&quot;: &quot;39.0&quot;, &quot;timestamp&quot;: 1232434354} ]
            &quot;&quot;,
          ],
        },
      ],
      &quot;name&quot;: &quot;A String&quot;, # This field contains the hostname used in query.
    },
  ],
  &quot;metaData&quot;: { # This message type encapsulates additional information about query execution. # This field contains the metadata information.
    &quot;errors&quot;: [ # List of error messages as strings.
      &quot;A String&quot;,
    ],
    &quot;notices&quot;: [ # List of additional information such as data source, if result was truncated etc. E.g &quot;notices&quot;: [ &quot;Source:Postgres&quot;, &quot;PG Host:uappg0rw.e2e.apigeeks.net&quot;, &quot;query served by:4b64601e-40de-4eb1-bfb9-eeee7ac929ed&quot;, &quot;Table used: edge.api.uapgroup2.agg_api&quot; ]
      &quot;A String&quot;,
    ],
  },
}</pre>
</div>

</body></html>