您正在查看 Apigee Edge 文档。
前往
Apigee X 文档。 info
日志轮换是一种机制,旨在简化生成大量日志文件的系统的管理。它允许自动轮替、压缩、移除和邮寄 日志文件。
在 Edge for Private Cloud 中,每个 Apigee 组件上的一些主要日志文件都配置了 默认轮替机制。
例如,在 Router 组件上,以下文件配置了默认轮替 机制:
/opt/apigee/var/log/edge-router/logs/system.log/opt/apigee/var/log/edge-router/logs/events.log/opt/apigee/var/log/edge-router/logs/startupruntimeerrors.log/opt/apigee/var/log/edge-router/logs/configurations.log/opt/apigee/var/log/edge-router/logs/transactions.log
但是,Apigee 组件中某些日志文件未配置默认
轮替。在 Apigee 组件 Router 中,edge-router.log 文件就是其中一个
默认未配置日志轮换的文件。
您可以使用不同的实用程序/框架(例如 logrotate、
logback 或 log4j)启用日志轮换。本文档介绍了如何使用
logrotate 和 crontab 为 /opt/apigee/var/log/edge-router/edge-router.log 文件配置日志
轮替。
准备工作
- 如果您不熟悉
logrotate配置,请参阅 logrotate 手册。 - 如果您不熟悉
crontab配置,请参阅 crontab 手册。
在 Router 上为 edge-router.log 启用日志轮换
本部分介绍了如何在 Edge Router 上为
/opt/apigee/var/log/edge-router/edge-router.log 日志启用日志轮换。
以下步骤介绍了如何为 edge-router.log 文件启用日志轮换。
-
在编辑器中打开 Router 机器上的
/opt/apigee/edge-router/logrotate/logrotate.conf文件。如果该文件不存在,请创建它。例如:vi /opt/apigee/edge-router/logrotate/logrotate.conf
- 向该文件添加一个类似于以下所示的代码段:
/opt/apigee/var/log/edge-router/edge-router.log { missingok copytruncate rotate 5 size 10M compress delaycompress notifempty nocreate sharedscripts }
- 保存更改。
- 使用以下命令打开 Apigee 用户的
crontab:sudo crontab -u apigee -e
- 将以下 Cron 作业添加到 Apigee 用户的
crontab:0 0 * * * nice -n 19 ionice -c3 /usr/sbin/logrotate -f /opt/apigee/edge-router/logrotate/logrotate.conf
- 保存
crontab,并在下次运行 Cron 作业期间监控日志轮换。
验证 Router 上 edge-router.log 的日志轮换
- 计划的 Cron 作业运行后,日志文件将轮替。从上面的示例中可以看出,Cron
作业计划每天凌晨 00:00 运行,以轮替
edge-router.log文件。 - 前往
/opt/apigee/var/log/edge-router/目录,并验证edge-router.log文件是否已轮替。日志文件列表示例:
ls -ltrh | grep 'edge-router'
-rw-r--r--. 1 apigee apigee 6.0K Feb 16 00:00 edge-router.log.1.gz -rw-r--r--. 1 apigee apigee 3.0K Feb 16 01:23 edge-router.log
上面的输出表明
edge-router.log文件已轮替并另存为 GZ 文件。 - 如果您没有看到
edge-router.log文件正在日志轮换,请验证您是否正确按照在 Router 上为 edge-router.log 启用日志轮换中列出的所有步骤操作。如果您遗漏了任何步骤,请再次正确重复所有步骤。 - 如果您仍然无法让日志轮换正常运行,请与 Apigee Edge 支持团队联系。