deleu/sensor

在AWS Lambda上使用X-Ray进行PHP性能分析

安装: 4

依赖项: 0

建议者: 0

安全: 0

星星: 1

关注者: 2

分支: 0

开放问题: 0

类型:项目

dev-master 2019-07-22 21:25 UTC

This package is auto-updated.

Last update: 2024-09-23 09:22:39 UTC


README

非生产就绪。

R-Xray

由X-Ray驱动的AWS Lambda可观测性

Laravel上的使用

在你的服务提供者中定义一个XRayClient实例。

$this->app->bind(XRayClient::class, function () {
    return new \Aws\XRay\XRayClient([
        'version' => '2016-04-12',
        'region' => 'eu-west-1',
        'credentials' => [
            'key' => 'your-key',
            'secret' => 'your-secret',
        ]
    ]);
});

然后扩展你想要Tap的类,并将传感器附加到它上。

$this->app->extend(LoginController::class, function (LoginController $service) {
    $sensor = $this->app->make(\Deleu\Sensor\Sensor::class);

    $tap = new \Deleu\Sensor\Tap($service, $sensor);

    return $tap->listen(['showLoginForm']);
});

限制

不能Tap一个final类。这是对Ocramius/ProxyManager的限制。

理想

  • 提供一个简单的性能分析工具,帮助诊断Lambda函数执行缓慢。
  • 从外部连接到代码,这样就不需要在你的核心类内部进行代码更改。
  • 本项目不是为了替换完整的性能分析工具,而是简单地帮助确认你的Lambda函数中可能缓慢的部分

需要帮助

我已经习惯了Laravel提供的出色工具很长时间。我对Symfony容器一无所知,也不知道如何在不使用illumiate/config或静态属性的情况下提供灵活的配置。如果你喜欢这个想法,并愿意帮助我把这个想法带到Laravel以外的社区,我会非常高兴。