Veri toplayıcıyı sorun giderme

Bu konu ile ilgili sorunları giderme, aşağıdaki kategoriler yöneliktir:

  • Hata durumları.Nesne modeli ve çalışma hataları bu kategoride kapsayan saat.

  • Performans sorunları.Bu kategori, genel ve özel performans senaryoları kapsar.

  • Sistem kilitlendi.Bu kategori, veri koleksiyon sırasında alt bileşeni askıda kalıyor kapsamaktadır.

Hata koşulları

Hataları yükseltilmiş nesne modelinden veya çalışma saat.

Nesne modeli hataları

Veri Toplayıcı nesne modeli sağlayan veri toplayıcı özelliklerini ve veri koleksiyon kümelerini yönetmek için programlı bir şekilde yönetilen bir API'dir.Nesne modeli etrafında ince bir sarıcı olan bir küme saklı yordamlar ve görünümler için veri toplayıcı yapılandırma mekanizması sağlar.Daha fazla bilgi için bkz: Veri Toplayıcı programlama.

Nesne modeli hatalarının nesne modeli aşağıdaki bileşenlerden birinden gelebilir:

  • A Transact-SQL hata bir saklı yordam oluşturulur veya Transact-SQL kod veri toplayıcısı birinden adlı saklı yordamlar.

  • A Transact-SQL bir veri toplayıcısı hata ortaya saklı yordam.

  • Yönetilen bir özel nesne modelinden atılır.

Aşağıdaki tablo nesne modelinden yükseltilebilir hatalar anlatılmaktadır.

Hata iletisi

Hata numarası

Açıklama

Ad, hedef, proxy_id veya etkin collection_mode güncelleştiremiyor koleksiyon küme '% s'.Stop koleksiyon küme ve sonra güncelleştirmeyi yeniden deneyin.

14669

Etkin bir güncelleştirme çalışıldı koleksiyon küme.A koleksiyon küme bu tür herhangi bir güncelleştirmeyi önce durdurulmalı.Yalnızca karşıya yükleme zamanlamasını değiştirilebilir iken koleksiyon küme etkin durumda.

Etkin silemezsiniz koleksiyon küme '% s'.Stop koleksiyon küme ve silmeyi yeniden deneyin.

14670

Çalışan koleksiyon küme silme girişimi.

Adı veya toplama parametrelerini güncelleştiremiyor öğe '% s' Etkin, koleksiyon küme '% s'.koleksiyon küme ve koleksiyon güncelleştirmek deneyin Dur öğe yeniden.

14671

Bir koleksiyon güncelleştirme girişiminde öğe çalıştıran koleksiyonu küme içinde.

Koleksiyon silemezsiniz öğe '% s' Etkin, koleksiyon küme '% s'.koleksiyon küme ve koleksiyonunu silmek deneyin Dur öğe yeniden.

14672

Koleksiyonu silme denemesi öğe çalıştıran koleksiyonu küme içinde.

'% S' toplayıcı türü silemezsiniz.Bu Toplayıcı türü ile ilişkilendirilmiş tüm koleksiyon öğeleri silin ve sonra yeniden silmeyi deneyin.

14673

Koleksiyon öğeleri ile ilişkili olan bir Toplayıcı türü silme girişimi.

Etkin olmayan verileri karşıya yükleyemez koleksiyon küme '% s'.Başlat koleksiyon küme ve verileri karşıya yüklemeyi yeniden deneyin.

14674

Çalışmakta olan koleksiyon küme tarafından toplanan verileri karşıya yükleme denemesi.

Ad, hedef, proxy_id, logging_level veya collection_mode güncelleştiremez, veya etkin koleksiyona koleksiyon öğesi ekleme küme '% s'.Stop koleksiyon küme ve sonra güncelleştirmeyi yeniden deneyin.

14675

Çalışan koleksiyon küme güncelleştirme denemesi.

Kullanıcı '% s' değiştirme izni yok.Kullanıcı '% s' Veri Toplayıcı rolünün üye olmalıdır.

14676

Kullanıcı yalnızca belirli bir veri toplayıcı rolü tarafından değiştirilen özellik güncelleştirme girişiminde bulundu.

