问题
I've just started using the asset_sync gem and my assets seem to be being compiled out of order, with Sass files unabled to access variables defined in other Sass files. What would really help me narrow down the issue is being able to see exactly what is going on during precompilation, but both rake assets:precompile
and heroku run rake assets:precompile
doesn't seem to offer a verbose option. All I get is some higher level output followed by a rake aborted!
and a stack trace. Tailing heroku logs gets me nothing, so how can I get a more detailed log of what is going on during asset precompilation on Heroku?
回答1:
Turns out a combination of the following gets you some more verbocity. You get output when a file is precompiled, but not as it is being precompiled, so if it hangs you can't see what it's choked on.
Use the --trace flag
$ heroku run rake assets:precompile --trace
Set the log to use STDOUT in production.rb:
config.logger = Logger.new(STDOUT)
回答2:
In case a deploy fails during asset precompile phase and you want to debug it, you can force heorku to push without precompiling assets by adding an empty public/manifest.yml
. This will allow you to run $heroku run rake assets:precompile --trace
as @Pedr described in his answer.
See Is it possible to skip the asset precompile step for a single git push on Heroku? for more details.
来源:https://stackoverflow.com/questions/13360085/verbose-output-from-rake-assetsprecompile