• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/event_log.php
  • Класс: CEventLog
  • Вызов: CEventLog::Add
static function Add($arFields)
{
	global $USER, $DB;
	static $arSeverity = [
		self::SEVERITY_SECURITY => 1,
		self::SEVERITY_EMERGENCY => 1,
		self::SEVERITY_ALERT => 1,
		self::SEVERITY_CRITICAL => 1,
		self::SEVERITY_ERROR => 1,
		self::SEVERITY_WARNING => 1,
		self::SEVERITY_NOTICE => 1,
		self::SEVERITY_INFO => 1,
		self::SEVERITY_DEBUG => 1,
	];

	$url = preg_replace("/(&?sessid=[0-9a-z]+)/", "", $_SERVER["REQUEST_URI"]);
	$SITE_ID = defined("ADMIN_SECTION") && ADMIN_SECTION==true ? false : SITE_ID;
	$session = BitrixMainApplication::getInstance()->getSession();

	$arFields = array(
		"SEVERITY" => isset($arSeverity[$arFields["SEVERITY"]]) ? $arFields["SEVERITY"] : "UNKNOWN",
		"AUDIT_TYPE_ID" => $arFields["AUDIT_TYPE_ID"] == ''? "UNKNOWN": $arFields["AUDIT_TYPE_ID"],
		"MODULE_ID" => $arFields["MODULE_ID"] == ''? "UNKNOWN": $arFields["MODULE_ID"],
		"ITEM_ID" => $arFields["ITEM_ID"] == ''? "UNKNOWN": $arFields["ITEM_ID"],
		"REMOTE_ADDR" => $_SERVER["REMOTE_ADDR"],
		"USER_AGENT" => $_SERVER["HTTP_USER_AGENT"],
		"REQUEST_URI" => $url,
		"SITE_ID" => empty($arFields["SITE_ID"]) ? $SITE_ID : $arFields["SITE_ID"],
		"USER_ID" => is_object($USER) && ($USER->GetID() > 0)? $USER->GetID(): false,
		"GUEST_ID" => ($session->isStarted() && $session->has("SESS_GUEST_ID") && $session["SESS_GUEST_ID"] > 0? $session["SESS_GUEST_ID"]: false),
		"DESCRIPTION" => $arFields["DESCRIPTION"],
		"~TIMESTAMP_X" => $DB->GetNowFunction(),
	);

	return $DB->Add("b_event_log", $arFields, array("DESCRIPTION"), "", false, "", array("ignore_dml"=>true));
}