如何从 heroku 上不是 运行 的作业将日志发送到 papertrail heroku 附加组件?

How to send logs to papertrail heroku add-on from a job not running on heroku?

我有一个应用程序 运行ning 在 Heroku 上使用 papertrail 插件。一切正常,来自该应用程序的日志显示在其中。当我想从 AWS 等其他服务器上的作业 运行ning 登录到同一个 papertrail 帐户时,我的问题就来了。特别是,我正在尝试为某些情况下仅 运行 的作业设置一个 docker 容器(并且由于某些技术限制,它们在 heroku 中不能 运行)。

我正在检查 how to setup the unix loggers to automatically send logs to papertrail。我的问题是我没有 papertrail dns 或端口。 Heroku 只给出一个 papertrail 令牌。

知道如何使用来自不同 unix 服务器的附加凭据将日志发送到 papertrail 吗?

您可以使用 logspout,它可以将所有容器日志(从主机)路由到不同的位置,例如 papertrail。

你可以找到一个docker run网站的例子,下面是一个docker-compose例子,当你运行多个容器并想把所有日志收集在一起时,这个例子很方便。

目的地logs2.papertrailapp.com:55555由Papertrail在设置->日志目的地

中提供
logspout:
  image: gliderlabs/logspout:latest
  container_name: logspout
  restart: always
  volumes:
    - "/var/run/docker.sock:/var/run/docker.sock:ro"
  command: syslog+tls://logs2.papertrailapp.com:55555
  ports:
    - 8082:80
  networks:
    - my_network