in prod/php/ElasticOTel/Autoloader.php [54:106]
public static function autoloadCodeForClass(string $fqClassName): void
{
// Example of $fqClassName: Elastic\OTel\Autoloader
BootstrapStageLogger::logTrace("Entered with fqClassName: `$fqClassName'", __FILE__, __LINE__, __CLASS__, __FUNCTION__);
if (!self::shouldAutoloadCodeForClass($fqClassName)) {
BootstrapStageLogger::logTrace(
"shouldAutoloadCodeForClass returned false. fqClassName: {$fqClassName}",
__FILE__,
__LINE__,
__CLASS__,
__FUNCTION__
);
return;
}
// get the relative class name
$relativeClass = substr($fqClassName, self::$autoloadFqClassNamePrefixLength);
$classSrcFileRelative = ((DIRECTORY_SEPARATOR === '\\')
? $relativeClass
: str_replace('\\', DIRECTORY_SEPARATOR, $relativeClass)) . '.php';
$classSrcFileAbsolute = self::$srcRootDir . DIRECTORY_SEPARATOR . $classSrcFileRelative;
if (file_exists($classSrcFileAbsolute)) {
BootstrapStageLogger::logTrace(
"Before require `$classSrcFileAbsolute' ...",
__FILE__,
__LINE__,
__CLASS__,
__FUNCTION__
);
require $classSrcFileAbsolute;
BootstrapStageLogger::logTrace(
"After require `$classSrcFileAbsolute' ...",
__FILE__,
__LINE__,
__CLASS__,
__FUNCTION__
);
} else {
BootstrapStageLogger::logTrace(
"File with the code for class doesn't exist."
. " classSrcFile: `$classSrcFileAbsolute'. fqClassName: `$fqClassName'",
__FILE__,
__LINE__,
__CLASS__,
__FUNCTION__
);
}
}