-
Notifications
You must be signed in to change notification settings - Fork 186
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bad Input Error if pbjs s2s config contains alias configuration for a disabled adapter #3592
Bad Input Error if pbjs s2s config contains alias configuration for a disabled adapter #3592
Comments
I guess I had hoped that this sort of situation would have been addressed by prebid/prebid-server#3735, but that issue was more about imp.ext, and didn't deal with aliases clearly enough. So yes, I'm supportive of changing the disabled bidder behavior in general. Fail-Fast has shown itself to be a little too draconian in the edge cases. Proposal A: Never hard fail on an unknown bidder. Just warn and log a metric. This would solve this problem and probably other edge-cases. Proposal B: Never hard fail on a bidder that exists but is not enabled. Just warn and log a metric. Does PBS even have this info? |
…nfiguration for a disabled adapter
…nfiguration for a disabled adapter
I would like to add my support to getting this prioritized and resolved. Thank you @zxPhoenix for putting together a PR to address the problem. |
@muuki88 , @pclinger - any input about which of these proposals is your preferred solution?
|
Discussed in committee. No resolution yet. We could have a config which opts into a warning mode rather than hard failing. |
Sorry, I wasn't available last PMC @bretg What's the argument to keep this a failing behaviour? I'm curious why hard failing is a good default behaviour 😅 I can see the point of a |
The idea behind hard-failing has always been that publishers are more likely to notice a hard fail when they test it in their QA environment. They test, it obviously fails, they fix, life is good. Gentle warnings are more likely to be ignored and drag on for months until someone looks at the reports. This has been a bedrock philosophy of Prebid Server since 2017, and while many of us have recognized it's got downsides, it may take some time to update the people and the software. :-) One thing we discussed last week was that once a bidder is disabled, it's currently invisible to PBS-core, at least in Java. We would need to create list of disabled bidders in order to treat them differently from biddercodes that never existed in the first place. That seems unnecessary to some. To move it forward, I'd propose a new config:
|
I'll take the setting 😄
Quote from the internet: "everybody has a test system. Some have the luxury of a production system" 😂 In general I agree with the approach. Sometimes it's annoying, but it makes sense 😁 |
Prebid Server's "fail fast, fail loud" strategy for error handling is intended to assist publishers with identifying problems with their bidder configuration. Errors which halt the auction are highly visible in metrics and are hard to miss. Conversely, warnings in the response body necessitate the use of analytics services to parse and raise alerts, demanding considerably more effort from publishers to safeguard themselves. What is referred to as "dangerous" in this thread is a protection for publishers from defining an invalid configuration. Why would a publisher define a server side only configuration referring to bidders which do not exist, or are disabled, on the server side? In recent years, Prebid Server has converted many fatal errors to harmless warnings, and I'm curious for feedback from the publishers in the Prebid community on how this approach is working. Based on the lack of resolution at the last meeting, it would appear opinions are divided. Prebid Server will operate just fine ignoring unknown or disabled bidders, and does not need to be opinionated in undesirable ways. I support an account-level configuration to provide publishers with the option of choosing their own behavior, and hosts are welcome to set their own host-level configuration as they desire. Let's leave the default matching the current "fail fast, fail loud" behavior for minimal disruption. For PBS-Go, we can provide both a Publishers often involve their Prebid Server host in debugging, so it makes sense for PBS to track account-level metrics for the count of unknown and disabled bidders, along with sampled logs containing specific bidder names with the account id. Although account-level cardinality can be a concern, especially for time series data, tracking just one or two metrics in this scenario should not pose a problem. |
Deploying
alias
configurations for prebid server through prebid.js is dangerous, because if a bidder is being disabled, it can stop the entire monetization of prebid server. Disabled bidders will stop the entire bid requests with a400
if the alias configuration contains a disabled bidder.🪄 Steps to reproduce
Prebid.js
s2s
configand send a request to a prebid server where
BidderC
is not enabled.This will cause a
400
with💡 Proposal
We turn the 400 into an error metric. Related to #3209
Related
If the bidder being alias is unknown also a
400
is being returned:which I guess is okaish, but a metric would also be better.
The text was updated successfully, but these errors were encountered: