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

SSIS Discussion :

[SSIS][2K5]Gestion d'un tracking des actions


Sujet :

SSIS

  1. #1
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 783
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 783
    Points : 3 036
    Points
    3 036
    Par défaut [SSIS][2K5]Gestion d'un tracking des actions
    Bonjour

    Quelle est selon vous la meilleure manière d'écrire un tracking des actions effectuées dans un SSIS ?

    Je m'explique : j'ai un SSIS d'une certaine ampleur et ci et là, j'ai ajouté une tâche SQL qui appelle une stored procedure qui écrit dans une table log. La sp est appellée avec p.e. un petit texte comme "Start process xxx", "End process xxx". A la fin de l'exécution du package, j'ai donc une table me permettant de suivre l'évolution de mon flux.

    L'inconvénient, je trouve, c'est que j'ai trop de SQL tasks et que cela augmente sensiblement la longueur de mon package.

    Aussi ma question : comment procédez-vous afin d'avoir un tracking des actions exécutées dans un package SSIS ?

    Le but ultime étant de permettre l'envoi de ce "log" par email à la fin du process.

    Merci.

  2. #2
    Membre éclairé
    Avatar de patriceharel
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2008
    Messages
    466
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 466
    Points : 884
    Points
    884
    Par défaut
    Bonjour,

    Pour suivre la bonne exécution de mes packages, je renvoi la sortie de SSIS vers un fichier texte qui, du coup, contiendra ce que l'on peux lire dans la fenêtre sortie sous SSIS. Ensuite, grâce à un Script Component, je parcours mon fichier texte à la recherche des mots clés FAILURE ou SUCCESS. Sur la ligne où se trouve ces 2 mots clés se trouve également le nom du package.
    A la fin, je me retrouve avec une liste du type

    Package1.dtsx SUCCESS
    Package2.dtsx SUCCESS
    Package3.dtsx SUCCESS
    Package4.dtsx FAILURE
    Package5.dtsx SUCCESS
    Package6.dtsx SUCCESS

    Pour obtenir un niveau de détail plus important de ton tracking, il faut trouver d'autres mots clés dans le fichier de sortie...ou une autre solution

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 82
    Points : 80
    Points
    80
    Par défaut
    Bonjour,

    Vous avez pensé à utiliser la fonction Journalisation qui est disponible sous SSIS 2005?

    Elle permet un suivi personnalisé de l'exécution du package (idéal pour détecter aussi bien les "SUCCESS" que les "FAILURE").

    Pour l'activer :

    - Clic droit dans une zone vide du Flux de contrôle,

    - Choisir l'option "Enregistrement".

    Voilà bonne journée

  4. #4
    Membre éclairé
    Avatar de patriceharel
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2008
    Messages
    466
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 466
    Points : 884
    Points
    884
    Par défaut
    Bonjour,

    Exact, j'avais omis cette possibilité.. merci Sam3oul, ça me sera bien utile

  5. #5
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 783
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 783
    Points : 3 036
    Points
    3 036
    Par défaut
    Merci à vous deux. Effectivement la fonction journalisation est rudement intéressante. J'étais justement occupé à y jeter un coup d'œil.

    Quels sont les évènements que vous me conseillez d'enregistrer ?

    A priori, je pense à :

    • OnError
    • OnInformation
    • OnProgress
    • OnQueryCancel
    • OnTaskFailed
    • OnWarning

  6. #6
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 783
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 783
    Points : 3 036
    Points
    3 036
    Par défaut
    Seconde question : savez-vous pourquoi mes messages d'informations sont répétés ?

    J'utilise l'instruction ci-dessous dans un Script Task pour afficher un message d'info :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dts.Events.FireInformation(0, "FTP task", "File Test.zip retrieved successfully.", Nothing, Nothing, False)
    Ce message s'affiche parfaitement dans le résultat de mon exécution. Dans le log, je l'ai deux fois : une fois au niveau du composant Script task (le fils) et une fois au niveau du package (le parent).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Source           StartTime                 EndTime                   Message
    FTP_Get file    2008-11-27 08:37:33.000    2008-11-27 08:37:33.000   File Test.zip retrieved successfully.
    ECASCII         2008-11-27 08:37:33.000    2008-11-27 08:37:33.000   File Test.zip retrieved successfully.
    De la sorte, tous mes messages sont doublés et cela alourdit inutilement mon log.

    Une idée ?

    Merci

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 82
    Points : 80
    Points
    80
    Par défaut
    Mais de rien

    Pour ma part, j'ai choisi les détails suivants :

    OnError, OnPostExecute, OnPostValidate, OnPreExecute, OnPreValidate et OnTaskFailed.

    Je pense que c'est suffisant.

    Je ne sais pas vers quelle sortie vous allez rediriger ces informations mais je trouve que du côté du Générateur de profils SQL, on obtient un résultat assez agréable.

    Si vous choisissez cette sortie, pensez à enregistrer le fichier de journalisation avec l'extension (.trc).

    Bon courage

  8. #8
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 783
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 783
    Points : 3 036
    Points
    3 036
    Par défaut
    J'ai trouvé un ensemble de rapports Reporting Services qui permet d'analyser aisément le contenu du log de SSIS. C'est rudement sympa et très simple d'emploi.

    SQL Server 2005 Integration Services Log Reports

    Download this set of reports that are designed to filter, analyze, and organize Log and Error row data generated by SQL Server 2005 Integration Services (SSIS). The reports provide useful views of the SSIS log data saved in a SQL Server database.
    Une fois téléchargé et l'installation faite dans le folder "SSIS EventLog Reports", lire le fichier "C:\SSIS EventLog Reports\_Readme_SQL Server 2005 Integration Services Log Reports.mht"

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    82
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 82
    Points : 80
    Points
    80
    Par défaut
    Merci pour le lien

  10. #10
    Membre éclairé
    Avatar de patriceharel
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2008
    Messages
    466
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 466
    Points : 884
    Points
    884
    Par défaut
    C'est parfait ça... merci bien

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

Discussions similaires

  1. [SSIS] [2K5] Gestion des rejets techniques
    Par alaa00 dans le forum SSIS
    Réponses: 1
    Dernier message: 18/12/2009, 13h56
  2. [SSIS] [2K5] chargement de la table des faits
    Par aqavach dans le forum SSIS
    Réponses: 8
    Dernier message: 22/06/2009, 09h47
  3. [SSIS] [2K5] Gestion des erreurs
    Par SebastienM dans le forum SSIS
    Réponses: 1
    Dernier message: 07/04/2009, 13h46
  4. [SSIS][2k5]Gestion des erreurs
    Par sybaris dans le forum SSIS
    Réponses: 7
    Dernier message: 28/11/2008, 09h15
  5. [SSIS][2K5]Gestion des doublons
    Par aurelie83 dans le forum SSIS
    Réponses: 4
    Dernier message: 10/10/2008, 11h05

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