Snapshot component with ability to view, delete and aggregate snapshots.
Snapshots management module. Can store snapshot in database or in files, allows to view and easily manipulate them via vault panel.
composer require spiral/snapshotter spiral register spiral/snapshotter
'snapshots' => [ 'title' => 'Snapshots', 'requires' => 'vault.snapshots' ],
$this->getBootloader()->bootload([ \Spiral\Snapshotter\Bootloaders\SnapshotterBootloader::class ]);
Currently there are two supported handlers:
AggregationHandler, choose onf of them and bind it:
$this->getBootloader()->bootload([ \Spiral\Snapshotter\Bootloaders\FileHandlerBootloader::class ]); //OR: $this->getBootloader()->bootload([ \Spiral\Snapshotter\Bootloaders\AggregationHandlerBootloader::class ]);
Then you can remove standard
SnapshotInterface binding (if included):
File handler stores snapshot files in runtime directory.
Aggregation handler stores snapshots in database. Exception body is gzencoded
Aggregation handler aggregates similar snapshot incidents groping them by snapshot teaser message, it allows you to easily manage snapshots if some of them occurred more than once. Aggregation handler supports suppression feature: it allows you to save space because new snapshot incidents will be stored with empty exception source. You will see all incidents, no reason to store all sources if you can find it in the last incident. If you want to store sources - just disable suppression.
After suppression is enabled, only new incidents will be involved, old ones will be kept untouched. Same for disabled suppression.
Aggregation handler uses database, by default it is set as an alias to the
- Add charts/widgets
- Add listing dependency