Kullanıcı bu işlemi gerçekleştirmek için izni yok.Kullanıcı '% s' Veri Toplayıcı rolünün üye olması gerekir.

14677

Kullanıcı, gerekli veri toplayıcı rolün parçası olmaksızın bir işlem gerçekleştirmeye çalıştı.

%D kimliği ile sql Server izleme durdurulur ve dış kullanıcı tarafından kapatıldı.sql Server izleme Toplayıcısı izleme yeniden dener.

14678

Oluşturulmuş ve veri toplayıcısı tarafından kullanılan bir izleme durduruldu ve Toplayıcı çalışma zamanı dışında kapalı.

Belirtilen %s (% s) bu veri ambarı ambar geçerli değil.

14679

yönetim verileri ambarı ambar içinde saklı yordamlar için geçirilen parametre diğer ambar girişleri uyan bir değere sahiptir.

İnstmdw.sql bu sürüm yalnızca sql Server 2005 çalıştıran sunucuya karşı yürütülen veya sonraki bir sürüm olması gerekir.

14680

yönetim verileri ambarı ambar sql Server 2000 veya önceki sürümünü çalıştıran bir sunucuya yükleme denemesi.

Bu yordam, Toplayıcı devre dışı bırakıldığında gerçekleştiremiyor.Toplayıcı etkinleştirin ve yeniden deneyin.

14681

Çakışan bir Toplayıcı'nın durumu ile birlikte işlemi denemesi.

Durumu koleksiyon küme değişti, ancak yeniden başlatmaz veya Toplayıcı etkinleştirilene kadar durdurabilir.

14682

Başlatma veya durdurma denemesi koleksiyon küme ne zaman Toplayıcı etkin değildir.

A koleksiyon küme anlık görüntü veya sürekli modunda bir zamanlama gerektirir.

14683

Oluşturma veya güncelleştirme bir koleksiyon küme anlık görüntü veya bir zamanlama sağlayan olmadan sürekli modunda.

Yakaladı hata #: % d, düzeyi: % d, durumu: Yordam % d: % s, satır: ileti % d: %s

14684

Veri Toplayıcı bileşen genel bir hata oluştu; hata bir catch yakalandı blok ve rethrown.

Geçersiz işlem.Durumu koleksiyon küme kimliği ile = %d olan şu anda "çalışır".

14685

Sp_syscollector_create_set_queue_and_service 0 is_running durumuna sahip bir küme için bir çağrı.

Yapılandırma deposu MDWInstance ve MDWDatabase Parametreler null olamaz.

14686

Bağlantı dize ya MDWInstance ya da MDWDatabase parametreleri için null veri ambarı ambar yönetimi için.

@ Cache_window parametre geçersiz değeri (% d).İzin verilen değerler şunlardır: -1 (önceki karşıya yükleme hataları tüm karşıya yükleme verilerden önbelleğe) 0 (önbellek karşıya yükleme veri yok), n (önbellek verilerini n önceki karşıya yükleme hataları, burada n >= 1)

14687

Bir çalışıldı küme Toplayıcı yapılandırma deposu -1'den küçük bir değere CacheWindow parametresinin değeri.

A koleksiyon küme sql Server aracısı durduğunda başlatamıyor.sql Server Agent'ı başlatın.

14688

Başlat çalışıldı bir koleksiyon küme ne zaman sql Server aracısı etkin değildir.

Koleksiyonu küme, başlatılamıyor yönetim verileri ambarı yapılandırılmamış.İnstmdw.sql komut dosyası oluşturmak ve yapılandırmak için yönetim veri ambarıleri ambarı.

14689

Başlat çalışıldı ne zaman koleksiyon küme yönetim veri ambarıleri ambarı kurulu değil.

Bu yordam, Toplayıcı etkin olduğunda gerçekleştiremiyor.Toplayıcı devre dışı bırakın ve sonra yeniden deneyin.

14690

Çakışan bir Toplayıcı'nın durumu ile birlikte işlemi denemesi.

Toplayıcı durumunu null olamaz.Bu bir iç Bozulması yapılandırma veri toplayıcısı gösterebilir.

14691

