跳转至

实时日志监控(logs 命令)

实时日志监控

log 命令允许您查看实时生成的日志,这些日志记录了服务器上发生的各种事件,包括访客访问托管站点页面、以及不同工具运行对内产生的日志。

无论您是想调试错误、监控应用程序或工具(例如 PHP、邮件、MySQL 等),还是仅仅想检测访客、爬虫/机器人等等,持用此工具至关重要,这可以让您轻松、快速地实时完成这些任务。

命令格式:

sudo log <域名> <选项>

选项:

  • -error
  • -le
  • -mail
  • -mysql
  • -access-log
  • -php
  • -purge
  • -ssh
  • -syslog
  • -wp

* 已弃用:-only-error

示例:

# 开启 WordPress 调试模式
sudo log example.com -wp=on

# 开启访问日志
sudo log example.com -access-log=on

# 实时显示访问日志
sudo log example.com

*使用 Ctrl+C 退出界面。


Nginx 访问日志

默认情况下会禁用 Nginx 访问日志。

激活通用访问日志选项,并应用于此后创建的所有新网站:

sudo log -access-log=on

译者注:原为 sudo log -access-log=off

激活特定站点的日志记录功能:

sudo log example.com -access-log=on

与之相对,可以使用 -access-log=off 选项再次禁用日志。

Nginx 日志格式和指标

启用访问日志后,可收集各种高价值指标信息。除了标准格式之外,我们还提供了一种扩展日志格式,以便于与 DatadogAmplify 等外部工具集成。

只需在 Webinoly 配置文件 设置 nginx-log-format:extended,
此外,也可在此处更改 Nginx 的错误日志级别。

您可以设置自定义日志格式以包含您自己的指标,只需设置 nginx-log-format:custom 并在 /etc/nginx/conf.d/*.conf.log 文件中,基于 we_log_custom 名称添加您自己的配置。

[! ]

Webinoly 具有原生的 Datadog 集成适配

现代日志管理与分析
以任何规模、任何预算搜索和分析您的日志

Datadog 日志管理将日志、指标和跟踪数据整合到一个统一视图中,为您提供丰富的上下文信息,以便分析日志数据。无论您是排查问题、优化性能还是调查安全威胁,都能从中受益。

了解更多

如何查看我的网站访问日志?

查看特定站点的日志:

sudo log example.com

查看我的服务器上托管的所有网站的访问日志:

sudo log

上述选项只显示访问事件日志,省略了 "error" 的错误事件。

如何查看错误日志?

举例来说,我们想查看PHP 在执行特定 WordPress 页面期间时生成的 "warning" 警告或 "error" 错误信息。

sudo log example.com -error

同样地,如果我们想查看服务器上托管的所有网站生成的错误日志,可以使用以下命令:

sudo log -error

* 您可更改日志命令输出显示的行数,默认为 10 行。
随时可以在任何日志命令中添加 -lines 参数,
例如sudo log example.com -lines=25
或者直接在 Webinoly 配置文件 使用 log-lines:25 变量,全局永久修改该值。

** 访问日志和错误日志是针对整个域名的,因此 -subfolder 选项将被忽略,不过 WordPress 网站除外,是因为当特定网站安装在子目录中时,需要使用该参数来启用 WP 的调试模式,但即使在这种情况下,相关日志仍然是针对整个域名记录的。

WordPress 调试

在 WordPress 的 wp-config.php 文件中配置调试模式后,我们可以选择生成一个 debug.log 文件,这通常位于 /wp-content 目录中。

要从命令行实时查看该文件中生成的事件,可以使用以下命令:

sudo log example.com -wp

此外,我们还提供了一个选项用来启用/禁用您任何站点上的 WordPress 调试模式:

sudo log example.com -wp=on

WordPress 调试模式有一个把调试信息显示在HTML页面内的选项,这个选项默认情况下是启用的。若要禁用此功能,而仅是将调试信息发送到日志文件,请执行以下操作:

sudo log example.com -wp=on -display=off

此外,您还可以在此处设置 WordPress 环境类型

sudo log example.com -wp=on -env=development

如何查看应用程序或工具生成的日志?

Webinoly 支持可视化显示由 PHP、MySQL、邮件、系统日志、SSH 和 Let’s Encrypt 生成的事件。

sudo log -php
sudo log -ssh
sudo log -mail
sudo log -syslog
sudo log -le

-fpm-php 选项作用相同,而 -le 代表 Let's Encrypt。

MySQL 日志

始终启用 错误日志

sudo log -mysql=error

* 在 v1.11.0 版本之前创建的服务器上,所有 MySQL 日志都会发送到 Syslog,这是 MySQL 的默认配置。自此版本起,我们已将此配置更改为使用单独的日志文件。

通用日志 包含所有查询,对于调试或审计查询用途相当有用。

sudo log -mysql=general
sudo log -mysql=general -enable
sudo log -mysql=general -disable

慢速问题查询日志 记录了所有执行时间超过 -long-query-time(默认为 10 秒)的查询,对于查找导致性能问题的查询非常有用。

sudo log -mysql=slow
sudo log -mysql=slow -enable
sudo log -mysql=slow -enable -long-query-time=3
sudo log -mysql=slow -disable

二进制日志 主要用于数据复制。

sudo log -mysql=binary
sudo log -mysql=binary -enable
sudo log -mysql=binary -disable

清除日志文件

永久删除 /var/log 目录下所有 .gz 扩展名的压缩日志文件(轮换日志)。

sudo log -purge

使用 -purge=force 选项可以跳过提问。

此外,您还可以删除特定软件包的日志文件:
(参数:nginx、letsencrypt、mysql、redis、all、force)

sudo log -purge=nginx

个人建议:如果你的磁盘空间太小,导致存档日志文件过多而无法处理,就换台存储空间更大的服务器吧。