Skip to content

Commit

Permalink
Add all server config properties for config.md file (#3591)
Browse files Browse the repository at this point in the history
  • Loading branch information
AntoxaAntoxic authored Dec 10, 2024
1 parent a75e924 commit 289fba7
Showing 1 changed file with 90 additions and 5 deletions.
95 changes: 90 additions & 5 deletions docs/config-app.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,17 @@ This parameter exists to allow to change the location of the directory Vert.x wi
- `server.ssl` - enable SSL/TLS support.
- `server.jks-path` - path to the java keystore (if ssl is enabled).
- `server.jks-password` - password for the keystore (if ssl is enabled).
- `server.cpu-load-monitoring.measurement-interval-ms` - the CPU load monitoring interval (milliseconds)

## HTTP Server
- `server.max-headers-size` - set the maximum length of all headers, deprecated(use server.max-headers-size instead).
- `server.ssl` - enable SSL/TLS support, deprecated(use server.ssl instead).
- `server.jks-path` - path to the java keystore (if ssl is enabled), deprecated(use server.jks-path instead).
- `server.jks-password` - password for the keystore (if ssl is enabled), deprecated(use server.jks-password instead).
- `server.max-initial-line-length` - set the maximum length of the initial line
- `server.idle-timeout` - set the maximum time idle connections could exist before being reaped
- `server.enable-quickack` - enables the TCP_QUICKACK option - only with linux native transport.
- `server.enable-reuseport` - set the value of reuse port
- `server.http.server-instances` - how many http server instances should be created.
This parameter affects how many CPU cores will be utilized by the application. Rough assumption - one http server instance will keep 1 CPU core busy.
- `server.http.enabled` - if set to `true` enables http server
Expand Down Expand Up @@ -107,11 +112,11 @@ Removes and downloads file again if depending service cant process probably corr
- `auction.timeout-notification.log-sampling-rate` - instructs apply sampling when logging bidder timeout notification results

## Video
- `auction.video.stored-required` - flag forces to merge with stored request
- `auction.blocklisted-accounts` - comma separated list of blocklisted account IDs.
- `video.stored-request-required` - flag forces to merge with stored request
- `video.stored-requests-timeout-ms` - timeout for stored requests fetching.
- `auction.ad-server-currency` - default currency for video auction, if its value was not specified in request. Important note: PBS uses ISO-4217 codes for the representation of currencies.
- `auction.blocklisted-accounts` - comma separated list of blocklisted account IDs.
- `auction.video.escape-log-cache-regex` - regex to remove from cache debug log xml.
- `auction.ad-server-currency` - default currency for video auction, if its value was not specified in request. Important note: PBS uses ISO-4217 codes for the representation of currencies.

## Setuid
- `setuid.default-timeout-ms` - default operation timeout for requests to `/setuid` endpoint.
Expand All @@ -126,6 +131,7 @@ Removes and downloads file again if depending service cant process probably corr
## Vtrack
- `vtrack.allow-unknown-bidder` - flag that allows servicing requests with bidders who were not configured in Prebid Server.
- `vtrack.modify-vast-for-unknown-bidder` - flag that allows modifying the VAST value and adding the impression tag to it, for bidders who were not configured in Prebid Server.
- `vtrack.default-timeout-ms` - a default timeout in ms for the vtrack request

## Adapters
- `adapters.*` - the section for bidder specific configuration options.
Expand Down Expand Up @@ -160,9 +166,8 @@ Also, each bidder could have its own bidder-specific options.

## Logging
- `logging.http-interaction.max-limit` - maximum value for the number of interactions to log in one take.

## Logging
- `logging.change-level.max-duration-ms` - maximum duration (in milliseconds) for which logging level could be changed.
- `logging.sampling-rate` - a percentage of messages that are logged

## Currency Converter
- `currency-converter.external-rates.enabled` - if equals to `true` the currency conversion service will be enabled to fetch updated rates and convert bid currencies from external source. Also enables `/currency-rates` endpoint on admin port.
Expand Down Expand Up @@ -213,6 +218,11 @@ Also, each bidder could have its own bidder-specific options.
- `admin-endpoints.collected-metrics.on-application-port` - when equals to `false` endpoint will be bound to `admin.port`.
- `admin-endpoints.collected-metrics.protected` - when equals to `true` endpoint will be protected by basic authentication configured in `admin-endpoints.credentials`

- `admin-endpoints.logging-changelevel.enabled` - if equals to `true` the endpoint will be available.
- `admin-endpoints.logging-changelevel.path` - the server context path where the endpoint will be accessible
- `admin-endpoints.logging-changelevel.on-application-port` - when equals to `false` endpoint will be bound to `admin.port`.
- `admin-endpoints.logging-changelevel.protected` - when equals to `true` endpoint will be protected by basic authentication configured in `admin-endpoints.credentials`

- `admin-endpoints.credentials` - user and password for access to admin endpoints if `admin-endpoints.[NAME].protected` is true`.

## Metrics
Expand Down Expand Up @@ -264,6 +274,9 @@ See [metrics documentation](metrics.md) for complete list of metrics submitted a
- `metrics.accounts.basic-verbosity` - a list of accounts for which only basic metrics will be submitted.
- `metrics.accounts.detailed-verbosity` - a list of accounts for which all metrics will be submitted.

For `JVM` metrics
- `metrics.jmx.enabled` - if equals to `true` then `jvm.gc` and `jvm.memory` metrics will be submitted

## Cache
- `cache.scheme` - set the external Cache Service protocol: `http`, `https`, etc.
- `cache.host` - set the external Cache Service destination in format `host:port`.
Expand Down Expand Up @@ -367,6 +380,19 @@ contain 'WHERE last_updated > ?' for MySQL and 'WHERE last_updated > $1' for Pos
- `settings.in-memory-cache.database-update.refresh-rate` - refresh period in ms for stored request updates.
- `settings.in-memory-cache.database-update.timeout` - timeout for obtaining stored request updates.

For S3 storage configuration
- `settings.in-memory-cache.s3-update.refresh-rate` - refresh period in ms for stored request updates in S3
- `settings.s3.access-key-id` - an access key
- `settings.s3.secret-access-key` - a secret access key
- `settings.s3.region` - a region, AWS_GLOBAL by default
- `settings.s3.endpoint` - an endpoint
- `settings.s3.bucket` - a bucket name
- `settings.s3.force-path-style` - forces the S3 client to use path-style addressing for buckets.
- `settings.s3.accounts-dir` - a directory with stored accounts
- `settings.s3.stored-imps-dir` - a directory with stored imps
- `settings.s3.stored-requests-dir` - a directory with stored requests
- `settings.s3.stored-responses-dir` - a directory with stored responses

For targeting available next options:
- `settings.targeting.truncate-attr-chars` - set the max length for names of targeting keywords (0 means no truncation).

Expand Down Expand Up @@ -399,6 +425,7 @@ If not defined in config all other Health Checkers would be disabled and endpoin
- `gdpr.eea-countries` - comma separated list of countries in European Economic Area (EEA).
- `gdpr.default-value` - determines GDPR in scope default value (if no information in request and no geolocation data).
- `gdpr.host-vendor-id` - the organization running a cluster of Prebid Servers.
- `datacenter-region` - the datacenter region of a cluster of Prebid Servers
- `gdpr.enabled` - gdpr feature switch. Default `true`.
- `gdpr.purposes.pN.enforce-purpose` - define type of enforcement confirmation: `no`/`basic`/`full`. Default `full`
- `gdpr.purposes.pN.enforce-vendors` - if equals to `true`, user must give consent to use vendors. Purposes will be omitted. Default `true`
Expand Down Expand Up @@ -428,9 +455,30 @@ If not defined in config all other Health Checkers would be disabled and endpoin
- `geolocation.type` - set the geo location service provider, can be `maxmind` or custom provided by hosting company.
- `geolocation.maxmind` - section for [MaxMind](https://www.maxmind.com) configuration as geo location service provider.
- `geolocation.maxmind.remote-file-syncer` - use RemoteFileSyncer component for downloading/updating MaxMind database file. See [RemoteFileSyncer](#remote-file-syncer) section for its configuration.
- `geolocation.configurations[]` - a list of geo-lookup configurations for the `configuration` `geolocation.type`
- `geolocation.configurations[].address-pattern` - an address pattern for matching an IP to look up
- `geolocation.configurations[].geo-info.continent` - a continent to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.country` - a country to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.region` - a region to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.region-code` - a region code to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.city` - a city to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.metro-google` - a metro Google to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.metro-nielsen` - a metro Nielsen to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.zip` - a zip to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.connection-speed` - a connection-speed to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.lat` - a lat to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.lon` - a lon to return on the `configuration` geo-lookup
- `geolocation.configurations[].geo-info.time-zone` - a time zone to return on the `configuration` geo-lookup

## IPv6
- `ipv6.always-mask-right` - a bit mask for masking an IPv6 address of the device
- `ipv6.anon-left-mask-bits` - a bit mask for anonymizing an IPv6 address of the device
- `ipv6.private-networks` - a list of known private/local networks to skip masking of an IP address of the device

## Analytics
- `analytics.global.adapters` - Names of analytics adapters that will work for each request, except those disabled at the account level.

For the `pubstack` analytics adapter
- `analytics.pubstack.enabled` - if equals to `true` the Pubstack analytics module will be enabled. Default value is `false`.
- `analytics.pubstack.endpoint` - url for reporting events and fetching configuration.
- `analytics.pubstack.scopeid` - defined the scope provided by the Pubstack Support Team.
Expand All @@ -440,6 +488,26 @@ If not defined in config all other Health Checkers would be disabled and endpoin
- `analytics.pubstack.buffers.count` - threshold in events count for buffer to send events
- `analytics.pubstack.buffers.report-ttl-ms` - max period between two reports.

For the `greenbids` analytics adapter
- `analytics.greenbids.enabled` - if equals to `true` the Greenbids analytics module will be enabled. Default value is `false`.
- `analytics.greenbids.analytics-server-version` - a server version to add to the event
- `analytics.greenbids.analytics-server` - url for reporting events
- `analytics.greenbids.timeout-ms` - timeout in milliseconds for report requests.
- `analytics.greenbids.exploratory-sampling-split` - a sampling rate for report requests
- `analytics.greenbids.default-sampling-rate` - a default sampling rate for report requests

For the `agma` analytics adapter
- `analytics.agma.enabled` - if equals to `true` the Agma analytics module will be enabled. Default value is `false`.
- `analytics.agma.endpoint.url` - url for reporting events
- `analytics.agma.endpoint.timeout-ms` - timeout in milliseconds for report requests.
- `analytics.agma.endpoint.gzip` - if equals to `true` the Agma analytics module enables gzip encoding. Default value is `false`.
- `analytics.agma.buffers.size-bytes` - threshold in bytes for buffer to send events.
- `analytics.agma.buffers.count` - threshold in events count for buffer to send events.
- `analytics.agma.buffers.timeout-ms` - max period between two reports.
- `analytics.agma.accounts[].code` - an account code to send with an event
- `analytics.agma.accounts[].publisher-id` - a publisher id to match an event to send
- `analytics.agma.accounts[].site-app-id` - a site or app id to match an event to send

## Modules
- `hooks.admin.module-execution` - a key-value map, where a key is a module name and a value is a boolean, that defines whether modules hooks should/should not be always executed; if the module is not specified it is executed by default when it's present in the execution plan
- `settings.modules.require-config-to-invoke` - when enabled it requires a runtime config to exist for a module.
Expand All @@ -450,3 +518,20 @@ If not defined in config all other Health Checkers would be disabled and endpoin
To override (force enable) account and/or bidder adapter debug setting, a client must include `x-pbs-debug-override`
HTTP header in the auction call containing same token as in the `debug.override-token` property. This will make Prebid
Server ignore account `auction.debug-allow` and/or `adapters.<BIDDER_NAME>.debug.allow` properties.

## Privacy Sandbox
- `auction.privacysandbox.topicsdomain` - the list of Sec-Browsing-Topics for the Privacy Sandbox

## AMP
- `amp.custom-targeting` - a list of bidders that support custom targeting

## Hooks
- `hooks.host-execution-plan` - a host execution plan for modules
- `hooks.default-account-execution-plan` - a default account execution plan

## Price Floors Debug
- `price-floors.enabled` - enables price floors for account if true. Defaults to true.
- `price-floors.min-max-age-sec` - a price floors fetch data time to live in cache.
- `price-floors.min-period-sec` - a refresh period for fetching price floors data.
- `price-floors.min-timeout-ms` - a min timeout in ms for fetching price floors data.
- `price-floors.max-timeout-ms` - a max timeout in ms for fetching price floors data.

0 comments on commit 289fba7

Please sign in to comment.