5if (!defined(
'CACHED_b_clouds_file_bucket'))
7 define(
'CACHED_b_clouds_file_bucket', 360000);
9if (!defined(
'CACHED_clouds_file_resize'))
11 define(
'CACHED_clouds_file_resize', 360000);
13if (!defined(
'BX_S3_MIN_UPLOAD_PART_SIZE'))
15 define(
'BX_S3_MIN_UPLOAD_PART_SIZE', 5242880);
22 'clouds' =>
'install/index.php',
23 'CCloudUtil' =>
'classes/general/util.php',
24 'CCloudStorage' =>
'classes/general/storage.php',
25 'CCloudStorageBucket' =>
'classes/general/storage_bucket.php',
26 'CCloudStorageUpload' =>
'classes/general/storage_upload.php',
27 'CCloudTempFile' =>
'classes/general/temp_file.php',
28 'CCloudFailover' =>
'classes/general/failover.php',
29 'CCloudFileHash' =>
'classes/general/filehash.php',
30 'CCloudStorageService' =>
'classes/general/storage_service.php',
31 'CCloudStorageService_S3' =>
'classes/general/storage_service_s3.php',
32 'CCloudStorageService_AmazonS3' =>
'classes/general/storage_service_amazon.php',
33 'CCloudStorageService_Yandex' =>
'classes/general/storage_service_yandex.php',
34 'CCloudStorageService_HotBox' =>
'classes/general/storage_service_hotbox.php',
35 'CCloudStorageService_OpenStackStorage' =>
'classes/general/storage_service_openstack.php',
36 'CCloudStorageService_RackSpaceCloudFiles' =>
'classes/general/storage_service_rackspace.php',
37 'CCloudStorageService_ClodoRU' =>
'classes/general/storage_service_clodo.php',
38 'CCloudStorageService_Selectel' =>
'classes/general/storage_service_selectel.php',
39 'CCloudStorageService_Selectel_S3' =>
'classes/general/storage_service_selectel_s3.php',
40 'CCloudStorageService_GoogleStorage' =>
'classes/general/storage_service_google.php',
41 'CCloudSecurityService_AmazonS3' =>
'classes/general/security_service_s3.php',
42 'CCloudSecurityService_HotBox' =>
'classes/general/security_service_hotbox.php',
43 'CCloudSecurityService_STS' =>
'classes/general/security_service_sts.php',
44 'CCloudSecurityService_Amazon' =>
'classes/general/security_service_amazon.php',
45 'CCloudSecurityService_Yandex' =>
'classes/general/security_service_yandex.php',
55 if (!isset(static::$instances[
$action]))
59 return static::$instances[
$action];
67 $this->head = BX24_HOST_NAME .
'|' .
$action;
70 $expired = $now - 600;
71 while (!apcu_add($this->head .
'|' . $this->
id, $now))
73 $prev = apcu_fetch($this->head .
'|' . $this->
id);
74 if ($prev > 0 && $prev < $expired)
76 $cloudsKey = $this->head .
'|' . $this->
id .
'|mess';
77 $prevTrace = apcu_fetch($cloudsKey);
82 apcu_delete($cloudsKey);
83 apcu_delete($this->head .
'|' . $this->
id);
91 $cloudsKey = $this->head .
'|' . $this->
id .
'|mess';
92 $prevTrace = apcu_fetch($cloudsKey);
97 apcu_delete($cloudsKey);
98 apcu_delete($this->head .
'|' . $this->
id);
105 foreach (
Bitrix\Main\Diag\Helper::getBackTrace(0, DEBUG_BACKTRACE_IGNORE_ARGS, $skip) as $backTraceFrame)
109 $functionStack .=
' < ';
112 if (isset($backTraceFrame[
'class']))
114 $functionStack .= $backTraceFrame[
'class'] .
'::';
117 $functionStack .= $backTraceFrame[
'function'];
119 if (isset($backTraceFrame[
'file']))
121 $fileStack .=
"\t" . $backTraceFrame[
'file'] .
':' . $backTraceFrame[
'line'] .
"\n";
124 return ' ' . $functionStack .
"\n" . $fileStack;
129 $newTrace = $this->head .
':v2:' . $filePath .
"\n" .
$_SERVER[
'REQUEST_URI'] .
"\n" . static::getBackTrace(2);
130 $cloudsKey = $this->head .
'|' . $this->
id .
'|mess';
131 if (!apcu_add($cloudsKey, $newTrace))
133 $prevTrace = apcu_fetch($cloudsKey);
139 apcu_store($cloudsKey, $newTrace);
144 $cloudsKey = $this->head .
'|' . $this->
id .
'|mess';
145 apcu_delete($cloudsKey);
static getInstance($action='counters')
startAction($filePath='')
static getBackTrace($skip=0)
static AddAutoloadClasses($module, $arParams=[])
$_SERVER["DOCUMENT_ROOT"]
AddMessage2Log($text, $module='', $traceDepth=6, $showArgs=false)