403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/socialnetwork/lib/Log/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/socialnetwork/lib/Log/Logger.php
<?php

declare(strict_types=1);

namespace Bitrix\Socialnetwork\Log;

use Bitrix\Main\Error;
use Bitrix\Main\ErrorCollection;
use Throwable;

class Logger
{
	public static function log(mixed $data, string $marker = 'DEBUG_SOCIALNETWORK'): void
	{
		$log = new Log($marker);

		if ($data instanceof Throwable)
		{
			$collectedData = static::collectThrowable($data);
		}
		elseif ($data instanceof Error)
		{
			$collectedData = static::collectError($data);
		}
		elseif ($data instanceof ErrorCollection)
		{
			$collectedData = static::collectErrorCollection($data);
		}
		else
		{
			$collectedData = $data;
		}

		$log->collect($collectedData);
	}

	private static function collectThrowable(Throwable $throwable): array
	{
		return [
			'type' => 'throwable',
			'message' => $throwable->getMessage(),
			'file' => $throwable->getFile(),
			'line' => $throwable->getLine(),
			'backtrace' => $throwable->getTraceAsString(),
		];
	}

	private static function collectError(Error $error): array
	{
		return [
			'type' => 'error',
			'message' => $error->getMessage(),
			'code' => $error->getCode(),
			'customData' => $error->getCustomData(),
		];
	}

	private static function collectErrorCollection(ErrorCollection $errorCollection): array
	{
		$errors = [];
		foreach ($errorCollection as $error)
		{
			$errors[] = static::collectError($error);
		}

		return [
			'type' => 'errorCollection',
			'errors' => $errors,
		];
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit