2010-09-07 9 views
5

के अलावा तालिका में लॉग इन करें एसएसआईएस सिस्टम टेबल SYSSSISLOG पर लॉग इन करने का आग्रह करता है। क्या यह एक अलग टेबल का उपयोग करने का कोई तरीका है?एसएसआईएस - SYSSSISLOG

मैं चाहता हूं कि प्रत्येक पैकेज एक अलग तालिका में लॉग ऑन करे।

उत्तर

2

ठीक है, आप कुछ इस तरह से है कि विशाल गधे लॉग तालिका क्वेरी कर सकते हैं:

--first, we identify the packages 
;with DetectedPackages as (
select source, s.executionid 
from dbo.sysssislog as s 
where event = 'PackageStart' 
group by source, s.executionid 
) 
--then we use those executionids to display results 
select * from dbo.sysssislog as s 
join DetectedPackages dp on s.executionid = dp.executionid 
where dp.source = 'PackageName' 

और यदि आप एक दृश्य की प्रत्येक पैकेज संपुटित करना चाहते हैं, अब आप ऐसा कर कैसे करना है।

+0

वियर्ड, मेरी sysssislog तालिका में, स्रोत पैकेज के भीतर कार्यों को संदर्भित करता है। मुझे तालिका में कहीं भी पैकेज का नाम नहीं मिल रहा है। – Greg

+1

पैकेज का नाम पंक्ति में स्रोत कॉलम है जहां ईवेंट = 'पैकेज स्टार्ट' उस जानकारी को इकट्ठा करने के बाद आप स्रोत आईडी कॉलम को देख सकते हैं ताकि पैकेज की ग्रिड प्राप्त हो सके और निष्पादन के लिए उन सभी पंक्तियों को ढूंढ सकें जो उस के निष्पादन से थे पैकेज। –

1

SQL सर्वर सेंट्रल पर निम्न आलेख पर एक नज़र डालें, आपको पंजीकरण करने की आवश्यकता हो सकती है लेकिन ऐसा करने के लिए स्वतंत्र है और आपको साइट को उत्कृष्ट SQL सर्वर संसाधन होने के लिए मिल जाएगा।

आलेख विवरण कस्टम लॉग प्रदाता को कार्यान्वित करने का विवरण देता है जो एसएसआईएस लॉग आउटपुट को किसी अन्य तालिका में रीडायरेक्ट करता है। इस कार्यान्वयन को अपने ढांचे के रूप में उपयोग करके आप इसे अपनी आवश्यकताओं को पूरा करने के लिए बढ़ा सकते हैं।

SSIS Custom Logging the Easy Way

+0

एफवाईआई: किसी कारण से एसएससी ने उस लिंक को खो दिया या ब्लॉग पोस्ट को नीचे ले लिया। मैंने इसके लिए एसएससी खोजने की कोशिश की है लेकिन इसमें नहीं आ सकता है। –

+0

@ShawnMelton इसे हटा दिया गया था। यह माइकल कोल्स द्वारा एक अच्छा लेख था। इसे अब तक उनकी एक पुस्तक में प्रकाशित किया जा सकता है। –

5

त्वरित जवाब जॉन Sansom के जवाब के रूप में एक ही है: जब प्रवेश प्रयोग किया जाता है, यह एक मेज और एक संग्रहीत proc (नाम 2005 से 2008 के संस्करण के साथ बदलता रहता है) संग्रहीत proc करने के लिए संशोधित किया जा सकता बनाता है जो तुम्हे चाहिये। अगर संग्रहीत प्रो को हटा दिया जाता है तो एसक्यूएल सर्वर इसे फिर से बनाता है, लेकिन अगर संग्रहित प्रो वहां है, तो एसक्यूएल सर्वर मानता है कि यह ठीक है और इसे अकेला छोड़ देता है। यह आपको संग्रहीत प्रो को संशोधित करने के लिए जो भी टेबल/टेबल लिखता है उसे संशोधित करने की अनुमति देता है।

+0

मुझे यकीन नहीं है कि आपका या संसॉम के उत्तर काम करेंगे या नहीं। एसएसआईएस से sp_dts_addlogentry में कुछ भी नहीं आ रहा है जो मुझे बताता है कि कौन सा पैकेज चल रहा है, इसलिए मैं अलग-अलग पैकेजों से अलग-अलग तालिकाओं में लॉग जानकारी नहीं भेज पाऊंगा। या मैं गलत हूँ? – Greg

+0

2008 में proc name SP_SSIS_ADDLOGENTRY है। SourceID कॉलम का मान जहां ईवेंट = 'पैकेज स्टार्ट' पैकेज का GUID है। –

संबंधित मुद्दे