首页 >后端开发 >php教程 >loggly更有效的PHP记录

loggly更有效的PHP记录

William Shakespeare
William Shakespeare原创
2025-02-18 08:31:09705浏览

loggly更有效的PHP记录

>本文由loggly赞助。感谢您支持使SitePoint成为可能的赞助商。 服务器超载,库在发送电子邮件时抛出异常,错误:不幸的是,这些错误是每个系统的一部分。如果您负责使系统运行良好,那仍然是冷舒适的。更重要的是,我敢打赌,您已经有所有要解决它们坐在日志文件中的数据。

>

>但是,除非您有办法存储,处理和分析该数据,否则可以访问该数据。在本文中,我将通过使用适当的日志管理解决方案(在这种情况下为loggly)使用PHP记录库来更有效地使用此数据。我还将展示一个如何使用日志管理服务来存储和分析它们的示例。

钥匙要点

Loggly是一种流行的PHP记录工具,可提供集中的日志管理,实时监视,高级搜索功能,并支持广泛的日志格式。它可以轻松地与PHP集成,并且对于从多个来源生成日志的大规模应用特别有用。

loggly可以轻松地与PHP日志记录库和PHP框架Laravel一起集成。它也可以在云平台Heroku上进行配置,以确保在生产环境中进行适当的日志跟踪。

> loggly提供了一种令人印象深刻的搜索,组和可视化日志数据的方法。它在其搜索页面上提供了一组工具,以过滤,分析和可视化日志。 loggly还提供了一个警报工具,每当在应用程序上发生操作时,可以配置为发送通知。
  • php记录
  • 使用PHP登录时,我们倾向于使用error_log和trigger_error函数,或者我们可以使用错误处理程序来使记录过程更通用。如果选择这种方式,则需要将功能包裹在某种对象中,以使事情变得更加干净,灵活。您还可以使用Syslog函数直接将日志转发到系统以处理它们。
  • >
>但是,如果您必须同时登录多个位置,或者根据错误级别将日志发送到给定服务,该怎么办?与其使用内置工具,通常更容易使用日志记录库。

>

为什么我使用独白

>一些推荐图书馆,例如log4php,klogger和konolog试图解决这些常见问题,但它们有一些局限性,而独白比它们具有很大的优势。
  • 它是PSR-3符合的
  • 包括用于各种服务的处理程序,包括loggly。
  • >
  • 支持格式器以自定义日志输出。
  • >
  • >用于开发记录的帮助者,例如browserconsolehandler登录到浏览器控制台的帮助。
  • >

>确保检查文档以获取有关包装的更多详细信息。最受欢迎的框架包括“单基因”开箱即用,因此请检查文档中的完整列表。如果您没有安装独白,则可以使用作曲家将其添加到项目中。

openlog('php', LOG\_CONS | LOG\_NDELAY | LOG\_PID, LOG\_USER | LOG\_PERROR); syslog(LOG\_ERR, 'Error!'); syslog(LOG\_INFO, 'Hello World!'); closelog();

记录的问题

>由于记录需要写入磁盘,进行备份和搜索文件,因此某些公司创建了一个单独的服务来处理该作业(通常是一组脚本或应用程序,以在发生某种错误时搜索信息,以搜索信息)。随着您的公司或服务扩大,这很快就会成为开发人员和分析师的噩梦。另一个更好的选择是基于云的日志存储和分析的服务,这有很大的好处,因为我们将在本文中进一步讨论。

什么是loggly?

>有几种日志管理服务将使存储和分析日志更加容易。 Loggly是最受欢迎的,它有几种与PHP集成的方法。一旦Loggly收到日志,您将能够以令人印象深刻的方式进行搜索,分组和可视化数据。您可以免费尝试。您只有在网站上的流量相当大的情况下才付款。首先,让我们查看如何在服务器上安装它以跟踪系统日志。>

使用loggly with holog

