You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在生产环境中收集Symfony 5.4+Shopware 6.4的缓存指标?

无需自定义代码的缓存指标收集方案

1. 利用Redis内置统计(推荐,零侵入)

如果你的Shopware 6.4使用Redis作为缓存后端(Shopware生产环境默认推荐配置),Redis本身会自动记录缓存命中(keyspace_hits)和未命中(keyspace_misses)的统计数据,完全不需要修改任何代码:

  • 直接执行redis-cli INFO stats命令就能查看这些原始指标
  • 可通过Prometheus+Grafana这类监控工具定期采集Redis的这些指标,再通过公式keyspace_hits/(keyspace_hits+keyspace_misses)计算命中率
  • 这种方式性能开销可以忽略不计,完全不影响生产环境运行

2. 启用Symfony Cache组件的统计功能

Symfony 5.4的Cache组件内置统计能力,只需通过配置开启,无需编写代码:

  1. 在config/packages/cache.yaml中为目标缓存池开启统计:
framework:
    cache:
        pools:
            cache.app:
                options:
                    enable_stats: true
            cache.system:
                options:
                    enable_stats: true
  1. 配置Monolog日志记录缓存事件:在config/packages/monolog.yaml中添加专属日志处理器:
monolog:
    handlers:
        cache_stats:
            type: stream
            path: '%kernel.logs_dir%/cache_stats.log'
            level: info
            channels: ['cache']
  1. 后续缓存的命中、未命中事件会自动写入cache_stats.log,可通过ELK Stack等日志分析工具提取并分析这些数据

3. 使用Shopware 6官方监控集成

Shopware 6.4支持通过官方插件集成Prometheus监控,无需自定义代码:

  • 安装Shopware官方提供的Prometheus插件(部分版本可能预装)
  • 完成插件配置后,它会自动将缓存命中/未命中等指标暴露到Prometheus采集端点
  • 结合Grafana即可快速实现缓存指标的可视化监控

内容的提问来源于stack exchange,提问作者Thomas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 06:40:53