Sp_syscollector_verify_collector_state çağrısı CollectorEnabled parametresi null değeri bulundu.Bu yapılandırma Veri Toplayıcı'nın bir iç bozulmasını gösterebilir.

Çalışma zamanı hataları

Run -saat bir koleksiyonu paketi, hataları ortaya veya karşıya yükleme paketi çalıştırır ve bir sorunla karşılaşır.Hataları aşağıdaki bileşenlerden birinden gelebilir:

  • Veri akışı bir SQL Server 2008 Integration Services (SSIS) paket.Bu hatalar sonucu başarısız veri dönüştürme veya veri kesilmesi olabilir.Veri Toplayıcı hata tarafından etkilenen satırların sayısını kaydeder ve veri toplayıcı günlüğü tablolar, o numarayı kaydeder.

  • denetim akışı SSIS paket.SSIS günlük tablolar halinde bu hataları günlüğe msdb veritabanı (msdb.dbo.sysssislog) ve dışarı veri toplayıcı günlüğü tablolar. bubbled

  • Veri Toplayıcı çalışma -saat bileşeni (dcexec.exe).Doğrudan veri toplayıcı günlüğü tablolarda bu hataları günlüğe kaydedilir.

Daha fazla bilgi için bkz: Veri Toplayıcı günlüğü.

Run - hakkındaki durum bilgilerini almak için aşağıdaki yöntemlerden birini kullanarak öneririzsaat hataları.

Transact-sql depolanan yordamlar ve görünümler

Tüm çalışmakta ve bitmiş durumunu görüntülemek için koleksiyon kümeleri veya paketleri, aşağıdaki sorguyu çalıştırın:

use msdb
select * from syscollector_execution_log_full

Önceki sorgu aşağıdaki sonuç küme döndürür.

Sütun adı

Açıklama

log_id

Her biri için benzersiz bir kimlik koleksiyon küme yürütme.Bu görünümü diğer ayrıntılı günlükler ile birleştirmek için kullanılır.

parent_log_id

Üst paket Kimliğini veya koleksiyon küme.Bu koleksiyon küme için null olur.Kimlikleri, tanımlamak kolay hale getirmek için bir üst-alt ilişkisi zincirlenir koleksiyon küme hangi paket başlatıldı.Buna ek olarak, bu görünümü günlük girişlerini kendi alt-üst bağlantı'yı gruplandırır ve çağrı zincirini açıkça görülebilir şekilde paketlerin adlarını girintiler.

name

Adı koleksiyon küme veya bu günlük girdisini gösteren paket.

collection_mode

koleksiyonu küme giriş yapıldığını, koleksiyon veya karşıya yükleme etkinliği.

start_time

Zaman koleksiyon küme veya paket başlatıldı.

last_iteration_time

Sürekli olarak çalıştırma paketleri, en son saat paket anlık görüntü yakalanan.

finish_time

Paketleri ve koleksiyon tamamlanmış çalışma tamamlandı saat ayarlar.

duration

Milisaniye cinsinden saat, paket veya koleksiyon küme çalıştıran.

operator

Başlatan işleç koleksiyon küme veya paket.

status

Durumu koleksiyon küme veya paket.Bu olacaktır:

  • 0 - çalışan

  • 1 - tamamlandı

  • 2 - başarısız oldu

failure_task

koleksiyon küme veya paket başarısız oldu, ortaya çıkan SSIS paketindeki görevin adını.

package_execution_id

SSIS günlük bağlantı tablo.

collection_set_id

Bağlantı Veri Toplayıcı yapılandırmasında tablo.

NotNot
Özel bir odaklanmak için filtre olarak collection_set_id kullanabilirsiniz koleksiyon küme günlüğü.

Daha fazla bilgi için bkz: syscollector_execution_log_full (Transact-sql).

Hakkında ek bilgi edinmek koleksiyon küme ve veri toplayıcı sağlar işlevleri yürüterek yürütme paket.

Aşağıdaki işlev hakkında ayrıntılı istatistikleri döndürür koleksiyon küme veya paket, paket tarafından günlüğe hata satır sayısı da dahil olmak üzere.

select * from fn_syscollector_get_execution_stats(@log_id)

Eşleşen SSIS günlük (sysdtslog90) bir kısmı sonraki işlev döndürür package_execution_id için bir paket.Paket başarısız olduysa, bu kök hatanın ne olduğunu bulmak için en iyi yoludur.

select * from fn_syscollector_get_execution_details(@log_id)

Veri Toplayıcı durum raporları

Önceki tarafından döndürülen aynı bilgileri elde edebilirsiniz Transact-SQL sorguları görüntüleyerek sağlanan günlükleri SQL Server Management Studio.Daha fazla bilgi için bkz: Nasıl yapılır: Koleksiyonu kümesi günlüklerini görüntüle.

Performans sorunları

Üç birincil gözden geçirme ve performans tanılamak için kullanabileceğiniz veri kaynakları vardır.

İlk olarak önceki bölümde açıklanan günlük tablolarını da performans sorunları gidermek için kullanılabilecek yararlı bilgiler sağlar.

The fn_syscollector_get_execution_stats function returns the following information.

Sütun adı

Açıklama

avg_row_count_in

Girilen satır ortalama sayısı veri akışı görevleri paket.

min_row_count_in

En az sayıda girilen veri akışı görevleri paket.

max_row_count_in

Girilen satır sayısının veri akışı görevleri paket.

avg_row_count_out

Çıkıldı satır ortalama sayısı veri akışı görevleri paket.

min_row_count_out

Veri akışı görevleri paket sol satır minimum sayısı.

max_row_count_out

Veri akışı görevleri paket sol satır en fazla sayısı.

avg_duration

Ortalama saat (milisaniye) paketn veri akışı bileşen harcanan.

min_duration

En azından saat (milisaniye) paketn veri akışı bileşen harcanan.

max_duration

En büyük saat (milisaniye) paketn veri akışı bileşen harcanan.

Performans veri ikinci kaynak olan syscollector_execution_log_full ne kadar koleksiyon küme hakkında bilgi sağlayan tablo bitti ya da çalışmaktadır.

Son olarak, performans sayaçları Performans konularını değerlendirmenize yardımcı olmak için kullanılır.Veri Toplayıcı (dcexec.exe) işlemi örnekleri için standart İşlem sayaçları özellikle ne kadar sistem kaynaklarını iyi göstergeleri veri toplayıcı çalışma - sağlamaksaat bileşeni kullanıyor.

Performans sorunu senaryoları

İki senaryo veri toplayıcısı çalıştırıldığında, performans sorunları gösterilmeye olasılığı daha yüksektir:

  • Veri Toplayıcı çok fazla sistem kaynaklarını tüketen.

  • Veri Toplayıcısı ile ayak uydurabiliyoruz değil koleksiyon yüklenemiyor.

Sistem kaynaklarının aşırı kullanımı

İşlem performans sayaçları analizini dcexec.exe işlem çok fazla sistem kaynaklarını kullanmakta olduğunuz gösterirse, aşağıdaki araştırma yapılması.

İlk olarak, orada bir tek olup olmadığını koleksiyon küme , en iyi kaynakları kullanıyor.

  • Koleksiyonu küme tanımlamak için koleksiyon küme kimliği işlem kimliği eşleştirmek syscollector_execution_log_fullve sonra küme koleksiyonu bulmak syscollector_collection_sets tablo.

  • Belirlemek ne koleksiyon küme toplanıyor.Tüm koleksiyon öğeleri gruplandırdığınız içinde listelemek için aşağıdaki sorgu kullanın küme:

    select * from syscollector_collection_set_items where collection_set_id = <id>
    
  • Yukarıdaki sorgu bilgileri kullanarak, aşağıdaki soruları göz önünde bulundurun:

    • Çok fazla koleksiyon öğeleri var mı?

    • Tek bir koleksiyon olan öğe sorunların çoğunu neden?

    • Çok fazla veri toplanırken?

    • Yanıtı Evet herhangi yukarıdaki soruları ise, koleksiyon veya toplanan verilerin sesi azaltmak için koleksiyon öğeleri değiştirmeyi düşünün.Bu kaynak tüketimini azaltır.

