logger.php
来自「PHP 知识管理系统(基于树结构的知识管理系统), 英文原版的PHP源码。」· PHP 代码 · 共 600 行 · 第 1/2 页
PHP
600 行
public function getInstance($name)
{
return LoggerManager::getLogger($name);
}
/**
* Returns the assigned Level, if any, for this Category.
* @return LoggerLevel or null
*/
public function getLevel()
{
return $this->level;
}
/**
* Get a Logger by name (Delegate to {@link LoggerManager})
* @param string $name logger name
* @param LoggerFactory $factory a {@link LoggerFactory} instance or null
* @return Logger
* @static
*/
public function getLogger($name, $factory = null)
{
return LoggerManager::getLogger($name, $factory);
}
/**
* Return the the repository where this Category is attached.
* @return LoggerHierarchy
*/
public function getLoggerRepository()
{
return $this->repository;
}
/**
* Return the category name.
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Returns the parent of this category.
* @return Logger
*/
public function getParent()
{
return $this->parent;
}
/**
* Please use getLevel() instead.
* @deprecated
*/
public function getPriority()
{
return $this->getLevel();
}
/**
* Return the inherited ResourceBundle for this category.
*/
public function getResourceBundle()
{
return;
}
/**
* Returns the string resource corresponding to key in this category's inherited resource bundle.
*/
public function getResourceBundleString($key)
{
return;
}
/**
* Return the root of the default category hierarchy.
* @return LoggerRoot
*/
public function getRoot()
{
return LoggerManager::getRootLogger();
}
/**
* get the Root Logger (Delegate to {@link LoggerManager})
* @return LoggerRoot
* @static
*/
public function getRootLogger()
{
return LoggerManager::getRootLogger();
}
/**
* Log a message object with the INFO Level.
*
* @param mixed $message message
* @param mixed $caller caller object or caller string id
*/
public function info($message, $caller = null)
{
$infoLevel = LoggerLevel::getLevelInfo();
if ($this->repository->isDisabled($infoLevel)) {
return;
}
if ($infoLevel->isGreaterOrEqual($this->getEffectiveLevel())) {
$this->forcedLog($this->fqcn, $caller, $infoLevel, $message);
}
}
/**
* Is the appender passed as parameter attached to this category?
*
* @param LoggerAppender $appender
*/
public function isAttached($appender)
{
return isset($this->aai[$appender->getName()]);
}
/**
* Check whether this category is enabled for the DEBUG Level.
* @return boolean
*/
public function isDebugEnabled()
{
$debugLevel = LoggerLevel::getLevelDebug();
if ($this->repository->isDisabled($debugLevel)) {
return false;
}
return ($debugLevel->isGreaterOrEqual($this->getEffectiveLevel()));
}
/**
* Check whether this category is enabled for a given Level passed as parameter.
*
* @param LoggerLevel level
* @return boolean
*/
public function isEnabledFor($level)
{
if ($this->repository->isDisabled($level)) {
return false;
}
return (bool)($level->isGreaterOrEqual($this->getEffectiveLevel()));
}
/**
* Check whether this category is enabled for the info Level.
* @return boolean
* @see LoggerLevel
*/
public function isInfoEnabled()
{
$infoLevel = LoggerLevel::getLevelInfo();
if ($this->repository->isDisabled($infoLevel)) {
return false;
}
return ($infoLevel->isGreaterOrEqual($this->getEffectiveLevel()));
}
/**
* Log a localized and parameterized message.
*/
public function l7dlog($priority, $key, $params, $t)
{
return;
}
/**
* This generic form is intended to be used by wrappers.
*
* @param LoggerLevel $priority a valid level
* @param mixed $message message
* @param mixed $caller caller object or caller string id
*/
public function log($priority, $message, $caller = null)
{
if ($this->repository->isDisabled($priority)) {
return;
}
if ($priority->isGreaterOrEqual($this->getEffectiveLevel())) {
$this->forcedLog($this->fqcn, $caller, $priority, $message);
}
}
/**
* Remove all previously added appenders from this Category instance.
*/
public function removeAllAppenders()
{
$appenderNames = array_keys($this->aai);
$enumAppenders = sizeof($appenderNames);
for ($i = 0; $i < $enumAppenders; $i++) {
$this->removeAppender($appenderNames[$i]);
}
}
/**
* Remove the appender passed as parameter form the list of appenders.
*
* @param mixed $appender can be an appender name or a {@link LoggerAppender} object
*/
public function removeAppender($appender)
{
if ($appender instanceof loggerappender) {
$appender->close();
unset($this->aai[$appender->getName()]);
} elseif (is_string($appender) and isset($this->aai[$appender])) {
$this->aai[$appender]->close();
unset($this->aai[$appender]);
}
}
/**
* Set the additivity flag for this Category instance.
*
* @param boolean $additive
*/
public function setAdditivity($additive)
{
$this->additive = (bool)$additive;
}
/**
* @deprecated Please use {@link setLevel()} instead.
* @see setLevel()
*/
public function setPriority($priority)
{
$this->setLevel($priority);
}
/**
* Only the Hierarchy class can set the hierarchy of a
* category.
*
* @param LoggerHierarchy $repository
*/
public function setHierarchy($repository)
{
$this->repository = $repository;
}
/**
* Set the level of this Category.
*
* @param LoggerLevel $level a level string or a level constant
*/
public function setLevel($level)
{
$this->level = $level;
}
public function setParent($logger) {
if ($logger instanceof Logger) {
$this->parent = $logger;
}
}
/**
* Set the resource bundle to be used with localized logging methods
*/
public function setResourceBundle($bundle)
{
return;
}
/**
* @deprecated use {@link LoggerManager::shutdown()} instead.
* @see LoggerManager::shutdown()
*/
public function shutdown()
{
LoggerManager::shutdown();
}
/**
* Log a message with the WARN level.
*
* @param mixed $message message
* @param mixed $caller caller object or caller string id
*/
public function warn($message, $caller = null)
{
$warnLevel = LoggerLevel::getLevelWarn();
if ($this->repository->isDisabled($warnLevel)) {
return;
}
if ($warnLevel->isGreaterOrEqual($this->getEffectiveLevel())) {
$this->forcedLog($this->fqcn, $caller, $warnLevel, $message);
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?