emteknetnz / silverstripe-dev-build-benchmark
Benchmarks the dev-build time of a Silverstripe application
Installs: 13
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 1
Type:silverstripe-vendormodule
Requires
- php: >=7.1
- silverstripe/framework: ^4 || ^5
- silverstripe/reports: ^4 || ^5
This package is auto-updated.
Last update: 2024-11-03 05:38:25 UTC
README
Will benchmark the time taken to run queries during the last dev/build
on a Silverstripe application, including deployments, and show them in a report format in the CMS
Requirements
This module works with Silverstripe 4 and 5.
You must be using MySQL or MariaDB to use this module. The default MySQLDatabase
class will be replaced with the DevBuildBenchmarkMySQLDatabase
class in this module via injector. If you have already replaced the MySQLDatabase
class with another class then this module will not work.
Installation
composer require emteknetnz/silverstripe-dev-build-benchmark
The next time dev/build
is run, the benchmark data will be recorded and reports will be ready to view in the CMS.
Reports
There are two reports available. You must have ADMIN
permissions to view the reports.
dev/build summary
The dev/build summary
report (DevBuildBenchmarkSummary
) shows the total time in seconds taken for queries, which are grouped together. This is always enabled.
dev/build queries
The dev/build queries
report (DevBuildBenchmarkQuery
) will show the time taken in seconds for each dev/build
run. This is useful for identifying slow queries that may be affecting the performance of your application. Not enabled by default and must be configured to enable.
Warning
The dev/build queries
report will show ALL database queries run during dev/build
.
It is up to the developer installing this module to be mindful of any sensitive information that may be displayed in the report, for instance any queries run during requireDefaultRecords()
.
Be sure you are aware of what will be logged before deploying this module to an environment with sensitive data e.g. production.
To enable the dev/build queries
report, add the following to your config.yml
:
emteknetnz\DevBuildBenchmark\DatabaseAdminExtension: store_query_data: true