İkinci olarak, olup etkin koleksiyon kümeleri soruna neden oluyor.

  • Kaç bulma koleksiyon ayarlar aşağıdaki sorguyu kullanarak sistemde tanımlanmıştır:

    select count(*) from syscollector_collection_sets
    
  • Kaç bulma koleksiyon kümeleri şu anda çalışan aşağıdaki sorguyu kullanarak:

    select count(*) from syscollector_execution_log_full where parent_log_id is null and status = 1
    
  • Performans sorunu zaman zaman sorun için eşler, bakın koleksiyon veya etkinlik karşıya.Zamanlamaları tüm aynı olması durumunda, bu soruna neden.Bir koleksiyon veya karşıya yükleme zamanlamasını ayarlama, basit bir çözüm olabilir.

Yük takip edilemiyor

Bu durum, sadece sürekli olarak çalıştıran koleksiyonu kümeleri ile koleksiyon.koleksiyonu sıklığı yüksektir ve büyük miktarda veri koleksiyonk için koleksiyon varsa paket tek bir anlık görüntü yineleme için ayrılan saat verileri işlemek mümkün olmayabilir.Bu durum karşılaştırarak tespit edebilirsiniz avg_duration ve max_duration Günlükteki sütunları tablo bir özel koleksiyon öğesi. için tanımlanan koleksiyonu sıklığı için

If the max_duration value is larger than the frequency value, the collection package might not always be able to keep up with the configured frequency.If the avg_duration value is higher than the frequency, the collection package has a consistent problem.İkinci durumda, frekans azaltılacak ya da koleksiyon öğe toplanan veri miktarını sınırlamak için değiştirilmesi.

Sistem kilitlendi

Veri toplayıcı grubunun bir parçası olarak çalışan bir paket işlemeyi durdurur ancak çıkmak ve bu durumda kalır bir sistem askıda.Çoğu sistem kilitlendi, koleksiyon küme durdurup tarafından çözülebilir.

Gerçek bir takılma hedeflenen davranış ayırt etmek önemlidir.

  • Sürekli çalışan bir koleksiyon paket veri anlık görüntü toplamak için düzenli aralıklarla eylemlerinize çoğu saat bir bekleme durumunda geçirdiği.Paket Veri toplama sonra bekleme durumuna geri gider.Bu bekleme durumunu sistem askıda görünebilir, ancak bu değildir.Doğrulamak için kontrol syscollector_execution_log_full Tablo için şüpheli bir paket.If the last_iteration_time was no later than the current time, the condition is not a hang.

  • Bir paket koleksiyon eylem tetikleyen bir olay için beklemek için tasarlanmış olabilir.Bu durum paket, olay için bekleyecektir.Bu bir Askı değil.

Veri Toplayıcı ilgili bir sistem askıda olduğunu doğrulamak için aşağıdaki denetimleri gerçekleştirin:

  • İlk olarak, karşılık gelen dcexec.exe işlem Kimliğini tanımlamak koleksiyon küme araştırmak istediğiniz.

  • Daha sonra işlemin çalıştığı ve kaynakları kullanıyorsa denetleyin.Askıda işlemler % 0 genellikle kullandığı cpu ve daha fazla bellek ayırır.İşleminin yüksek cpu yüzdesi de kullanabilirsiniz.Bu ise durum onu döngü ve bellek çıkma değil.

  • Son olarak günlük tablo son kez güncelleştirildiği sırada görmek işlemi için denetleyin.Güncelleştirme sıklığı tahsilat için birden fazla saat, öğe, işlemi askıya alındı.

Veri Toplayıcı işlemi askıda neden çeşitli nedenleri vardır.En yaygın şunlardır:

  • Bir paket bir sonraki yineleme erdiği için bekler, ancak bu gerçekleşmez.

  • Bir paketi bekler bir paylaşılan kilit başka bir paket tarafından tutulan ancak Kilidi serbest bırakılır.

  • Doğru işlenmedi paket yürütme sırasında bir hata oluştu ve denetim akışı kesilmiş, ancak paket tümüyle başarısız.

Herhangi yukarıdaki durumlar vardır sistem askı ile ilgili belirli günlük girdileri.Bir neden göstermek herhangi bir ileti olup olmadığına bakın.De olay bir sistem askıda, dcexec.exe işlem bir döküm dosyası oluştur ve daha ayrıntılı araştırın.