IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Exécution et industrialisation Discussion :

Continuer le job si la base de log est éteinte


Sujet :

Exécution et industrialisation

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    février 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : février 2009
    Messages : 57
    Points : 67
    Points
    67
    Par défaut Continuer le job si la base de log est éteinte
    Bonjour,

    Un petit souci dont je n'ai trouvé trace nul par ailleurs sur le forum :

    J'ai un projet Talend où les logs en base sont activés avec talend. Le problème est que si la base où les logs sont effectués est éteinte, mon job plante et s'arrête. Cependant on considère que le job peut très bien s'exécuter et on peut continuer à logguer dans les fichiers.

    Et puis là, pas moyen de faire un onsubjoberror, ou autre chose... je n'ai pas trouvé de paramètre au niveau du projet.

    Quelqu'un a une idée ..?

    Par avance merci

  2. #2
    Membre actif Avatar de kayim
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    juillet 2011
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Bâtiment

    Informations forums :
    Inscription : juillet 2011
    Messages : 134
    Points : 283
    Points
    283
    Par défaut
    Hello,

    Tu pourras peut-être désactiver l'option "Arrêter en cas d'erreur" de ton composant d'écriture ou de ton tRunJob (en fonction de ton erreur, du composant....)
    En désactivant l'option "Arreter en cas d’erreur' tu peux quand même recuperer les codes erreurs/logs via une connexion "Rejets" de ton tXXXOuput.

    Bon courage
    Etre un homme c'est regarder le diable droit dans les yeux et lui dire d'aller se faire foutre...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    février 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : février 2009
    Messages : 57
    Points : 67
    Points
    67
    Par défaut
    Salut, merci pour ta réponse.

    Le problème, c'est que le composant d'écriture n'existe pas réellement, puisque c'est talend qui va gérer tout ça dans les paramètres du projet.. Je n'ai pas de composant sur lequel intervenir, et cocher "arrêter en cas d'erreur".

    J'ai creusé du côté des Assert, mais rien de concluant, au niveau des paramètres du projet non plus..

    Pour le moment, le seul truc que j'ai trouvé mais qui n'est pas satisfaisant du tout, c'est de tester si la base de log est accessible, et si ce n'est pas le cas d'arrêter proprement le job et d'envoyer un mail.

    Mais ça n'est pas satisfaisant, puisqu'on voudrait effectuer le traitement quand même...

  4. #4
    Membre habitué
    Homme Profil pro
    Consultant ERP
    Inscrit en
    juillet 2011
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : juillet 2011
    Messages : 199
    Points : 129
    Points
    129
    Par défaut
    je ne sais pas si ca peut t'aider mais perso je ferrai :

    *soit j''enleve les parametres au niveau du job et je gere mes tables avec des composants dans mon job et des tlogstats puis des tmssqlinput et là je pourrai gérer "on subjoberror"

    *ou alors tu duplique ton job et tu enleves les params de stats et dans le premier
    tu test si la base est dispo sinon tu envoi vers le job sans parametre log

    j'espere avoir été assez clair dans mes explications

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    février 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : février 2009
    Messages : 57
    Points : 67
    Points
    67
    Par défaut
    merci également pour tes réponses.

    La première idée n'est pas acceptable car on essaie de factoriser au maximum le code, et c'est la gestion automatique des logs pour ça, c'est du bonheur.

    En revanche, si effectivement il n'y a pas de solution, on devra peut être partir sur la deuxième idée à laquelle je n'avais pas pensé. Mais dupliquer les jobs ça m'embête un peu quand même.. j'aimerai trouver un moyen de catcher cette erreur de base et de laisser la main au processus. Je suis à quasi certain que c'est possible, mais je ne trouve pas comment faire.

  6. #6
    Membre éclairé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    mai 2010
    Messages
    343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2010
    Messages : 343
    Points : 650
    Points
    650
    Par défaut
    Bonjour,

    Avec les logs Talend d'activé par défaut, il n'y aura pas moyen d'intercepter une erreur. Car la première écriture est effectué avant même l’exécution du premier composant. Et le code généré n'est pas ouvert au paramétrage

    Pour ton cas, je vois plusieurs solutions.
    1) Tu es en version entreprise, tu peux utiliser un joblet pour l’écriture des logs en base et gérer les exceptions.

    2) Tu écrit systématiquement les logs dans un fichier. Et tu créer un job pour charger ces logs en base dans un second temps.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    février 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : février 2009
    Messages : 57
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par emenuet Voir le message
    Bonjour,

    Avec les logs Talend d'activé par défaut, il n'y aura pas moyen d'intercepter une erreur. Car la première écriture est effectué avant même l’exécution du premier composant. Et le code généré n'est pas ouvert au paramétrage
    Bon alors effectivement si ce n'est pas clairement pas possible..

    On utilise la version communautaire, mais on arrive à reproduire le comportement des joblets avec les variables de contexte.

    Je pense qu'effectivement, faire un composant qui recharche les logs générés dans les tables peut s'avérer une bonne alternative, et puis on garde une cohérence par rapport à la démarche du projet.

    En revanche, si certains d'entre vous on les moyen, c'est à faire remonter au niveau de talend, car c'est clairement une limite du produit.

    J'attends un peu de voir si quelqu'un n'a pas de solution miracle pendant une petite semaine, et je passe en résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2005] Alter Base Rebuild log
    Par agdid04 dans le forum Administration
    Réponses: 2
    Dernier message: 12/11/2014, 18h12
  2. Reprendre une formation ou continuer un job ?
    Par Amaranth92 dans le forum Etudes
    Réponses: 3
    Dernier message: 27/03/2014, 17h25
  3. Déplacement journal de transaction sur base en Log Shipping
    Par tibal dans le forum Administration
    Réponses: 4
    Dernier message: 15/07/2010, 08h38
  4. Continuer un job malgré une erreur
    Par jeanphi45 dans le forum Développement de jobs
    Réponses: 3
    Dernier message: 17/06/2010, 16h04
  5. Réponses: 5
    Dernier message: 28/10/2003, 16h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo