Escaper

The type for each escaper config is map, with two always required keys:

  • name, which specify the name of the escaper.

  • type, which specify the real type of the escaper, decides how to parse other keys.

There are many types of escaper, each with a section below.

Escapers

Common Keys

This section describes the common keys, they may be used by many escapers.

name

required, type: metric node name

Set the name of the escaper.

type

required, type: str

Set the type of the escaper.

shared_logger

optional, type: ascii

Set the escaper to use a logger running on a shared thread.

default: not set

resolver

type: metric node name

Set the resolver to use for this escaper.

If the specified resolver doesn’t exist in configure, a default DenyAll resolver will be used.

resolve_strategy

optional, type: resolve strategy

Set the resolve strategy.

tcp_sock_speed_limit

optional, type: tcp socket speed limit

Set speed limit for each tcp socket.

default: no limit

tcp_conn_speed_limit

deprecated

Changed in version 1.11.8: deprecated, use tcp_sock_speed_limit instead

tcp_conn_limit

deprecated

Changed in version 1.11.8: deprecated, use tcp_sock_speed_limit instead

conn_limit

deprecated

Changed in version 1.11.8: deprecated, use tcp_sock_speed_limit instead

udp_sock_speed_limit

optional, type: udp socket speed limit

Set speed limit for each udp socket.

default: no limit

udp_relay_speed_limit

deprecated

Changed in version 1.11.8: deprecated, use udp_sock_speed_limit instead

udp_relay_limit

deprecated

Changed in version 1.11.8: deprecated, use udp_sock_speed_limit instead

relay_limit

deprecated

Changed in version 1.11.8: deprecated, use udp_sock_speed_limit instead

bind_interface

optional: type: interface name

Bind the outgoing socket to a particular device like “eth0”.

default: not set

Added in version 1.9.9.

no_ipv4

optional, type: bool

Disable IPv4. This setting should be compatible with resolve_strategy.

default: false

no_ipv6

optional, type: bool

Disable IPv6. This setting should be compatible with resolve_strategy.

default: false

tcp_connect

optional, type: tcp connect

Set tcp connect params.

Note

For direct type escapers, the user level tcp connect params will be taken to limit the final value.

happy_eyeballs

optional, type: happy eyeballs

Set the HappyEyeballs config.

default: default HappyEyeballs config

tcp_misc_opts

optional, type: tcp misc sock opts

Set misc tcp socket options.

default: not set, nodelay is default enabled

udp_misc_opts

optional, type: udp misc sock opts

Set misc udp socket options.

default: not set

default_next

required, type: str

Set the default next escaper for route type escapers.

pass_proxy_userid

optional, type: bool

Set if we should pass userid (username) to next proxy.

If set, the native basic auth method will be used when negotiation with next proxy, and the username field will be set to the real username, the password field set to our package name (g3proxy if not forked).

default: false

Note

This will conflict with the real auth of next proxy.

peer_negotiation_timeout

optional, type: humanize duration

Set the negotiation timeout for next proxy peers.

default: 10s

extra_metrics_tags

optional, type: static metrics tags

Set extra metrics tags that should be added to escaper stats and user stats already with escaper tags added.

default: not set