>如果您决定使用独白软件包库进行记录过程,则很容易与任何日志管理服务(包括Loggly。

默认情况下,它带有logghandler的loggly。

创建单一实例后,我们将把处理程序推向注册处理程序列表,您需要如前所述提供令牌。标签零件是可选的,但是通过相应地将日志记录分开是一个好主意。现在,我们准备开始使用独白开始登录我们的服务。

composer <span>require monolog/monolog</span>
laravel

loggly

由于Laravel正在使用独白进行记录过程,因此我们可以轻松地将其处理程序绑定到它。
<span>$logger = new <span>\Monolog\Logger</span>('local_test_app'); $logger->pushHandler(new <span>\Monolog\Handler\LogglyHandler</span>('YOUR_TOKEN/tag/monolog'));</span>
loggly更有效的PHP记录

>在Heroku上配置loggly

>将应用程序移至生产时,您需要确保记录跟踪正常工作。在本节中,我们将登录到我们的Heroku应用程序。 Heroku使用日志排水系统来帮助您将日志转发到外部日志登录服务。您可以检查文档以获取有关安装过程的更多详细信息。

>
openlog('php', LOG\_CONS | LOG\_NDELAY | LOG\_PID, LOG\_USER | LOG\_PERROR); syslog(LOG\_ERR, 'Error!'); syslog(LOG\_INFO, 'Hello World!'); closelog();

>您需要使用您可以在源设置>“客户令牌”页面上找到的实际令牌更新令牌。如果您已经登录了Heroku实例,则可以省略Heroku_app_name,否则您需要指定您的Heroku应用程序名称。

>排水URL以标签/heroku结束,这将有助于我们使用定义的标签过滤我们的日志,我们将稍后再讨论。

loggly更有效的PHP记录

> loggly可以轻松地与Heroku这样的任何外部服务集成。查看loggly文档以获取日志传输方法和可用脚本或库的概述。

>用loggly

分析日志

>现在我们已经讨论了如何将您的日志发送到Loggly,我们可以开始分析和使用数据。搜索页面提供了一组工具来过滤,分析和可视化我们的日志。>

loggly更有效的PHP记录>仪表板显示了您的事件的时间表以及底部的日志列表。页面的顶部包含一个搜索框和一个日期范围要过滤事件,您可以选择最后30分钟或指定自定义日期范围,然后单击搜索以验证。

>过滤日志

>您可以使用搜索输入使用特定术语(例如“电子邮件”或“ event_*”)过滤数据。 loggly将在日志条目的正文内搜索,并在页面底部显示结果。您还可以使用字段进行搜索,例如“ TAG:独白”来过滤前从独白中发送的事件。左侧菜单称为动态字段资源管理器,它可以帮助您识别可用的字段过滤器。

>让我们以以下示例更好地了解如何分析日志。> loggly更有效的PHP记录内部服务器错误

当您的服务器无法处理用户的有效请求时,

会抛出内部服务器错误。在PHP中,可以在Apache日志中找到有关此错误的详细信息,如果您使用PHP注册错误处理程序,则可以对您自己的日志文件进行分组,因此您可以根据日志消息进行分析并修复错误。

>您可以使用页面左侧的字段资源管理器小部件使用Apache 5xx状态代码过滤日志。搜索可以像“ apache.status:500”一样具体,也可以使其更通用,例如“ apache.status:[500至599]”。loggly更有效的PHP记录

致命错误

在PHP中,当造成致命错误时,程序将停止执行并将错误记录到您的系统中。由于不应该在生产中发生致命错误,因此Loggly提供了一种简单的方法来跟踪来自不同来源的错误严重性。 “ syslog.appname:php”术语只会显示PHP日志,现在我们需要使用Syslog显示特定严重性的错误。Severity:错误术语,我们还可以指定一个范围,例如“ syslog.seslog.severity.severity.severity.severity:[警告到错误警告错误) ]”。您可以阅读有关文档中可用字段列表的更多信息。

>

openlog('php', LOG\_CONS | LOG\_NDELAY | LOG\_PID, LOG\_USER | LOG\_PERROR); syslog(LOG\_ERR, 'Error!'); syslog(LOG\_INFO, 'Hello World!'); closelog();
>大多数时候我们将结果显示为列表,但是您可能需要从页面底部的图表列表中使用另一个图表。

loggly更有效的PHP记录警报

>我在loggly上最喜欢的功能之一是警报工具。您可以在应用程序上发生操作时配置loggly,以将通知发送到您的电子邮件或其他服务。让我们详细介绍该过程。

首先,您需要创建一个新的搜索并保存它。让我们以此搜索为例:“ syslog.appname:php and php.level:“致命错误”

>这将向我们显示系统上的PHP致命错误列表。接下来,我们需要保存此搜索条件。单击仪表板页面右上角的小星星,选择“将此搜索另存为…”项目,然后命名搜索。

