stefanfroemken / cache-analyzer
Analyze data sent to TYPO3 Caching Framework before it is written
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 1
Forks: 1
Open Issues: 0
Type:typo3-cms-extension
Requires
- typo3/cms-core: ^13.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.52
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^11.0.3
- typo3/testing-framework: dev-main
Replaces
- typo3-ter/cache-analyzer: 1.0.1
- typo3-ter/cache_analyzer: 1.0.1
README
With cache_analyzer
you can analyze the data which will be written to
the Caching Framework. You can filter it by specific keywords or regular
expressions. You can also enrich the logged data with environment variables
like GET, POST, a Backtrace and much more. Also, you could throw exceptions to
prevent writing invalid cache entries into the Caching Framework.
The initial idea behind this was, that "sometimes" my website showed
empty href
attributes of HTML a
tags. I searched a very long time to find
that error, but without success. I then hooked into the Caching Framework to
protocol everything which matches href=""
. A day later of logging data, I
found the issue and saw that the site was called with an invalid L
parameter.
cache_analyzer
is a debugging tool and should not be part of production
mode forever. As it hooks into the Caching Framework it may slow down your
site. So, please uninstall that extension after you have found your issue.
Installation
Installation using Composer
The recommended way to install the extension is using Composer.
Run the following command within your Composer based TYPO3 project:
composer require stefanfroemken/cache-analyzer
Installation as extension from TYPO3 Extension Repository (TER)
Download and install cache_analyzer
with the extension manager module.
Minimal setup
- Create a record of type "Cache Expression" on root page (PID: 0)
- Enter fields
title
,expression
and at lease onecache configuration
- Clear Cache
- Wait and let your website visitors requests your website
- If an expression matches the log in
var/log
will be filled with additional environment variables
Have a look into the log to see, which request creates your log entry