This document describes all metrics collected and submitted to configured backends by the Prebid Server.
Other available metrics not mentioned here can found at Vert.x Dropwizard Metrics page.
vertx.http.servers.[IP]:[PORT].open-netsockets.count
- current number of open connections
where:
[IP]
should be equal to IP address of bound network interface on cluster node for Prebid Server (for example:0.0.0.0
)[PORT]
should be equal toserver.http.port
configuration property
vertx.http.clients.connections.{min,max,mean,p95,p99}
- how long connections livevertx.http.clients.connections.{m1_rate,m5_rate,m15_rate,mean_rate}
- rate of the connection occurrencesvertx.http.clients.requests.{min,max,mean,p95,p99}
- request timevertx.http.clients.requests.{m1_rate,m5_rate,m15_rate,mean_rate}
- request rate
If HTTP client per destination endpoint metrics enabled:
vertx.http.clients.endpoint.[ENDPOINT]:[PORT].queue-delay.{min,max,mean,p95,p99}
- wait time of a pending request in the queuevertx.http.clients.endpoint.[ENDPOINT]:[PORT].queue-size.count
- actual queue sizevertx.http.clients.endpoint.[ENDPOINT]:[PORT].open-netsockets.count
- actual number of open sockets to the endpointvertx.http.clients.endpoint.[ENDPOINT]:[PORT].usage.{min,max,mean,p95,p99}
- time of the delay between the request starts and the response endsvertx.http.clients.endpoint.[ENDPOINT]:[PORT].in-use
- actual number of in-flight requestsvertx.http.clients.endpoint.[ENDPOINT]:[PORT].ttfb
- wait time between the request ended and its response begins
vertx.pools.datasouce.[DATASOURCE].queue-delay.{min,max,mean,p95,p99}
- duration of the delay to obtain the resource, i.e the wait time in the queuevertx.pools.datasouce.[DATASOURCE].queue-size.counter
- the actual number of waiters in the queuevertx.pools.datasouce.[DATASOURCE].usage.{min,max,mean,p95,p99}
- duration of the usage of the resourcevertx.pools.datasouce.[DATASOURCE].in-use.counter
- actual number of resources used
where [DATASOURCE]
is a data source name, DEFAULT_DS
by defaul.
app_requests
- number of requests received from applicationsno_cookie_requests
- number of requests withoutuids
cookie or with one that didn't contain at least one live UIDrequest_time
- timer tracking how long did it take for Prebid Server to serve a requestimps_requested
- number if impressions requestedimps_banner
- number of banner impressionsimps_video
- number of video impressionsimps_native
- number of native impressionsimps_audio
- number of audio impressionsrequests.(ok|badinput|err|networkerr|blocklisted_account|blocklisted_app).(openrtb2-web|openrtb-app|amp|legacy)
- number of requests broken down by status and typebidder-cardinality.<cardinality>.requests
- number of requests targeting<cardinality>
of biddersconnection_accept_errors
- number of errors occurred while establishing HTTP connectiondb_query_time
- timer tracking how long did it take for database client to obtain the result for a querystored_requests_found
- number of stored requests that were foundstored_requests_missing
- number of stored requests that were not found by provided stored request IDsstored_imps_found
- number of stored impressions that were foundstored_imps_missing
- number of stored impressions that were not found by provided stored impression IDsgeolocation_requests
- number of times geo location lookup was requestedgeolocation_successful
- number of successful geo location lookup responsesgeolocation_fail
- number of failed geo location lookup responsescircuit-breaker.http.named.<host_id>.opened
- state of the http client circuit breaker for a particular host:1
means opened (requested resource is unavailable),0
- closedcircuit.breaker.http.existing
- number of http client circuit breakers existing currently for all hostscircuit-breaker.db.opened
- state of the database circuit breaker:1
means opened (database is unavailable),0
- closedcircuit-breaker.geo.opened
- state of the geo location circuit breaker:1
means opened (geo location resource is unavailable),0
- closedtimeout_notification.ok
- number of times bidders were successfully notified about timeoutstimeout_notification.failed
- number of unsuccessful attempts to notify bidders about timeoutscurrency-rates.stale
- a flag indicating if currency rates obtained from external source are fresh (0
) or stale (1
)settings.cache.(stored-request|amp-stored-request).refresh.(initialize|update).db_query_time
- timer tracking how long was settings cache populationsettings.cache.(stored-request|amp-stored-request).refresh.(initialize|update).err
- number of errors during settings cache populationsettings.cache.account.(hit|miss)
- number of times account was found or was missing in cache
adapter.<bidder-name>.no_cookie_requests
- number of requests made to<bidder-name>
that did not contain UIDadapter.<bidder-name>.request_time
- timer tracking how long did it take to make a request to<bidder-name>
adapter.<bidder-name>.prices
- histogram of bid prices received from<bidder-name>
adapter.<bidder-name>.bids_received
- number of bids received from<bidder-name>
adapter.<bidder-name>.(banner|video|audio|native).(adm_bids_received|nurl_bids_received)
- number of bids received from<bidder-name>
broken down by bid type and whether they hadadm
ornurl
specifiedadapter.<bidder-name>.requests.type.(openrtb2-web|openrtb-app|amp|legacy)
- number of requests made to<bidder-name>
broken down by type of incoming requestadapter.<bidder-name>.requests.(gotbids|nobid|badinput|badserverresponse|timeout|unknown_error)
- number of requests made to<bidder-name>
broken down by result statusadapter.<bidder-name>.(openrtb2-web|openrtb-app|amp|legacy).tcf.userid_removed
- number of requests made to<bidder-name>
that required userid removed as a result of TCF enforcement for that bidderadapter.<bidder-name>.(openrtb2-web|openrtb-app|amp|legacy).tcf.geo_masked
- number of requests made to<bidder-name>
that required geo information removed as a result of TCF enforcement for that bidderadapter.<bidder-name>.(openrtb2-web|openrtb-app|amp|legacy).tcf.request_blocked
- number of requests made to<bidder-name>
that were blocked as a result of TCF enforcement for that bidderadapter.<bidder-name>.(openrtb2-web|openrtb-app|amp|legacy).tcf.analytics_blocked
- number of requests made to<bidder-name>
that required analytics blocked as a result of TCF enforcement for that bidderadapter.<bidder-name>.response.validation.size.(warn|err)
- number of banner bids received from the<bidder-name>
that had invalid sizeadapter.<bidder-name>.response.validation.secure.(warn|err)
- number of bids received from the<bidder-name>
that had insecure creative while in secure context
Following metrics are collected and submitted if account is configured with basic
verbosity:
account.<account-id>.requests
- number of requests received from account with<account-id>
account.<account-id>.response.validation.size.(warn|err)
- number of banner bids received from account with<account-id>
that had invalid sizeaccount.<account-id>.response.validation.secure.(warn|err)
- number of bids received from account with<account-id>
that had insecure creative while in secure context
Following metrics are collected and submitted if account is configured with detailed
verbosity:
account.<account-id>.requests.type.(openrtb2-web,openrtb-app,amp,legacy)
- number of requests received from account with<account-id>
broken down by type of incoming requestaccount.<account-id>.requests.rejected
- number of rejected requests caused by incorrectaccountId
account.<account-id>.adapter.<bidder-name>.request_time
- timer tracking how long did it take to make a request to<bidder-name>
when incoming request was from<account-id>
account.<account-id>.adapter.<bidder-name>.bids_received
- number of bids received from<bidder-name>
when incoming request was from<account-id>
account.<account-id>.adapter.<bidder-name>.requests.(gotbids|nobid)
- number of requests made to<bidder-name>
broken down by result status when incoming request was from<account-id>
prebid_cache.requests.ok
- timer tracking how long did successful cache requests takeprebid_cache.requests.err
- timer tracking how long did failed cache requests takeprebid_cache.creative_size.<creative_type>
- histogram tracking creative sizes for specific type
account.<account-id>.prebid_cache.requests.ok
- timer tracking how long did successful cache requests take when incoming request was from<account-id>
account.<account-id>.prebid_cache.requests.err
- timer tracking how long did failed cache requests take when incoming request was from<account-id>
account.<account-id>.prebid_cache.creative_size.<creative_type>
- histogram tracking creative sizes for specific type when incoming request was from<account-id>
cookie_sync_requests
- number of requests receivedcookie_sync.<bidder-name>.tcf.blocked
- number of times cookie sync was prevented by TCF per bidder
usersync.opt_outs
- number of requests received withuids
cookie containingoptout=true
usersync.bad_requests
- number of requests received with bidder not specifiedusersync.<bidder-name>.sets
- number of requests received resulted inuid
cookie update for<bidder-name>
usersync.<bidder-name>.tcf.blocked
- number of requests received that didn't result inuid
cookie update for<bidder-name>
because of lack of user consent for this action according to TCFusersync.<bidder-name>.tcf.invalid
- number of requests received that are lacking of a valid consent string for<bidder-name>
in setuid endpointusersync.all.tcf.invalid
- number of requests received that are lacking of a valid consent string for all requested bidders cookieSync endpoint
privacy.tcf.(missing|invalid)
- number of requests lacking a valid consent stringprivacy.tcf.(v1,v2).requests
- number of requests by TCF versionprivacy.tcf.(v1,v2).unknown-geo
- number of requests received from unknown geo region with consent string of particular versionprivacy.tcf.(v1,v2).in-geo
- number of requests received from TCF-concerned geo region with consent string of particular versionprivacy.tcf.(v1,v2).out-geo
- number of requests received outside of TCF-concerned geo region with consent string of particular versionprivacy.tcf.(v1,v2).vendorlist.(missing|ok|err|fallback)
- number of processed vendor lists of particular versionprivacy.usp.specified
- number of requests with a valid US Privacy string (CCPA)privacy.usp.opt-out
- number of requests that required privacy enforcement according to CCPA rulesprivacy.lmt
- number of requests that required privacy enforcement according to LMT flagprivacy.coppa
- number of requests that required privacy enforcement according to COPPA rules
analytics.<reporter-name>.(auction|amp|video|cookie_sync|event|setuid).ok
- number of succeeded processed event requestsanalytics.<reporter-name>.(auction|amp|video|cookie_sync|event|setuid).timeout
- number of event requests, failed with timeout causeanalytics.<reporter-name>.(auction|amp|video|cookie_sync|event|setuid).err
- number of event requests, failed with errorsanalytics.<reporter-name>.(auction|amp|video|cookie_sync|event|setuid).badinput
- number of event requests, rejected with bad input cause
modules.module.<module>.stage.<stage>.hook.<hook>.call
- number of times the hook is calledmodules.module.<module>.stage.<stage>.hook.<hook>.duration
- timer tracking the called hook execution timemodules.module.<module>.stage.<stage>.hook.<hook>.success.(noop|update|reject|no-invocation)
- number of times the hook is called successfully with the action appliedmodules.module.<module>.stage.<stage>.hook.<hook>.(failure|timeout|execution-error)
- number of times the hook execution is failed
account.<account-id>.modules.module.<module>.call
- number of times the module is calledaccount.<account-id>.modules.module.<module>.duration
- timer tracking the called module execution timeaccount.<account-id>.modules.module.<module>.success.(noop|update|reject|no-invocation)
- number of times the module is called successfully with the action appliedaccount.<account-id>.modules.module.<module>.failure
- number of times the module execution is failed