Graphite Keys - datacratic/rtbkit GitHub Wiki
Most RTBkit components log real-time information and metrics in Graphite. This has proven invaluable for monitoring the current state of the RTB stack.
This page gives some information about what those keys mean.
Note that keys for each component are prefixed by an installation name and a node name (given as command line parameters) when launching each component. For example, starting the router with an installation (e.g. prod) and a node name (e.g. on server rtb1) would give :
prod.rtb1.router.bid
Some keys are recorded by account and is signified in the following table using the accounts.* prefix.
Graphite Key | Help |
---|---|
router.accounts.*.bidResponseTimeMs | Time (in milliseconds) taken by the agent to provide a bid response. |
router.accounts.*.bids | Bid received from this agent. |
router.accounts.*.droppedBids | Number of bids that expired after a request for bidding was sent but before a bid response was received. |
router.accounts.*.filter.dynamic.augmentationTagsExcluded | Indication that the auction was filtered because it doesn't include any augmentation tag associated with this account. |
router.accounts.*.filter.dynamic.notEnoughTime | Indication that the auction was filtered because the time left until the auction expires is not enough to process it. |
router.accounts.*.filter.dynamic.tooManyInFlight | Indication that the auction was filtered because the number of bid request still not answered by the agent has reached its predefined maximum. |
router.accounts.*.filter.dynamic.userBlacklisted | Indication that the auction was filtered because the user matches the black list. |
router.accounts.*.filter.intoDynamicFilters | Indication that an auction enters the dynamic filtering stage of an agent. |
router.accounts.*.filter.intoStaticFilters | Indication that an auction enters the static filtering stage of an agent. |
router.accounts.*.filter.metric.timeElapsedBeforePreproMs | Time elapsed (in milliseconds) between the auction start and the preprocessing phase. |
router.accounts.*.filter.metric.timeElapsedDuringPreproMs | Time elapsed (in milliseconds) during the preprocessing phase. |
router.accounts.*.filter.metric.timeLeftBeforeDynamicFilter | Time (in milliseconds) available before the auction expired at the beginning of the dynamic filtering phase. |
router.accounts.*.filter.metric.timeUsedBeforeDynamicFilter | Time elapsed (in milliseconds) between the auction start and the start of the dynamic filtering phase. |
router.accounts.*.filter.metric.timeWindowMs | Time (in milliseconds) available for processing the auction before it expires. |
router.accounts.*.filter.passedDynamicFilters | Indication that an auction passed all dynamic filters. |
router.accounts.*.filter.passedStaticFilters | Indication that an auction passed all static filters. |
router.accounts.*.filter.static.003_agentAppearsDead | Indication that the auction was filtered because the agent is not responsive. |
router.accounts.*.filter.static.004_earlyTooManyInFlight | Indication that the auction was filtered because the number of bid request still not answered by the agent has reached its predefined maximum. |
router.accounts.*.filter.static.005_notEnoughTime | Indication that the auction was filtered because the time left until the auction expires is not enough to process it. |
router.accounts.*.filter.static.010_noSpots | |
router.accounts.*.filter.static.050_exchangeFiltered | |
router.accounts.*.filter.static.060_locationFiltered | |
router.accounts.*.filter.static.080_segmentExcluded_peer39 | |
router.accounts.*.filter.static.080_segmentHasNoData_peer39 | |
router.accounts.*.filter.static.080_segmentInfoMissing_tags | |
router.accounts.*.filter.static.085_hostFiltered | |
router.accounts.*.inFlight.averageAgeSeconds | Average age of all request for bid still not answered by the agent. |
router.accounts.*.inFlight.numInFlight | Number of request for bid sent to the agent that were still not answered. |
router.accounts.*.inFlight.oldestAgeSeconds | Age of the oldest request for bid send to an agent that was still not answered. |
router.accounts.*.ping.incomingTimeMs | Time (in milliseconds) taken for the ping message to travel from the agent to the router. |
router.accounts.*.ping.outgoingTimeMs | Time (in milliseconds) taken for the ping message to travel from the router to the agent. |
router.accounts.*.ping.roundTripTimeMs | Time (in milliseconds) taken for the ping message to travel from the router to the agent and back to the router. |
router.accounts.*.timeSinceHeartbeat | Time since we last received an heartbeat message from the agent. The agent will be considered dead after 5 seconds. |
router.auctionDropped.noPotentialBidders | Auction is dropped since no bidders were selected during preprocessing. |
router.auctionKeepPercentage | Chances that an auction received by the router will be processed. This value is constantly adjusted by monitoring the load on the router to avoid overloading it. |
router.auctionPassedPreprocessing | Auction completed the preprocessing phase and bidders were selected for the augmentation phase. |
router.bid | Bid received from an agent. |
router.bidError.agentNotBidding | Bid response is not associated with a bid request. |
router.bidError.agentSkippedAuction | Bid response is associated with an agent that wasn't selected to bid on this auction. |
router.bidError.unknownAuction | Bid response is associated with an unknown auction. |
router.exchange.*.requests | Auction processed. |
router.exchange.*.spots | Number of spot for this auction. |
router.numTimesCouldSleep | Number of times the router thread was able to process all its messages and go to sleep over the last 10 seconds. |
router.preprocessAuctionTimeMs | Time (in milliseconds) taken to perform the preprocessing stage that filter auctions to find potential bidders and request bids. |
router.routerDown | Router main thread is terminated. |
router.routerLoop.asleep | Time (in milliseconds) the router thread was sleeping. |
router.routerLoop.doConfig | Time (in milliseconds) taken to accept updates of bidder's configuration parameters. |
router.routerLoop.doStartBidding | Time (in milliseconds) taken to filter auctions to find potential bidders and request bids. |
router.routerLoop.doSubmitted | Time (in milliseconds) taken to process the auction and move it to the post auction loop after it was submitted to the exchange. |
router.routerUp | Router main thread started. |
router.tooLateAfterAugmenting | Auction expired after the augmentation phase but before being routed. |
router.tooLateAfterRouting | Auction expired after being routed to agents. |
router.tooLateBeforeAdd | Auction expired after the preprocess phase but before the augmentation phase. |
router.tooLateBeforeRouting | Auction expired before being routed to agents. |
router.tooLateToFinish | Auction expired before being retired. |
postAuction.banker.account.*.attachedBids | Number of bids authorized for the account over a period of 10 seconds. |
postAuction.banker.account.*.expiredCommitments | Number of inactive (expired) commitments still attached to the account. |
postAuction.banker.account.*.detachedBids | Number of bids commited or cancelled for the account over a period of 10 seconds. |
postAuction.banker.account.*.pendingCommitments | Number of active commitments associated to the account. |
postAuction.banker.total.attachedBids | Number of bids authorized over a period of 10 seconds. |
postAuction.banker.total.expiredCommitments | Number of inactive (expired) commitments. |
postAuction.banker.total.detachedBids | Number of bids commited or cancelled over a period of 10 seconds. |
postAuction.banker.total.pendingCommitments | Number of active commitments. |