A super easy PHP Framework for web development! https://github.com/exacti/phacil-framework
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
2.0 KiB

<?php
/*
* Copyright © 2024 ExacTI Technology Solutions. All rights reserved.
* GPLv3 General License.
* https://exacti.com.br
* Phacil PHP Framework - https://github.com/exacti/phacil-framework
*/
namespace Phacil\Framework\Api;
/**
* The principal log class for this framework
*
* @param string $filename (optional) The name of log file. The path is automatic defined in the DIR_LOGS constant in config file. Isn't not possible to change the path. The default name is error.log.
* @package Phacil\Framework
* @since 2.0.0
* @api
*/
interface Log
{
const DIR_LOGS_PERMISSIONS = 0764;
const CONFIGURATION_LOGS_CONST = 'DIR_LOGS';
/**
* @param string $filename (optional) The name of log file. The path is automatic defined in the DIR_LOGS constant in config file. Isn't not possible to change the path. The default name is error.log.
* @return void
*/
public function __construct($filename = "error.log");
/**
* Write the error message in the log file
*
* @param string $message
* @return int|false
* @since 1.0.0
*/
public function write($message);
/**
* Return the log file name
*
* @since 2.0.0
* @return string
*/
public function getFileName();
/**
* Return the log file path
*
* @since 2.0.0
* @return string
*/
public function getFilePath();
/**
* Return last lines of log archive
*
* @param string|null $filepath (optional) Path of file. Default is the log file.
* @param int $lines (optional) Lines to be readed. Default value is 10.
* @param bool $adaptive (optional) Default value is true.
* @return false|string
* @since 2.0.0
*/
public function tail($filepath = null, $lines = 10, $adaptive = true);
/**
* Return first lines of log archive
*
* @param string|null $filepath (optional) Path of file. Default is the log file.
* @param int $lines (optional) Lines to be readed. Default value is 10.
* @param bool $adaptive (optional) Default value is true.
* @return false|string
* @since 2.0.0
*/
public function head($filepath = null, $lines = 10, $adaptive = true);
}