pantheon-quicksilver/new-relic-apdex-t

在创建Multidev时设置New Relic Apdex T值。

v1.0.0 2021-10-28 23:39 UTC

This package is auto-updated.

Last update: 2024-08-29 05:44:24 UTC


README

所有在Pantheon上的站点都包含访问New Relic APM Pro的权限。 此应用程序性能监控依赖于站点所有者设置时间基准进行衡量。理想情况下,您的Drupal或WordPress能够快速响应用户请求。如果站点响应缓慢,New Relic会向您发出警报。

问题在于,您想在何处设置标准?默认情况下,New Relic使用0.5秒作为目标时间。这个值在Apdex(应用程序性能指数)公式中被称为“T”。

除了监控服务器(Drupal或WordPress)的响应速度外,New Relic还可以监控真实浏览器渲染您站点的速度。浏览器性能也使用相同的Apdex公式进行衡量。默认情况下,New Relic在浏览器Apdex中使用了更为宽泛的7秒作为T值。

我们建议任何在站点上工作的团队讨论服务器端和客户端的性能期望,并相应地设置T值。当您使用Pantheon Multidev开发新功能时,您甚至可能希望Multidev环境比测试或生产环境有更严格的T值。

这个Quicksilver示例展示了您如何在创建Multidev环境时设置自定义的T值。否则,每个环境将使用服务器和浏览器默认的0.5秒和7秒值。

为了实际设置默认值,此脚本首先获取一个API密钥,然后使用该密钥与New Relic的REST API交互,根据开发(或测试/生产)环境中的现有值设置T值。

要求

虽然这些脚本可以单独下载,但它们旨在与Composer一起使用。请参阅下一节的安装说明。

  • Quicksilver脚本项目和脚本名称本身应保持命名一致性。
  • README应包括对脚本应运行在哪些钩子和阶段类型的建议。
    • 例如,“此脚本应在clone_databaseafter阶段运行。
    • 提供可以粘贴到pantheon.yml文件中的片段。

安装

您应该在站点的仪表板中激活New Relic Pro

该项目旨在通过站点的composer.json文件包含,并通过Composer Installers放置在其适当的安装目录中。

为了使此功能正常工作,您应该在您的composer.json文件中有以下内容

{
  "require": {
    "composer/installers": "^1"
  },
  "extra": {
    "installer-paths": {
      "web/private/scripts/quicksilver": ["type:quicksilver-script"]
    }
  }
}

可以通过以下命令包含该项目

composer require pantheon-quicksilver/new-relic-apdex-t:^1

如果您正在使用以下示例PR工作流程项目之一(Drupal 8Drupal 9WordPress)作为您站点的起点,这些条目应该已经存在于您的composer.json文件中。

一个需要注意的问题是,这个脚本不能作为创建Multidev的一部分的第一个或唯一的脚本。在新Relic API识别Multidev环境之前,该环境需要至少收到一个之前的请求。

示例 pantheon.yml

以下是一个示例,展示了如果这是您想要使用的唯一Quicksilver操作,您的pantheon.yml将看起来像什么。

api_version: 1

workflows:
  sync_code:
    after:
      - type: webphp
        description: Drush Config Import
        script: private/scripts/drush_config_import.php
      - type: webphp
        description: Set Apdex T values
        script: private/scripts/quicksilver/new-relic-apdex-t/new_relic_apdex_t.php