SSIS - Comment faire pour Identifier le package d'une ligne dans la table du journal fait référence?
J'ai plusieurs SSIS packages d'intégration se connecter à une base de données. Ils ont tous écrire à la table sysssislog.
Je veux une procédure stockée pour être en mesure de retourner le succès de la dernière exécution d'un package sélectionné.
Comment puis-je identifier un paquet dans sysssislog? Le executionid champ semble fonctionner, mais il semble que c'est l'évolution des valeurs sur mosts fonctionne de la même package (parfois, il reste le même). Est-il un moyen de savoir quel paquet d'une entrée de journal est en venir?
Structure de sysssislog pour référence:
CREATE TABLE [dbo].[sysssislog](
[id] [int] IDENTITY(1,1) NOT NULL,
[event] [sysname] NOT NULL,
[computer] [nvarchar](128) NOT NULL,
[operator] [nvarchar](128) NOT NULL,
[source] [nvarchar](1024) NOT NULL,
[sourceid] [uniqueidentifier] NOT NULL,
[executionid] [uniqueidentifier] NOT NULL,
[starttime] [datetime] NOT NULL,
[endtime] [datetime] NOT NULL,
[datacode] [int] NOT NULL,
[databytes] [image] NULL,
[message] [nvarchar](2048) NOT NULL,
Vous semblez ne pas avoir PackageStart et PackageEnd événements activé.
OriginalL'auteur Greg | 2010-09-07
Vous devez vous connecter pour publier un commentaire.
Voici un beau afficher candidat de prendre un coup d'oeil à l'historique de l'exécution de tous les paquets dans votre SSIS, vous pouvez également voir combien de temps un paquet a été opérationnel en quelques minutes:
Aussi lorsque le paquet d'erreurs je n'ai pas packagestart ou événements de la fin.
OriginalL'auteur Denis Valeev
Prendre un coup d'oeil si cela vous aide, à partir de Livres Sur La Ligne
source de type nvarchar
Le nom de l'exécutable, dans le paquet, qui a généré l'enregistrement d'entrée.
sourceid uniqueidentifier
Le GUID de l'exécutable dans le paquet qui a généré l'enregistrement d'entrée.
OriginalL'auteur SQLMenace
La colonne "sourceid" serait le même que celui de votre package SSIS GUID pour les événements
Comme dit ci - dessus- la executionid est le guid de l'instance de la course.
Vous souhaiterez peut-être activer "OnError" gestionnaire d'événement afin de produire le paquet qui n'a pas manqué.
Pour générer le rapport de ce que vous pouvez faire :
rejoindre la base de données msdb.[dbo].[sysdtspackages] et de la dbo.sysssislog table id = sourceid. Les packages qui ont échoué aura OnError entrée dans sysssislog table à partir de laquelle vous pouvez déduire l'état.
--
Veuillez indiquer si cela répond à votre question
OriginalL'auteur sabyasm
Comme le posteur d'origine, je voulais voir le nom de mon colis devant tous mes noms de source lorsque vous allez à travers mon SSIS journal. À la lecture de William réponse, j'ai réalisé la ExecutionID pourrait être mis à profit pour faire exactement ce que, au moins lors de l'utilisation de la SSIS log provider for SQL Server.
Si vous utilisez SQL Server 2008 et de votre SSIS table de journalisation utilise la norme nom de "sysssislog", puis essayez cette requête:
Notes:
J'espère que ça aide.
OriginalL'auteur Andrew Tasi
ID de la Source de la colonne où l'événement est "ensemble de Départ" identifie le Nom du package. L'ID d'Exécution des liens dans toutes les lignes de cette instance de votre colis exécuter.
ID de la Source peuvent être attachés à l'arrière de votre développement de votre colis par l'ouverture de votre colis et en regardant le champ ID dans votre paquet niveau des propriétés. Ce GUID correspondant à votre paquet niveau de l'ID de la source de la colonne dans le journal. Chaque objet dans votre colis aura également son propre GUID et ces peut être vu dans le journal.
Si vous vous connectez, la première entrée, vous êtes envoyé à sp_ssis_addlogentry a toujours un cas de Forfait "Démarrer", Essayez d'exécuter le package dans les OFFRES et afficher le Journal des Événements de la fenêtre pour voir si vous avez activé la journalisation correctement. Pour tous ces travaux, l'enregistrement doit être activé.
Je ne reçois package début, mais pas quand j'appuie sur certaines erreurs comme un fichier non existant.
J'ai remarqué que la connexion est parfois feuilletée si vous avez des objets sous l'objet de package avec l'exploitation forestière réglé sur "activé". J'ai l'habitude de configurer la journalisation de sorte que le pakcage journalisation est "activé" et tous les autres termes ont "utiliser parent paramètre" set. (Dans l'enregistrement de l'écran, une solide coche dans la case "activé", une grise est "utiliser parent setting" et une case vide est "désactivé".)
OriginalL'auteur William Salzman
Dans le cas où vous souhaitez surveiller l'exécution pendant l'exécution du projet, vous aurez à utiliser une version plus sophistiquée de la requête comme:
OriginalL'auteur Burkhard Lau