loggly更有效的PHP记录 loggly更有效的PHP记录>现在我们可以转到“警报”列表,然后单击“添加新的”以创建一个新的警报。在给您的警报中给出名称和描述后,您可以从列表中选择保存的搜索和条件(警报在5分钟内计数> = 1> 1)。在我的示例中,我将发送一封电子邮件通知,但是如果您有一个将错误传递给团队进行验证的服务,则可以将其配置为将其发布到端点。您可以阅读有关文档的警报的更多信息。

>

loggly更有效的PHP记录结论

loggly可以更改您处理日志的方式,从regexp搜索到归档。该服务还具有出色的UX,并且文档非常简单,涵盖了大多数可能性。您可以从免费试用器开始测试所有功能。如果您有任何疑问,请随时将它们发布在下面,我会尽力回答它们。

>

您如何使PHP记录更容易?

经常询问有关使用loggly

登录的PHP的问题(常见问题解答)

是什么使Loggly成为PHP日志记录的好选择? loggly脱颖而出,因为其可靠的功能和易用性,它是一种功能强大的PHP记录工具。它提供集中的日志管理,这意味着您可以从一个地方访问和管理所有日志。这对于从多个来源生成日志的大规模应用程序特别有用。 Loggly还支持广泛的日志格式,包括PHP,使其用于不同应用程序。它提供实时的日志监视和分析,可以帮助迅速识别和解决问题。此外,Loggly提供了高级搜索功能,使查找特定的日志条目更容易。

> loggly与其他php日志记录库相比如何?

与其他PHP记录库相比,Logggly提供更多高级的库特征。尽管大多数库都允许基本的日志记录功能,但通过提供集中式日志管理,实时监视和高级搜索功能,loggly迈出了一步。它还支持更广泛的日志格式。但是,重要的是要注意的是,记录库的选择很大程度上取决于您应用程序的特定需求。有些开发人员可能更喜欢较小的应用程序的简单库,而另一些开发人员可能需要loggly的稳健功能,以适用于较大,更复杂的应用程序。

>

> loggly易于与php?

是的,loggly是相对易于与PHP集成。它提供了一个直接的API,您可以使用该API将日志从PHP应用程序发送到Loggly。该过程涉及安装loggly库,使用loggly客户令牌配置它,然后使用库的功能发送日志。 loggly文档中提供了详细的说明和代码示例,使集成过程甚至对于初学者而言更容易。

>

>我可以将loggly用于实时PHP日志监视吗? Loggly的关键特征之一是其实时日志监视功能。这意味着您可以在生成的PHP日志中查看和分析它们,从而使您可以及时识别和解决问题。 loggly还提供警报功能,当日志中满足某些条件时,可以通知您。这对于检测和响应关键问题特别有用。

> loggly的搜索功能如何工作?

loggly的搜索功能旨在使查找特定的日志条目变得更容易。您可以根据各种参数搜索日志,例如日志级别,日志源或日志中包含的任何其他数据。 Loggly还支持高级搜索查询,使您可以将多个参数和操作员组合起来,以获得更精确的搜索结果。搜索结果以用户友好的格式显示,并具有进一步过滤和对日志进行分类的选项。

> loggly的php日志记录有哪些替代方法?

虽然loggly是用于PHP日志记录的强大工具,但您可能会考虑其他一些库。其中包括独白,这是一个广泛使用的PHP日志记录库,并支持各种日志处理程序; Apache log4php,PHP的多功能记录框架;以及Klogger,一个简单的基于文件的日志记录库,用于PHP。这些图书馆中的每个图书馆都有其自己的优点和劣势,因此最佳选择取决于您的特定需求。

> loggly适合大规模的PHP应用程序吗?

是的,是的,loggly非常适合用于大规模的PHP应用。其集中式日志管理功能使得从多个来源处理日志变得更加容易,这在大型应用程序中很常见。此外,其实时监视和高级搜索功能可以帮助管理此类应用程序生成的大量日志。但是,重要的是要注意loggly是一项付费服务​​,因此在选择用于大规模应用程序的记录工具时,您需要考虑成本因素。

>我可以使用loggly用于PHP错误记录吗?

> logggly对于PHP日志记录的安全性如何?

loggly认真对待安全性并实施了几种措施,并实施了一些措施保护您的日志数据。这包括对公交和休息时的数据加密,定期的安全审计以及遵守SOC 2等行业标准。但是,与任何第三方服务一样,重要的是要审查其安全惯例并确保它们满足您的要求。>

以上是loggly更有效的PHP记录的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn