2012-02-10 73 views

回答

6

要獲取日誌,只需在您的shell中輸入heroku logsheroku logs -n X

其中X可以是任何數字,最大爲1500,表示您想要獲取的行數。如果你想存檔你的日誌,你需要使用syslog漏洞,如here概述。

+0

一個很好的答案,但不是我問。我知道如何通過執行'heroku日誌'來獲取日誌。我問的是日誌文件不是stdout日誌。 – Bobo 2012-02-10 20:02:16

+0

我(更具體地)在我的答案的第二部分解決您的問題。要獲取日誌「文件」(或存檔),您需要使用syslog漏洞。 Heroku不保存日誌文件。 – 2012-02-10 20:25:41

+0

哦謝謝。所以這樣做是100美元/月? – Bobo 2012-02-10 20:32:24

13

Logs are streams, not files.

要訪問日誌流,您只需heroku logs,你會看到完整的流。您使用應用程序記錄器輸出的任何內容都將在此處顯示。

您沒有日誌文件。

如果您希望捕獲文件並將其放在牆上,請註冊服務(如Papertrail),並使用syslog漏洞將Heroku日誌記錄到那裏。從那裏他們可以轉儲到S3。

+0

無需爲此付費,請參閱下面的答案。 – 2012-09-17 08:58:22

+0

是的,我提到你也可以免費做到這一點... – 2012-09-17 09:54:56

1

使用此外殼命令在本地保存日誌使用Heroku的CLI:

heroku logs -n number_of_lines --app application_name >> file_name.txt 

>>將命令輸出追加到該文件,並將其保存:file_name.txt

number_of_lines限制爲最多1500由heroku。

樣品命令:

heroku logs -n 500 --app sample_app >> logs.txt 

得益於Anuja Joshi's answer