我有一个应用程序在Heroku上运行,它使用了papertrail插件。一切都很完美,该应用程序的日志显示在那里。当我想从AWS等其他服务器上运行的作业登录到同一个书面记录帐户时,我的问题就来了。特别是,我试图为只在特定情况下运行的作业设置一个docker容器(由于一些技术限制,它们不能在heroku中运行(。
我已经检查了如何设置unix记录器来自动将日志发送到papertrail。我的问题是我没有papertrail dns或端口。Heroku只提供papertrailtoken。
知道如何使用来自不同unix服务器的附加凭据将日志发送到papertrail吗?
您可以使用logspout,它可以将所有容器日志(从主机(路由到不同的位置,例如到papertrail。
您可以找到该网站的docker run
示例,下面是一个docker-compose
示例,当您运行多个容器并希望将所有日志收集在一起时,它非常方便。
目的地CCD_ 3由Papertrail在Settings(设置(->日志目的地
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