1.Introduction

Ce guide va vous permettre d’administrer vos Myddleware.
Nous allons premièrement détailler tous les job que vous devez mettre en place pour faire fonctionner Myddleware. Puis nous vous expliquerons comment gérer les erreurs de transfert de données.

2.Création d'utilisateur

Un utilisateur admin est automatiquement créé lors de l’installation de Myddleware. Vous pouvez créer d’autres utilisateurs si d’autres personnes ont besoin de se connecter à Myddleware. Ainsi vous pourrez savoir qui a créé une règle par exemple.

Pour l’instant la création de user se fait par ligne de commande mais il sera très prochainement possible de la faire directement dans Myddleware par un user admin.

Pour créer un user, lancer la commande suivante via un invité de commande :
Créez le profil utilisateur pour vous connecter à Myddleware. Changez les valeurs myddleware_username, myddleware_user_email, myddleware_password selon le user que vous souhaitez créer :

php app/console fos:use:create myddleware_username myddleware_user_email myddleware_password

Si vous souhaitez ajoute le rôle d’administrateur à l’utilisateur que vous venez de créer, lancez cette commande :

php app/console fos:user:promote myddleware_username ROLE_ADMIN

3.Configuration envoi email

Myddleware peut vous envoyer des notifications et des alertes en fonction des tâches planifiées que vous avez mis en place (voir chapitre sur les tâche planifiées). En effet il est nécessaire d’avoir correctement configuré l’envoi d’email pour faire fonctionner la tâche “notification” correctement.

 

Il sera bientôt possible de configurer les paramètres d’envoi d’email directement dans Myddleware. Un envoi de test sera également disponible afin de valider les paramètres. Cette fonctionnalité n’étant pas encore développée, la configuration de l’envoi d’email se fait dans le fichier myddleware/app/config/parameters.yml :.

4.Gestion des erreurs

Les transferts de données sont parfois erronés pour diverses raisons. Voici quelques-uns :

  • La solution où les données sont envoyées n’est plus disponible,
  • Les données envoyées ne sont pas correctes (email invalide par exemple),
  • Un transfert de données parent est erroné (nous bloquons l’envoi d’une commande si le client n’a pas pu être créé)

Lorsqu’un transfert de données est en erreur, il peut être relancé automatiquement via le job rerunerror (voir tâche planifiée). Mais il peut aussi être relancé manuellement en cliquant sur «Reload»

Vous pouvez également annuler un transfert de données.

Il est également possible de modifier les données à envoyer directement dans Myddleware même s’il est recommandé de toujours modifier les données dans la solution source. Ainsi, lorsqu’un transfert de données est erroné, vous pouvez double-cliquer sur les données à envoyer et les modifier:

 

Il suffit ensuite de relancer le transfert de données pour envoyer les données modifiées.

5.Tâches planifiées

Myddleware peut effectuer des actions avec des tâches en arrière-plan tout en synchronisant vos données, envoyant des notifications, nettoyant des données, et plus encore.

Si vous souhaitez effectuer ce genre d’actions en simultané, vous devrez configurer une tâche d’arrière-plan en utilisant le crontab.

Avant de créer la tâche cron, assurez-vous que votre configuration est correcte, ouvrez une commande shell et exécutez le programme check.php dans l’application directory: php app / check.php

contab_1

Changez votre permission de fichier ou configuration de PHP en cas d’erreur d’autorisation ou d’exigence de PHP manquante:

contab_2

Il ne vous reste qu’à mettre en place la tâche planifiée « jobScheduler » qui lancera toutes les autres tâches Myddleware :

  • cd <répertoire myddleware>; php app/console myddleware:jobScheduler --env=background

Cette tâche jobScheduler va lire la table JobScheduler et lancer les tâches en fonction des paramètres de cette table :

Nous attirons votre attention sur les colonnes suivantes :

  • Period : c’est l’intervalle de temps correspondant à la fréquence d’exécution de cette tâche. Attention : la fréquence de la tâche planifiée doit être supérieure ou égale à la fréquence inscrite dans le champ period.
  • Order job : c’est l’ordre dans lequel les tâche seront exécutée. Les tâche avec le plus petit ordre seront exécutées en premières.
  • Active : permet de désactiver une tâche planifiée

Nous allons détailler les différentes tâches dans les chapitres suivants qui vous permettront de remplir les autres colonnes.

5.1.Synchronisation de données

Le programme de synchronisation exécutera toutes les règles actives:

  • Commande : « synchro »
  • Paramètre1 : Sélectionnez toutes les règles actives ou bien une règle en particulier.

Seules le règles actives peuvent être sélectionnées:

5.2.Relancer les erreurs

La tâche planifiée « rerunerror » permet de relancer les erreur automatiquement.

  • Commande : « rerunerror »
  • Paramètre 1 : le nombre maximum de transfer de données que le programme tentera de relancer lors de son exécution
  • Paramètre 2 : le nombre de relance maximum que le programme tentera de faire sur les transferts de données

Nous avons configuré 2 tâche dans l’exemple ci-dessus:

  • La première sera lancée toutes les heures (60 minutes). Elle sélectionnera maximum 100 transferts de données qui ont été relancés moins de 5 fois.
  • La deuxième sera lancée toutes les jours (1440 minutes). Elle sélectionnera maximum 100 transferts de données qui ont été relancés moins de 10 fois.

5.3.Notifications

La tâche planifiée « notification » permet de recevoir des alertes et des notifications par email.

  • Commande : « notification »
  • Paramètre 1 : alert or statistiques. Si »alert » alors le programme enverra une alerte si une tâche planifiée est blockée. Si « statistics », Le programme enverra des statistiques (nombre de transfert de données en erreur, nombre de transfert de données envoyés avec succès…)

Dans l’exemple ci-dessus nous avons configuré 2  tâches :

  • La première vérifie toutes les heures si une tâche est bloquées. Dans ce cas, un mails d’alerte sera envoyée à tous les administrateurs.
  • La seconde enverra des statistiques tous les jours.

5.4.Nettoyage de données

La tâche planifiée « cleardata » supprime tous les enregistrements vides ou les transferts de données dont le délai de sauvegarde a été dépassé :

  • Les enregistrements vides correspondent :
    • Aux log sur les transferts de données qui n’ont pas d’information importante et qui ont plus de 7 jours
    • Aux tâches qui n’ont transférée aucune données et qui ont plus de 7 jours
  • En ce qui concerne less transferts de données dont le délai de sauvegarde a été dépassé, il faut savoir que ce délai est à paramétrer sur chaque règle:
  • Une fois que le transfer de données a été nettoyer,il ne reste que les ID et les logs importantes (log de création et d’envoi ainsi que toutes les logs d’erreurs) sur le transfert de données :

6.Myddleware shutdown

It can happen that your server stops or that your http service (apache for example) or MySQL encounters a problem. In these cases, Myddleware may be interrupted while it is running. Here’s how to make sure that Myddleware restarts properly once your server is restarted.

  • Check if Myddleware had a job in progress during the interruption
    • To do this, click on the list of tasks in Myddleware and check if a task is running and its start date is before the interruption:

  • Stop the task that could not be completed
  • If you have checked that a current job has a pre-interrupt start, this task will never stop automatically and will block the operation of Myddleware. It is therefore necessary to open this task and stop it:

Once the task is stopped, it will no longer block Myddleware, which will be able to function normally again.

Suggérer  de  modifier