简化 / yieldoptimizer
使用支持Rust服务器的rivrs php库优化拍卖/出价请求
0.2.1
2021-06-17 11:09 UTC
Requires (Dev)
- monolog/monolog: 2.2.0
- phpunit/phpunit: ^9.5
This package is not auto-updated.
Last update: 2024-09-20 04:44:06 UTC
README
一个简单的包装器,可以轻松构建RivrRequests,优化它们并获取RivrResponse。
简单地在本地上运行rivr-server或测试rivr-as-a-service。
基本用法
<?php
use Simplaex\Yieldoptimizer\Model\RivrRequest;
use Simplaex\Yieldoptimizer\Client\RivrHttpClient;
$client = new RivrHttpClient(); // You can reuse the client for as many requests as you like
$request = RivrRequest::createBuilder()
->appOrSite("App or Site")
->userId("userid-xyz")
->browser("choose")
->additionalProperty("random-key", "foobar")
->additionalProperty("dataCentre", "us-east-1")
->build();
$response = $client->optimize($request);
if ($response->requiresClientAction()) {
print_r($response->getBidderIds());
echo "do sth with dsps\n";
} else {
echo "continue with your regular flow\n";
}
调试 + 日志记录
默认情况下,rivr不会使用客户端发出任何日志。为了调试潜在的问题,您只需提供您喜欢的实现Psr\Log\LoggerInterface的记录器,定义您希望的日志级别,客户端将发出日志。
<?php
use Monolog\Handler\ErrorLogHandler;
use Monolog\Logger;
use Simplaex\Yieldoptimizer\Logging\LoggingMiddleware;
use Simplaex\Yieldoptimizer\Client\RivrHttpClient;
$logger = new Logger('Rivr');
$logger->pushHandler(new ErrorLogHandler(ErrorLogHandler::OPERATING_SYSTEM, Logger::INFO));
LoggingMiddleware::initLogger($logger);
$client = new RivrHttpClient();
// When running will emit something like:
[2021-05-26T15:56:30.298900+02:00] Rivr.INFO: Timeout set to 5 ms. [] []
[2021-05-26T15:56:30.300092+02:00] Rivr.INFO: Autoconfig done. Sending all requests to localhost:7487/v1/optimize [] []
配置选项
有多个环境变量可用于更改验证器的行为。
| 标志 | 描述 |
|---|---|
RIVR_SERVER_ENDPOINT | 要发送请求的端点,默认为localhost:7487 |
RIVR_REMOTE_AUTH_TOKEN | 当使用不同的端点时,可能需要凭据 |
RIVR_RESPONSE_TIMEOUT | 等待响应的时间(毫秒),默认为5ms,但在使用rivr-as-a-service进行测试时更改为>500ms |
有关整个生态系统的更多信息,请参阅完整的集成指南。