HttpClientDataCollector
extends DataCollector
in package
implements
LateDataCollectorInterface
uses
HttpClientTrait
FinalYes
Tags
Table of Contents
Interfaces
- LateDataCollectorInterface
Properties
- $CHUNK_SIZE : int
- $clients : array<string|int, TraceableHttpClient>
Methods
- collect() : void
- getClients() : array<string|int, mixed>
- getErrorCount() : int
- getName() : string
- getRequestCount() : int
- lateCollect() : void
- registerClient() : void
- reset() : void
- withOptions() : static
- collectOnClient() : array<string|int, mixed>
- dechunk() : string
- escapePayload() : string
- getCurlCommand() : string|null
- getProxy() : array<string|int, mixed>|null
- Loads proxy configuration from the same environment variables as curl when no proxy is explicitly set.
- getProxyUrl() : string|null
- jsonEncode() : string
- mergeDefaultOptions() : array<string|int, mixed>
- mergeQueryString() : string|null
- Merges and encodes a query array with a query string.
- normalizeBody() : string|resource|Closure
- normalizeHeaders() : array<string|int, array<string|int, string>>
- normalizePeerFingerprint() : array<string|int, mixed>
- parseUrl() : array<string|int, mixed>
- Parses a URL and fixes its encoding if needed.
- prepareRequest() : array<string|int, mixed>
- Validates and normalizes method, URL and options, and merges them with defaults.
- removeDotSegments() : string
- Removes dot-segments from a path.
- resolveUrl() : array<string|int, mixed>
- Resolves a URL against a base URI.
- shouldBuffer() : bool
Properties
$CHUNK_SIZE
private
static int
$CHUNK_SIZE
= 16372
$clients
private
array<string|int, TraceableHttpClient>
$clients
= []
Methods
collect()
public
collect(Request $request, Response $response[, Throwable|null $exception = null ]) : void
Parameters
- $request : Request
- $response : Response
- $exception : Throwable|null = null
getClients()
public
getClients() : array<string|int, mixed>
Return values
array<string|int, mixed>getErrorCount()
public
getErrorCount() : int
Return values
intgetName()
public
getName() : string
Return values
stringgetRequestCount()
public
getRequestCount() : int
Return values
intlateCollect()
public
lateCollect() : void
registerClient()
public
registerClient(string $name, TraceableHttpClient $client) : void
Parameters
- $name : string
- $client : TraceableHttpClient
reset()
public
reset() : void
withOptions()
public
withOptions(array<string|int, mixed> $options) : static
Parameters
- $options : array<string|int, mixed>
Return values
staticcollectOnClient()
private
collectOnClient(TraceableHttpClient $client) : array<string|int, mixed>
Parameters
- $client : TraceableHttpClient
Return values
array<string|int, mixed>dechunk()
private
static dechunk(string $body) : string
Parameters
- $body : string
Return values
stringescapePayload()
private
escapePayload(string $payload) : string
Parameters
- $payload : string
Return values
stringgetCurlCommand()
private
getCurlCommand(array<string|int, mixed> $trace) : string|null
Parameters
- $trace : array<string|int, mixed>
Return values
string|nullgetProxy()
Loads proxy configuration from the same environment variables as curl when no proxy is explicitly set.
private
static getProxy(string|null $proxy, array<string|int, mixed> $url, string|null $noProxy) : array<string|int, mixed>|null
Parameters
- $proxy : string|null
- $url : array<string|int, mixed>
- $noProxy : string|null
Return values
array<string|int, mixed>|nullgetProxyUrl()
private
static getProxyUrl(string|null $proxy, array<string|int, mixed> $url) : string|null
Parameters
- $proxy : string|null
- $url : array<string|int, mixed>
Return values
string|nulljsonEncode()
private
static jsonEncode(mixed $value[, int|null $flags = null ][, int $maxDepth = 512 ]) : string
Parameters
- $value : mixed
- $flags : int|null = null
- $maxDepth : int = 512
Tags
Return values
stringmergeDefaultOptions()
private
static mergeDefaultOptions(array<string|int, mixed> $options, array<string|int, mixed> $defaultOptions[, bool $allowExtraOptions = false ]) : array<string|int, mixed>
Parameters
- $options : array<string|int, mixed>
- $defaultOptions : array<string|int, mixed>
- $allowExtraOptions : bool = false
Tags
Return values
array<string|int, mixed>mergeQueryString()
Merges and encodes a query array with a query string.
private
static mergeQueryString(string|null $queryString, array<string|int, mixed> $queryArray, bool $replace) : string|null
Parameters
- $queryString : string|null
- $queryArray : array<string|int, mixed>
- $replace : bool
Tags
Return values
string|nullnormalizeBody()
private
static normalizeBody(array<string|int, mixed>|string|resource|Traversable|Closure $body[, array<string|int, mixed> &$normalizedHeaders = [] ]) : string|resource|Closure
Parameters
- $body : array<string|int, mixed>|string|resource|Traversable|Closure
- $normalizedHeaders : array<string|int, mixed> = []
Tags
Return values
string|resource|ClosurenormalizeHeaders()
private
static normalizeHeaders(array<string|int, mixed> $headers) : array<string|int, array<string|int, string>>
Parameters
- $headers : array<string|int, mixed>
Tags
Return values
array<string|int, array<string|int, string>>normalizePeerFingerprint()
private
static normalizePeerFingerprint(mixed $fingerprint) : array<string|int, mixed>
Parameters
- $fingerprint : mixed
Tags
Return values
array<string|int, mixed>parseUrl()
Parses a URL and fixes its encoding if needed.
private
static parseUrl(string $url[, array<string|int, mixed> $query = [] ][, array<string|int, mixed> $allowedSchemes = ['http' => 80, 'https' => 443] ]) : array<string|int, mixed>
Parameters
- $url : string
- $query : array<string|int, mixed> = []
- $allowedSchemes : array<string|int, mixed> = ['http' => 80, 'https' => 443]
Tags
Return values
array<string|int, mixed>prepareRequest()
Validates and normalizes method, URL and options, and merges them with defaults.
private
static prepareRequest(string|null $method, string|null $url, array<string|int, mixed> $options[, array<string|int, mixed> $defaultOptions = [] ][, bool $allowExtraOptions = false ]) : array<string|int, mixed>
Parameters
- $method : string|null
- $url : string|null
- $options : array<string|int, mixed>
- $defaultOptions : array<string|int, mixed> = []
- $allowExtraOptions : bool = false
Tags
Return values
array<string|int, mixed>removeDotSegments()
Removes dot-segments from a path.
private
static removeDotSegments(string $path) : string
Parameters
- $path : string
Tags
Return values
stringresolveUrl()
Resolves a URL against a base URI.
private
static resolveUrl(array<string|int, mixed> $url, array<string|int, mixed>|null $base[, array<string|int, mixed> $queryDefaults = [] ]) : array<string|int, mixed>
Parameters
- $url : array<string|int, mixed>
- $base : array<string|int, mixed>|null
- $queryDefaults : array<string|int, mixed> = []
Tags
Return values
array<string|int, mixed>shouldBuffer()
private
static shouldBuffer(array<string|int, mixed> $headers) : bool
Parameters
- $headers : array<string|int, mixed>