如何在Symfony上最后清除和重建缓存时存储?

时间:2014-07-31 17:35:27

标签: php bash symfony apc

我为Symfony应用程序创建了一个部署脚本,用于从git-repo获取更新。它下载依赖项,更新架构,安装资产,然后清除和预热缓存

它运作良好(据我所知?)但我需要一种方法来获取/存储最后一次清除缓存。我最好不要写一个文件或从shell更新数据库中的记录,而是检测/获取它最后一次清除并在我的Symfony应用程序中重建。

有没有办法做到这一点?我想到了获取prod缓存文件夹的创建时间..

这是我写的脚本:https://github.com/StrikeForceZero/DeploySymfony/blob/master/DeploySymfony.sh

1 个答案:

答案 0 :(得分:2)

执行此操作的一种方法是使用Symfony内置的日志服务Monolog(http://symfony.com/doc/current/cookbook/logging/monolog.html)写入Symfony日志。您可以创建脚本执行以写入日志的Symfony控制台命令(http://symfony.com/components/Console),也可以使用继承覆盖要记录的Symfony方法之一,只需调用记录器服务,更新日志,并调用其父方法。

例如,不要调用app / console cache:clear'您可以调用继承自CacheClearCommand的子方法,更新configure方法以为命令设置新名称,覆盖execute方法以调用日志(在子级执行其父级之前或之后),这应该是关于它的。在部署脚本中调用自定义缓存:clear命令而不是Symfony。