.. _envoy_api_file_envoy/type/percent.proto:

Percent
=======


.. _envoy_api_msg_type.Percent:

type.Percent
------------

`[type.Percent proto] <https://github.com/envoyproxy/envoy/blob/master/api/envoy/type/percent.proto#L12>`_

Identifies a percentage, in the range [0.0, 100.0].

.. code-block:: json

  {
    "value": "..."
  }

.. _envoy_api_field_type.Percent.value:

value
  (`double <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) 
  


.. _envoy_api_msg_type.FractionalPercent:

type.FractionalPercent
----------------------

`[type.FractionalPercent proto] <https://github.com/envoyproxy/envoy/blob/master/api/envoy/type/percent.proto#L22>`_

A fractional percentage is used in cases in which for performance reasons performing floating
point to integer conversions during randomness calculations is undesirable. The message includes
both a numerator and denominator that together determine the final fractional value.

* **Example**: 1/100 = 1%.
* **Example**: 3/10000 = 0.03%.

.. code-block:: json

  {
    "numerator": "...",
    "denominator": "..."
  }

.. _envoy_api_field_type.FractionalPercent.numerator:

numerator
  (`uint32 <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) Specifies the numerator. Defaults to 0.
  
  
.. _envoy_api_field_type.FractionalPercent.denominator:

denominator
  (:ref:`type.FractionalPercent.DenominatorType <envoy_api_enum_type.FractionalPercent.DenominatorType>`) Specifies the denominator. If the denominator specified is less than the numerator, the final
  fractional percentage is capped at 1 (100%).
  
  

.. _envoy_api_enum_type.FractionalPercent.DenominatorType:

Enum type.FractionalPercent.DenominatorType
-------------------------------------------

`[type.FractionalPercent.DenominatorType proto] <https://github.com/envoyproxy/envoy/blob/master/api/envoy/type/percent.proto#L27>`_

Fraction percentages support several fixed denominator values.

.. _envoy_api_enum_value_type.FractionalPercent.DenominatorType.HUNDRED:

HUNDRED
  *(DEFAULT)* ⁣100.
  
  **Example**: 1/100 = 1%.
  
  
.. _envoy_api_enum_value_type.FractionalPercent.DenominatorType.TEN_THOUSAND:

TEN_THOUSAND
  ⁣10,000.
  
  **Example**: 1/10000 = 0.01%.
  
  
.. _envoy_api_enum_value_type.FractionalPercent.DenominatorType.MILLION:

MILLION
  ⁣1,000,000.
  
  **Example**: 1/1000000 = 0.0001%.