31 LoggerManager::getInstance()->getLogger()?->info(
33 .
"{date} - {host}\n{delimiter}\n"
34 .
"Event {eventName} starts. \n{delimiter}\n"
36 'RESPONSE_DATA' => $arguments,
37 'SCOPE' =>
$event[
'MODULE_ID'] ??
null,
38 'METHOD' =>
$event[
'EVENT'] ??
null,
39 'MESSAGE' =>
Event\LogType::EVENT_START->value,
40 'eventName' =>
$event[
'EVENT'],
41 'arguments' => $arguments,
50 array_key_exists(\CRestUtil::EVENTS, $scopeMethods)
51 && is_array($scopeMethods[\CRestUtil::EVENTS])
54 foreach($scopeMethods[\CRestUtil::EVENTS] as
$key => $restEvent)
56 if($restEvent[0] ==
$event[
'MODULE_ID'] && mb_strtoupper($restEvent[1]) ==
$event[
'EVENT'])
60 'HANDLER' => $restEvent[2],
61 'ADDITIONAL' =>
array(),
64 if(isset($restEvent[3]) && is_array($restEvent[3]))
66 $event[
'EVENT_REST'][
'ADDITIONAL'] = $restEvent[3];
74 if(array_key_exists(
'EVENT_REST',
$event))
80 $handlerFound =
false;
82 if (!empty($arguments[1][
'REST_EVENT_HOLD_EXCEPT_APP']))
87 $appHoldExceptId =
$app[
'ID'];
91 if(array_key_exists(
'EVENT_REST',
$event))
94 '=EVENT_NAME' => mb_strtoupper(
$event[
'EVENT_REST'][
'EVENT']),
96 if ($appHoldExceptId > 0)
98 $filter[
'=APP_ID'] = $appHoldExceptId;
101 $dbRes = EventTable::getList(
112 'APP_CODE' =>
'REST_APP.CLIENT_ID',
113 'APP_ACTIVE' =>
'REST_APP.ACTIVE',
114 'APP_INSTALLED' =>
'REST_APP.INSTALLED',
119 $dataProcessed = !is_array(
$event[
'EVENT_REST'][
'HANDLER']) || !is_callable(
$event[
'EVENT_REST'][
'HANDLER']);
121 while ($handler =
$dbRes->fetch())
123 $handlerFound =
true;
125 LoggerManager::getInstance()->getLogger()?->info(
127 .
"{date} - {host}\n{delimiter}\n"
128 .
"Event {eventName} handler found. \n{delimiter}\n"
130 'RESPONSE_DATA' => $arguments,
131 'CLIENT_ID' => $handler[
'APP_CODE'] ??
null,
132 'SCOPE' =>
$event[
'MODULE_ID'] ??
null,
133 'EVENT_ID' => $handler[
'ID'] ??
null,
134 'METHOD' =>
$event[
'EVENT'] ??
null,
135 'MESSAGE' =>
Event\LogType::EVENT_HANDLER_FOUND->value,
136 'eventName' =>
$event[
'EVENT'] ??
null,
137 'handler' => $handler,
140 if (!empty($handler[
'APP_CODE']))
147 LoggerManager::getInstance()->getLogger()?->info(
149 .
"{date} - {host}\n{delimiter}\n"
150 .
"Event {eventName} skipped because inactive app: \n"
152 'RESPONSE_DATA' => $arguments,
153 'SCOPE' =>
$event[
'MODULE_ID'] ??
null,
154 'METHOD' =>
$event[
'EVENT'] ??
null,
155 'CLIENT_ID' => $handler[
'APP_CODE'],
156 'EVENT_ID' => $handler[
'ID'] ??
null,
157 'MESSAGE' =>
Event\LogType::SKIP_BY_APP_INACTIVE->value,
158 'eventName' =>
$event[
'EVENT'] ??
null,
159 'handler' => $handler,
166 if ($appStatus[
'PAYMENT_EXPIRED'] ===
'Y')
168 LoggerManager::getInstance()->getLogger()?->info(
170 .
"{date} - {host}\n{delimiter}\n"
171 .
"Event {eventName} skipped because PAYMENT_EXPIRED: \n"
173 'RESPONSE_DATA' => $arguments,
174 'SCOPE' =>
$event[
'MODULE_ID'] ??
null,
175 'METHOD' =>
$event[
'EVENT'] ??
null,
176 'CLIENT_ID' => $handler[
'APP_CODE'],
177 'EVENT_ID' => $handler[
'ID'] ??
null,
178 'MESSAGE' =>
Event\LogType::SKIP_BY_PAYMENT_EXPIRED->value,
179 'eventName' =>
$event[
'EVENT'] ??
null,
180 'appStatus' => $appStatus,
187 $handlerArguments = $arguments;
193 $handlerArguments = call_user_func_array(
$event[
'EVENT_REST'][
'HANDLER'],
array($handlerArguments, $handler));
194 $call[] =
array($handler, $handlerArguments,
$event[
'EVENT_REST'][
'ADDITIONAL']);
198 LoggerManager::getInstance()->getLogger()?->error(
200 .
"{date} - {host}\n{delimiter}\n"
201 .
"Event {eventName} exception: \n"
202 .
"{errorCode}: {errorMessage}", [
203 'RESPONSE_DATA' => $e->getMessage(),
204 'SCOPE' =>
$event[
'MODULE_ID'] ??
null,
205 'METHOD' =>
$event[
'EVENT'] ??
null,
206 'CLIENT_ID' => $handler[
'APP_CODE'] ??
null,
207 'EVENT_ID' => $handler[
'ID'] ??
null,
208 'RESPONSE_STATUS' => $e->getCode(),
209 'MESSAGE' =>
Event\LogType::EVENT_EXCEPTION->value,
210 'eventName' =>
$event[
'EVENT'],
211 'errorCode' => $e->getCode(),
212 'errorMessage' => $e->getMessage(),
218 $call[] =
array($handler, $handlerArguments,
$event[
'EVENT_REST'][
'ADDITIONAL']);