"Fossies" - the Fresh Open Source Software Archive

Member "istio-1.6.5/mixer/adapter/prometheus/config/adapter.prometheus.config.pb.html" (8 Jul 2020, 12355 Bytes) of package /linux/misc/istio-1.6.5.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) HTML source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 ---
    2 title: Prometheus
    3 description: Adapter that exposes Istio metrics for ingestion by a Prometheus harvester.
    4 location: https://istio.io/docs/reference/config/policy-and-telemetry/adapters/prometheus.html
    5 layout: protoc-gen-docs
    6 generator: protoc-gen-docs
    7 supported_templates: metric
    8 aliases:
    9   - /docs/reference/config/adapters/prometheus.html
   10 number_of_entries: 8
   11 ---
   12 <p>The <code>prometheus</code> adapter collects Istio metrics and makes them available to
   13 <a href="https://prometheus.io">Prometheus</a>.</p>
   14 
   15 <p>This adapter supports the <a href="https://istio.io/docs/reference/config/policy-and-telemetry/templates/metric/">metric template</a>.</p>
   16 
   17 <h2 id="Params">Params</h2>
   18 <section>
   19 <p>Configuration format for the <code>prometheus</code> adapter.</p>
   20 
   21 <table class="message-fields">
   22 <thead>
   23 <tr>
   24 <th>Field</th>
   25 <th>Type</th>
   26 <th>Description</th>
   27 <th>Required</th>
   28 </tr>
   29 </thead>
   30 <tbody>
   31 <tr id="Params-metrics">
   32 <td><code>metrics</code></td>
   33 <td><code><a href="#Params-MetricInfo">MetricInfo[]</a></code></td>
   34 <td>
   35 <p>The set of metrics to represent in Prometheus. If a metric is defined in Istio but doesn&rsquo;t have a corresponding
   36 shape here, it will not be populated at runtime.</p>
   37 
   38 </td>
   39 <td>
   40 No
   41 </td>
   42 </tr>
   43 <tr id="Params-metrics_expiration_policy">
   44 <td><code>metricsExpirationPolicy</code></td>
   45 <td><code><a href="#Params-MetricsExpirationPolicy">MetricsExpirationPolicy</a></code></td>
   46 <td>
   47 <p>Optional. The rate at which to expire metrics from the adapter. This option controls the amount of metric data
   48 that the adapter will maintain over its lifetime.</p>
   49 
   50 <p>EXPERIMENTAL: This feature should only be used in advanced cases.</p>
   51 
   52 <p>Example config stanza:</p>
   53 
   54 <pre><code class="language-yaml">metricsExpirationPolicy:
   55   metricsExpiryDuration: &quot;5s&quot;
   56   expiryCheckIntervalDuration: &quot;1s&quot;
   57 </code></pre>
   58 
   59 </td>
   60 <td>
   61 No
   62 </td>
   63 </tr>
   64 </tbody>
   65 </table>
   66 </section>
   67 <h2 id="Params-MetricInfo">Params.MetricInfo</h2>
   68 <section>
   69 <p>Describes how a metric should be represented in Prometheus.</p>
   70 
   71 <table class="message-fields">
   72 <thead>
   73 <tr>
   74 <th>Field</th>
   75 <th>Type</th>
   76 <th>Description</th>
   77 <th>Required</th>
   78 </tr>
   79 </thead>
   80 <tbody>
   81 <tr id="Params-MetricInfo-namespace">
   82 <td><code>namespace</code></td>
   83 <td><code>string</code></td>
   84 <td>
   85 <p>Optional. The namespace is used as a prefix on the metric names.
   86 An example: for a metric named <code>requests_total</code> with a namespace of <code>istio</code>,
   87 the full metric name becomes <code>istio_requests_total</code>.
   88 NOTE: The specified namespace should be a prometheus-safe name. If not, the adapter
   89 will attempt to convert the namespace to a prometheus-safe name.
   90 NOTE: Changing the value for this will potentially impact downstream integrations
   91 and should be used with caution.
   92 Default value: <code>istio</code>.</p>
   93 
   94 </td>
   95 <td>
   96 No
   97 </td>
   98 </tr>
   99 <tr id="Params-MetricInfo-name">
  100 <td><code>name</code></td>
  101 <td><code>string</code></td>
  102 <td>
  103 <p>Recommended. The name is used to register the prometheus metric.
  104 It must be unique across all prometheus metrics as prometheus does not allow duplicate names.
  105 If name is not specified a sanitized version of instance_name is used.</p>
  106 
  107 </td>
  108 <td>
  109 No
  110 </td>
  111 </tr>
  112 <tr id="Params-MetricInfo-instance_name">
  113 <td><code>instanceName</code></td>
  114 <td><code>string</code></td>
  115 <td>
  116 <p>Required. The name is the fully qualified name of the Istio metric instance
  117 that this MetricInfo processes.</p>
  118 
  119 </td>
  120 <td>
  121 No
  122 </td>
  123 </tr>
  124 <tr id="Params-MetricInfo-description">
  125 <td><code>description</code></td>
  126 <td><code>string</code></td>
  127 <td>
  128 <p>Optional. A human readable description of this metric.</p>
  129 
  130 </td>
  131 <td>
  132 No
  133 </td>
  134 </tr>
  135 <tr id="Params-MetricInfo-kind">
  136 <td><code>kind</code></td>
  137 <td><code><a href="#Params-MetricInfo-Kind">Kind</a></code></td>
  138 <td>
  139 </td>
  140 <td>
  141 No
  142 </td>
  143 </tr>
  144 <tr id="Params-MetricInfo-buckets">
  145 <td><code>buckets</code></td>
  146 <td><code><a href="#Params-MetricInfo-BucketsDefinition">BucketsDefinition</a></code></td>
  147 <td>
  148 <p>For metrics with a metric kind of DISTRIBUTION, this provides a mechanism
  149 for configuring the buckets that will be used to store the aggregated values.
  150 This field must be provided for metrics declared to be of type DISTRIBUTION.
  151 This field will be ignored for non-distribution metric kinds.</p>
  152 
  153 </td>
  154 <td>
  155 No
  156 </td>
  157 </tr>
  158 <tr id="Params-MetricInfo-label_names">
  159 <td><code>labelNames</code></td>
  160 <td><code>string[]</code></td>
  161 <td>
  162 <p>The names of labels to use: these need to match the dimensions of the Istio metric.
  163 TODO: see if we can remove this and rely on only the dimensions in the future.</p>
  164 
  165 </td>
  166 <td>
  167 No
  168 </td>
  169 </tr>
  170 </tbody>
  171 </table>
  172 </section>
  173 <h2 id="Params-MetricsExpirationPolicy">Params.MetricsExpirationPolicy</h2>
  174 <section>
  175 <p>Describes the expiration policy for metrics generated by a prometheus handler.</p>
  176 
  177 <p>Example: A Metrics Expiration Policy of <code>{ metrics_expiry_duration: &quot;10m&quot;, expiry_check_interval_duration: &quot;1m&quot; }</code>
  178 would configure the handler to delete all metrics that have received no updtaes for 10 minutes. Metrics would be checked
  179 every minute to determine whether or not they should be expired.</p>
  180 
  181 <table class="message-fields">
  182 <thead>
  183 <tr>
  184 <th>Field</th>
  185 <th>Type</th>
  186 <th>Description</th>
  187 <th>Required</th>
  188 </tr>
  189 </thead>
  190 <tbody>
  191 <tr id="Params-MetricsExpirationPolicy-metrics_expiry_duration">
  192 <td><code>metricsExpiryDuration</code></td>
  193 <td><code><a href="https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration">Duration</a></code></td>
  194 <td>
  195 <p>Required. Describes the desired lifetime of a metric. If the metric is not updated at any point during this duration, it
  196 will be removed from the set of metrics exported by the handler.</p>
  197 
  198 </td>
  199 <td>
  200 No
  201 </td>
  202 </tr>
  203 <tr id="Params-MetricsExpirationPolicy-expiry_check_interval_duration">
  204 <td><code>expiryCheckIntervalDuration</code></td>
  205 <td><code><a href="https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration">Duration</a></code></td>
  206 <td>
  207 <p>Optional. Describes the interval in which metrics will be checked to see if they have been stale for longer that the configured
  208 <code>metrics_expiry_duration</code>. This should be generally be set to a duration much shorter than the configured <code>metrics_expiry_duration</code>.
  209 This bounds the total amount of additional time (beyond the desired lifetime) that a metric may be exported.
  210 If a value is not explicitly provided, this value will default to half of the configured <code>metrics_expiry_duration</code>.</p>
  211 
  212 </td>
  213 <td>
  214 No
  215 </td>
  216 </tr>
  217 </tbody>
  218 </table>
  219 </section>
  220 <h2 id="Params-MetricInfo-BucketsDefinition">Params.MetricInfo.BucketsDefinition</h2>
  221 <section>
  222 <p>Describes buckets for DISTRIBUTION kind metrics.</p>
  223 
  224 <table class="message-fields">
  225 <thead>
  226 <tr>
  227 <th>Field</th>
  228 <th>Type</th>
  229 <th>Description</th>
  230 <th>Required</th>
  231 </tr>
  232 </thead>
  233 <tbody>
  234 <tr id="Params-MetricInfo-BucketsDefinition-linear_buckets" class="oneof oneof-start">
  235 <td><code>linearBuckets</code></td>
  236 <td><code><a href="#Params-MetricInfo-BucketsDefinition-Linear">Linear (oneof)</a></code></td>
  237 <td>
  238 <p>The linear buckets.</p>
  239 
  240 </td>
  241 <td>
  242 No
  243 </td>
  244 </tr>
  245 <tr id="Params-MetricInfo-BucketsDefinition-exponential_buckets" class="oneof">
  246 <td><code>exponentialBuckets</code></td>
  247 <td><code><a href="#Params-MetricInfo-BucketsDefinition-Exponential">Exponential (oneof)</a></code></td>
  248 <td>
  249 <p>The exponential buckets.</p>
  250 
  251 </td>
  252 <td>
  253 No
  254 </td>
  255 </tr>
  256 <tr id="Params-MetricInfo-BucketsDefinition-explicit_buckets" class="oneof">
  257 <td><code>explicitBuckets</code></td>
  258 <td><code><a href="#Params-MetricInfo-BucketsDefinition-Explicit">Explicit (oneof)</a></code></td>
  259 <td>
  260 <p>The explicit buckets.</p>
  261 
  262 </td>
  263 <td>
  264 No
  265 </td>
  266 </tr>
  267 </tbody>
  268 </table>
  269 </section>
  270 <h2 id="Params-MetricInfo-BucketsDefinition-Linear">Params.MetricInfo.BucketsDefinition.Linear</h2>
  271 <section>
  272 <p>Specifies a linear sequence of buckets that all have the same width
  273 (except overflow and underflow). Each bucket represents a constant
  274 absolute uncertainty on the specific value in the bucket.</p>
  275 
  276 <p>There are <code>num_finite_buckets + 2</code> (= <code>N</code>) buckets. The two additional
  277 buckets are the underflow and overflow buckets.</p>
  278 
  279 <p>Bucket <code>i</code> has the following boundaries:</p>
  280 
  281 <ul>
  282 <li>Upper bound (<code>0 &lt;= i &lt; N-1</code>): <code>offset + (width * i)</code></li>
  283 <li>Lower bound (<code>1 &lt;= i &lt; N</code>): <code>offset + (width * (i - 1))</code></li>
  284 </ul>
  285 
  286 <table class="message-fields">
  287 <thead>
  288 <tr>
  289 <th>Field</th>
  290 <th>Type</th>
  291 <th>Description</th>
  292 <th>Required</th>
  293 </tr>
  294 </thead>
  295 <tbody>
  296 <tr id="Params-MetricInfo-BucketsDefinition-Linear-num_finite_buckets">
  297 <td><code>numFiniteBuckets</code></td>
  298 <td><code>int32</code></td>
  299 <td>
  300 <p>Must be greater than 0.</p>
  301 
  302 </td>
  303 <td>
  304 No
  305 </td>
  306 </tr>
  307 <tr id="Params-MetricInfo-BucketsDefinition-Linear-width">
  308 <td><code>width</code></td>
  309 <td><code>double</code></td>
  310 <td>
  311 <p>Must be greater than 0.</p>
  312 
  313 </td>
  314 <td>
  315 No
  316 </td>
  317 </tr>
  318 <tr id="Params-MetricInfo-BucketsDefinition-Linear-offset">
  319 <td><code>offset</code></td>
  320 <td><code>double</code></td>
  321 <td>
  322 <p>Lower bound of the first bucket.</p>
  323 
  324 </td>
  325 <td>
  326 No
  327 </td>
  328 </tr>
  329 </tbody>
  330 </table>
  331 </section>
  332 <h2 id="Params-MetricInfo-BucketsDefinition-Exponential">Params.MetricInfo.BucketsDefinition.Exponential</h2>
  333 <section>
  334 <p>Specifies an exponential sequence of buckets that have a width that is
  335 proportional to the value of the lower bound. Each bucket represents a
  336 constant relative uncertainty on a specific value in the bucket.</p>
  337 
  338 <p>There are <code>num_finite_buckets + 2</code> (= <code>N</code>) buckets. The two additional
  339 buckets are the underflow and overflow buckets.</p>
  340 
  341 <p>Bucket <code>i</code> has the following boundaries:</p>
  342 
  343 <ul>
  344 <li>Upper bound (0 &lt;= i &lt; N-1): <code>scale * (growth_factor ^ i)</code></li>
  345 <li>Lower bound (1 &lt;= i &lt; N): <code>scale * (growth_factor ^ (i - 1))</code></li>
  346 </ul>
  347 
  348 <table class="message-fields">
  349 <thead>
  350 <tr>
  351 <th>Field</th>
  352 <th>Type</th>
  353 <th>Description</th>
  354 <th>Required</th>
  355 </tr>
  356 </thead>
  357 <tbody>
  358 <tr id="Params-MetricInfo-BucketsDefinition-Exponential-num_finite_buckets">
  359 <td><code>numFiniteBuckets</code></td>
  360 <td><code>int32</code></td>
  361 <td>
  362 <p>Must be greater than 0.</p>
  363 
  364 </td>
  365 <td>
  366 No
  367 </td>
  368 </tr>
  369 <tr id="Params-MetricInfo-BucketsDefinition-Exponential-growth_factor">
  370 <td><code>growthFactor</code></td>
  371 <td><code>double</code></td>
  372 <td>
  373 <p>Must be greater than 1.</p>
  374 
  375 </td>
  376 <td>
  377 No
  378 </td>
  379 </tr>
  380 <tr id="Params-MetricInfo-BucketsDefinition-Exponential-scale">
  381 <td><code>scale</code></td>
  382 <td><code>double</code></td>
  383 <td>
  384 <p>Must be greater than 0.</p>
  385 
  386 </td>
  387 <td>
  388 No
  389 </td>
  390 </tr>
  391 </tbody>
  392 </table>
  393 </section>
  394 <h2 id="Params-MetricInfo-BucketsDefinition-Explicit">Params.MetricInfo.BucketsDefinition.Explicit</h2>
  395 <section>
  396 <p>Specifies a set of buckets with arbitrary widths.</p>
  397 
  398 <p>There are <code>size(bounds) + 1</code> (= <code>N</code>) buckets. Bucket <code>i</code> has the following
  399 boundaries:</p>
  400 
  401 <ul>
  402 <li>Upper bound (<code>0 &lt;= i &lt; N-1</code>): <code>bounds[i]</code></li>
  403 <li>Lower bound (<code>1 &lt;= i &lt; N</code>): <code>bounds[i - 1]</code></li>
  404 </ul>
  405 
  406 <p>The <code>bounds</code> field must contain at least one element. If <code>bounds</code> has
  407 only one element, then there are no finite buckets, and that single
  408 element is the common boundary of the overflow and underflow buckets.</p>
  409 
  410 <table class="message-fields">
  411 <thead>
  412 <tr>
  413 <th>Field</th>
  414 <th>Type</th>
  415 <th>Description</th>
  416 <th>Required</th>
  417 </tr>
  418 </thead>
  419 <tbody>
  420 <tr id="Params-MetricInfo-BucketsDefinition-Explicit-bounds">
  421 <td><code>bounds</code></td>
  422 <td><code>double[]</code></td>
  423 <td>
  424 <p>The values must be monotonically increasing.</p>
  425 
  426 </td>
  427 <td>
  428 No
  429 </td>
  430 </tr>
  431 </tbody>
  432 </table>
  433 </section>
  434 <h2 id="Params-MetricInfo-Kind">Params.MetricInfo.Kind</h2>
  435 <section>
  436 <p>Describes what kind of metric this is.</p>
  437 
  438 <table class="enum-values">
  439 <thead>
  440 <tr>
  441 <th>Name</th>
  442 <th>Description</th>
  443 </tr>
  444 </thead>
  445 <tbody>
  446 <tr id="Params-MetricInfo-Kind-UNSPECIFIED">
  447 <td><code>UNSPECIFIED</code></td>
  448 <td>
  449 </td>
  450 </tr>
  451 <tr id="Params-MetricInfo-Kind-GAUGE">
  452 <td><code>GAUGE</code></td>
  453 <td>
  454 </td>
  455 </tr>
  456 <tr id="Params-MetricInfo-Kind-COUNTER">
  457 <td><code>COUNTER</code></td>
  458 <td>
  459 </td>
  460 </tr>
  461 <tr id="Params-MetricInfo-Kind-DISTRIBUTION">
  462 <td><code>DISTRIBUTION</code></td>
  463 <td>
  464 </td>
  465 </tr>
  466 </tbody>
  467 </table>
  468 </section>