All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
All Known Implementing Classes:
Geoip, Geoip.Builder

public interface GeoipOrBuilder extends com.google.protobuf.MessageOrBuilder
  • Method Summary

    Modifier and Type
    Method
    Description
    Configuration for dynamically extracting the client IP address used for geolocation lookups.
    com.google.protobuf.ByteString
    Configuration for dynamically extracting the client IP address used for geolocation lookups.
    Geoip driver specific configuration which depends on the driver being instantiated.
    Geoip driver specific configuration which depends on the driver being instantiated.
    The prefix to use when emitting statistics.
    com.google.protobuf.ByteString
    The prefix to use when emitting statistics.
    boolean
    Geoip driver specific configuration which depends on the driver being instantiated.

    Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

    isInitialized

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • Method Details

    • getStatPrefix

      String getStatPrefix()
       The prefix to use when emitting statistics. This is useful when there are multiple
       listeners configured with geoip filters, allowing stats to be grouped per listener.
       For example, with ``stat_prefix: "listener_1."``, stats would be emitted as
       ``listener_1.geoip.total``.
       
      string stat_prefix = 1;
      Returns:
      The statPrefix.
    • getStatPrefixBytes

      com.google.protobuf.ByteString getStatPrefixBytes()
       The prefix to use when emitting statistics. This is useful when there are multiple
       listeners configured with geoip filters, allowing stats to be grouped per listener.
       For example, with ``stat_prefix: "listener_1."``, stats would be emitted as
       ``listener_1.geoip.total``.
       
      string stat_prefix = 1;
      Returns:
      The bytes for statPrefix.
    • hasProvider

      boolean hasProvider()
       Geoip driver specific configuration which depends on the driver being instantiated.
       [#extension-category: envoy.geoip_providers]
       
      .envoy.config.core.v3.TypedExtensionConfig provider = 2 [(.validate.rules) = { ... }
      Returns:
      Whether the provider field is set.
    • getProvider

      TypedExtensionConfig getProvider()
       Geoip driver specific configuration which depends on the driver being instantiated.
       [#extension-category: envoy.geoip_providers]
       
      .envoy.config.core.v3.TypedExtensionConfig provider = 2 [(.validate.rules) = { ... }
      Returns:
      The provider.
    • getProviderOrBuilder

      TypedExtensionConfigOrBuilder getProviderOrBuilder()
       Geoip driver specific configuration which depends on the driver being instantiated.
       [#extension-category: envoy.geoip_providers]
       
      .envoy.config.core.v3.TypedExtensionConfig provider = 2 [(.validate.rules) = { ... }
    • getClientIp

      String getClientIp()
       Configuration for dynamically extracting the client IP address used for geolocation lookups.
      
       This field accepts the same :ref:`format specifiers <config_access_log_format>` as used for
       :ref:`HTTP access logging <config_access_log>` to extract the client IP.
       The formatted result must be a valid IPv4 or IPv6 address string. For example:
      
       * ``%FILTER_STATE(my.custom.client.ip:PLAIN)%`` - Read from filter state populated by a preceding filter.
       * ``%DYNAMIC_METADATA(namespace:key)%`` - Read from dynamic metadata.
       * ``%REQ(X-Forwarded-For)%`` - Extract from request header (if applicable in context).
      
       If not specified, defaults to the downstream connection's remote address.
       If specified but the result is empty, ``-``, or not a valid IP address, the filter
       falls back to the downstream connection's remote address.
      
       Example reading from filter state:
      
       .. code-block:: yaml
      
         client_ip: "%FILTER_STATE(my.custom.client.ip:PLAIN)%"
       
      string client_ip = 3;
      Returns:
      The clientIp.
    • getClientIpBytes

      com.google.protobuf.ByteString getClientIpBytes()
       Configuration for dynamically extracting the client IP address used for geolocation lookups.
      
       This field accepts the same :ref:`format specifiers <config_access_log_format>` as used for
       :ref:`HTTP access logging <config_access_log>` to extract the client IP.
       The formatted result must be a valid IPv4 or IPv6 address string. For example:
      
       * ``%FILTER_STATE(my.custom.client.ip:PLAIN)%`` - Read from filter state populated by a preceding filter.
       * ``%DYNAMIC_METADATA(namespace:key)%`` - Read from dynamic metadata.
       * ``%REQ(X-Forwarded-For)%`` - Extract from request header (if applicable in context).
      
       If not specified, defaults to the downstream connection's remote address.
       If specified but the result is empty, ``-``, or not a valid IP address, the filter
       falls back to the downstream connection's remote address.
      
       Example reading from filter state:
      
       .. code-block:: yaml
      
         client_ip: "%FILTER_STATE(my.custom.client.ip:PLAIN)%"
       
      string client_ip = 3;
      Returns:
      The bytes for clientIp.