MOON
Server: Apache
System: Linux server1.studioinfinity.com.br 2.6.32-954.3.5.lve1.4.90.el6.x86_64 #1 SMP Tue Feb 21 12:26:30 UTC 2023 x86_64
User: artinside (517)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/artinside/sites.artinside.com.br/mainpro/vendor/aplus/log/src/Loggers/MultiFileLogger.php
<?php declare(strict_types=1);
/*
 * This file is part of Aplus Framework Log Library.
 *
 * (c) Natan Felles <natanfelles@gmail.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
namespace Framework\Log\Loggers;

use Framework\Log\Log;
use Framework\Log\Logger;
use InvalidArgumentException;

/**
 * Class MultiFileLogger.
 *
 * @package log
 */
class MultiFileLogger extends Logger
{
    protected function setDestination(string $destination) : static
    {
        $directory = \realpath($destination);
        if (!$directory || !\is_dir($directory)) {
            throw new InvalidArgumentException('Invalid directory destination: ' . $destination);
        }
        $this->destination = $directory . \DIRECTORY_SEPARATOR;
        return $this;
    }

    protected function write(Log $log) : bool
    {
        $filename = $this->getDestination() . \date('Y-m-d', $log->time) . '.log';
        $eol = $this->getConfig()['eol'] ?? \PHP_EOL . \PHP_EOL;
        $message = (string) $log;
        $message = \substr($message, 11);
        return \error_log($message . $eol, 3, $filename);
    }
}