xaraya / logconfig

日志系统配置模块

安装: 26

依赖项: 1

建议: 1

安全性: 0

星标: 0

关注者: 2

分支: 0

开放问题: 0

语言:Twig

类型:xaraya-module

1.0.0 2022-05-25 19:58 UTC

This package is auto-updated.

Last update: 2024-09-06 14:06:33 UTC


README

它是什么?

LogConfig 模块允许您配置 Xaraya 日志系统。它本质上是对位于以下配置文件中日志部分的包装:

  • var/config.system.php
  • var/logs/config.log.php

也就是说,该模块所执行的操作可以通过直接编辑这两个文件来完成。尽管如此,除非您了解自己在做什么,否则使用此模块来配置日志是推荐的做法。

如何使用它?

您可以

  • 列出当前配置的日志记录器。从这里,您可以编辑每个日志记录器的设置,包括是否激活。请注意,激活的日志记录器将在您在修改配置页面(见下文)中启用日志记录之前不执行任何操作。
  • 全局开启/关闭 Xaraya 日志。这使得 Xaraya 根据配置的日志记录器进行日志记录(或不记录)。修改配置页面中的此设置与基础模块的修改配置页面中的日志选项卡下的设置相同。后者可以在此找到:此处

日志记录器与 Xaraya 核心一同提供,位于 lib/xaraya/log/loggers。当然,您可以同时运行多个日志记录器,但请注意,这可能会降低性能,尤其是对于写入磁盘或数据库的日志记录器,会更快地消耗磁盘空间。

日志系统依赖于以下位置的时区设置:此处。您应将主机时区设置为要显示日志消息时间戳的时区。

降级系统

如果在此模块中设置了日志记录为开启,且没有日志记录器处于激活状态,则将有一个降级系统将日志记录到一个文本文件。此降级可以在基础模块的修改配置页面中的日志选项卡下进行配置,可以在此找到:此处

消息级别

Xaraya 日志记录器识别以下消息级别。每个日志记录器可以配置为跟踪这些消息级别中的一个或多个。

可用日志记录器

  • errorlog 日志记录器:将日志数据写入 Web 服务器的错误日志
  • html 日志记录器:将日志数据写入 HTML 文件
  • javascript 日志记录器:打开包含日志信息的调试窗口
  • mail 日志记录器:通过电子邮件将日志数据发送给收件人
  • mozilla 日志记录器:打开包含日志信息的调试窗口
  • simple 日志记录器:将日志数据写入文本文件
  • sql 日志记录器:将日志数据写入数据库表
  • syslog 日志记录器:将日志数据写入服务器日志

所有日志记录器都是位于 lib/xaraya/log/loggers/xarLogger.php 的父 xarLogger 类的子类。此类负责:

  • 定义 Xaraya 使用(如上所述)的日志消息级别
  • 定义显示中使用的日期时间格式
  • 基于 PHP 的 random_bytes 函数创建一个唯一的通用标识符(UUID)。这被多个日志记录器用于区分一个页面视图与下一个页面视图。

errorlog 日志记录器的说明

此日志记录器将写入 PHP 的错误日志,可以通过 PHP 函数 error_log() 访问,如此处所述。

mail 日志记录器的说明

邮件记录器会向您发送包含错误信息和一些附加信息的电子邮件。由于消息是由PHP代码创建的,因此您无法通过邮件模板编辑消息的布局和内容。

由于电子邮件及其主要电子邮件提供商的标准不断变化(改进),建议您首先在您的环境中测试Xaraya的电子邮件功能,并确保一切正常工作。您可以通过邮件模块发送测试消息来完成此操作。您还可以通过设置邮件模块的调试功能来获取有用的信息,该功能位于邮件模块的修改配置页面 这里

关于SQL记录器的说明

SQL记录器需要一个数据库表来写入其数据。您应该将此表添加到数据库中。对于MySQL,您可以使用以下代码

                CREATE TABLE `xar_log_messages` (
                  `id` int(10) NOT NULL,
                  `ident` varchar(32) NOT NULL,
                  `logtime` varchar(255) NOT NULL DEFAULT '',
                  `priority` tinyint(4) NOT NULL DEFAULT '0',
                  `message` text NOT NULL
                  PRIMARY KEY  (`id`)
                );
                

SQL记录器将所有消息记录到这个数据库表中。目前,没有界面来管理条目。在配置此记录器时,请确保您的SQL表参数条目与您创建的数据库表名称相对应。

关于syslog记录器的说明

根据其配置,此记录器将写入服务器日志,如这里所述。应注意的是,不同的服务器操作系统有不同的日志类型。我们不保证这些记录器配置的任何一种在任何情况下都会工作。

更多信息

有时会添加!

** LogConfig模块概述**
 版本1.0.0  2022-5-01