Dataflow est un bundle Symfony permettant la simplification et la gestion de tâches de traitement de données (import, export, transfert interne à l'application) dans vos projets d'application web basé sur Symfony.
Il arrive parfois qu'un traitement rencontre un dysfonctionnement. Le diagnostic peux être particulièrement compliqué si les données traitées sont volatiles.
Dans la version 2.2 de Dataflow, nous avons ajouté un journal pour vous permettre d'y inscrire les événements liés à votre traitement.
Il est automatiquement disponible dans la propriété logger de votre objet PHP DataflowType si vous étendez la classe CodeRhapsodie\DataflowBundle\DataflowType\AbstractDataflowType .
Dans le cas contraire, implémenter dans votre classe DataflowType l'interface Psr\Log\LoggerAwareInterface et le logger sera automatiquement injecté.
Vous pourrez ensuite l'injecter dans votre lecteur, vos étapes et vos écrivains (writer).
<?php
namespace My\App\Namespace\DataflowType;
use CodeRhapsodie\DataflowBundle\DataflowType\AbstractDataflowType;
use CodeRhapsodie\DataflowBundle\DataflowType\DataflowBuilder;
class ImportInformationFromWebSiteType extends AbstractDataflowType
{
protected function buildDataflow(DataflowBuilder $builder, array $options): void
{
$this->httpClient->setLogger($this->logger);
$this->notModifiedContentFilter->setLogger($this->logger);
$this->writer->setLogger($this->logger);
$builder->setReader($this->httpClient->read())
->addStep($this->transformer)
->addStep($this->notModifiedContentFilter)
->addWriter($this->writer);
}
}
La particularité de ce logger est que toutes les informations seront automatiquement sauvegardées en base de données avec les informations de l'exécution de votre Dataflow.
To celebrate the release of Dataflow 5 for Symfony 7, here is some feedback on ...
🎯 Nous relevons le défi de lancer un grand concours : Vous faire gagner un ...
How to dynamically calculate shipping costs? The official documentation that explains how to create shipping ...
How to create a new product attribute type in Ibexa Commerce
A la recherche d'un poste de travail temporaire ou permanent ? Vous recherchez un environnement ...
Après une découverte de surface d'Ibexa Commerce, entrons plus dans le détail pour comprendre son ...
Ibexa DXP propose un module pour gérer des produits pour la réalisation d'un site e-commerce. ...
Voici une présentation d'IbexaMailing, un module qui ajoute la gestion des newsletters à Ibexa. IbexaMailing est ...
C'est la dernière occasion de vous souhaitez le meilleur pour cette année 2024 et surtout ...
To celebrate the release of Dataflow 5 for Symfony 7, here is some feedback on ...
🎯 Nous relevons le défi de lancer un grand concours : Vous faire gagner un ...
How to dynamically calculate shipping costs? The official documentation that explains how to create shipping ...
How to create a new product attribute type in Ibexa Commerce
A la recherche d'un poste de travail temporaire ou permanent ? Vous recherchez un environnement ...
Après une découverte de surface d'Ibexa Commerce, entrons plus dans le détail pour comprendre son ...
Ibexa DXP propose un module pour gérer des produits pour la réalisation d'un site e-commerce. ...
Voici une présentation d'IbexaMailing, un module qui ajoute la gestion des newsletters à Ibexa. IbexaMailing est ...
C'est la dernière occasion de vous souhaitez le meilleur pour cette année 2024 et surtout ...