我正在尝试让 New Relic 基础设施代理监控我的 heroku 应用程序。
文档说要运行以下命令:
docker run \
-d \
--name newrelic-infra \
--network=host \
--cap-add=SYS_PTRACE \
--privileged \
--pid=host \
-v "/:/host:ro" \
-v "/var/run/docker.sock:/var/run/docker.sock" \
-e NRIA_LICENSE_KEY=[Key]\
newrelic/infrastructure:latest
但是我实际上应该在哪里运行或放置它,以便它在我的 Heroku 应用程序上运行?
我的理解是,由于 Heroku 的架构,这是不可能的。
我有兴趣尝试 New Relic Redis 集成。然而,我们在 Heroku 上使用“heroku data for redis”服务。这意味着 Redis 作为 Heroku 中的托管服务运行,并且只有 Heroku 可以安装在同一服务器上运行的服务。
换句话说:New Relic 基础设施代理被设计为与被监控的服务(在我的例子中是 Redis)在同一台服务器上运行。除非你直接控制服务器,否则这是不可能的,并且在像 Heroku 的 Redis 这样的托管服务上,没有办法安装这样的东西。