in agent/php/ElasticApm/Impl/Span.php [263:293]
public function isCompressionEligible(): bool
{
if (!$this->isCompressible) {
($loggerProxy = $this->logger->ifTraceLevelEnabled(__LINE__, __FUNCTION__))
&& $loggerProxy->log('This span is not eligible for compression because it is not marked as compressible');
return false;
}
if ($this->wasPropogatedViaDistributedTracing) {
($loggerProxy = $this->logger->ifTraceLevelEnabled(__LINE__, __FUNCTION__))
&& $loggerProxy->log('This span is not eligible for compression because its ID was propogated via distributed tracing');
return false;
}
if ($this->hasChildren) {
($loggerProxy = $this->logger->ifTraceLevelEnabled(__LINE__, __FUNCTION__))
&& $loggerProxy->log('This span is not eligible for compression because it has children');
return false;
}
if ($this->outcome !== null && $this->outcome !== Constants::OUTCOME_SUCCESS) {
($loggerProxy = $this->logger->ifTraceLevelEnabled(__LINE__, __FUNCTION__))
&& $loggerProxy->log('This span is not eligible its outcome is present and it is not success', ['outcome' => $this->outcome]);
return false;
}
($loggerProxy = $this->logger->ifTraceLevelEnabled(__LINE__, __FUNCTION__))
&& $loggerProxy->log('This span is eligible for compression');
return true;
}