dvsa / mot-cpms-shared-reports
Shared module for displaying reports
v3.0.2
2026-10-16 12:30 UTC
Requires
- php: ^8.2
- dvsa/mot-cpms-client: ^3.1.3
- dvsa/mot-logger: ^3.3.1
- laminas/laminas-dependency-plugin: ^2.6.0
- laminas/laminas-mvc: ^3.1
- mtdowling/jmespath.php: ^2.9.1
Requires (Dev)
- captainhook/captainhook: ^5.16
- captainhook/plugin-composer: ^5.3
- dvsa/coding-standards: ^2.1
- dvsa/mot-cpms-common: ^3.0.2
- dvsa/mot-cpms-payment-test: ^3.0.0
- friendsofphp/php-cs-fixer: ^3.95
- phpstan/phpstan: ^2.3
- phpunit/phpunit: ^11.5
- squizlabs/php_codesniffer: ^4.0
- vimeo/psalm: ^6.20
Suggests
None
Provides
None
Conflicts
None
Replaces
None
- dev-main
- v3.0.2
- v3.0.1
- v3.0.0
- v2.0.0
- v1.0.1
- v1.0.0
- dev-feature-bl-22951-update-mot-logger-version
- dev-feature-bl-15043-linting-and-static-analysis
- dev-feature-bl-15040-code-linting
- dev-feature-bl-17136-php82-update
- dev-feature-BL-15591-update-cpms-php-81
- dev-fix-bl-15101-fix-vulnerability-in-mot-cpms-payment-test
This package is auto-updated.
Last update: 2026-10-16 14:05:08 UTC
README
Laminas Module for CPMS Shared reports
Installing
The recommended way to install is through Composer.
composer require dvsa/mot-cpms-shared-reports
Logging Configuration
This module uses mot-logger v3.3.1 for JSON-formatted logging. The logger is configured to output CPMS reports logs to a stream writer.
Logger Setup
The logging configuration is defined in config/autoload/config.global.php and uses the mot_logger configuration structure:
'mot_logger' => [ 'loggers' => [ 'cpms-reports' => [ 'channel' => 'cpms-reports', 'writers' => [ [ 'type' => 'stream', 'path' => '/var/log/dvsa/' . date('Y-m-d') . '-cpms-reports.log', 'formatter' => 'json', 'level' => 'info', 'enabled' => true, ], ], ], ], ]
Logger Features
- Channel:
cpms-reports- Dedicated channel for CPMS shared report logs - Format: JSON - Structured logging for easier parsing and analysis
- Level: INFO - Logs informational messages and above
- Path: Daily log rotation via date-based file naming
- Destination:
/var/log/dvsa/{YYYY-MM-DD}-cpms-reports.log
Usage
REPORT WORKER
Run the cron job every 5 seconds (this is a workaround for frequent report generation):
* * * * * /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 5 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 10 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 15 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 20 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 25 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 30 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 35 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 40 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 45 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 50 && /usr/bin/php /workspace/payment-service/public/index.php report generate * * * * * sleep 55 && /usr/bin/php /workspace/payment-service/public/index.php report generate
REPORT GARBAGE COLLECTOR
Cleaning jobs that are (by default) 2 weeks old which run every hour:
0 0 * * * /usr/bin/php /workspace/payment-service/public/index.php report clean
Contributing
Please refer to our Contribution Guide.