Aracılığıyla paylaş


CMPivot sorunlarını giderme

CMPivot, ortamınızdaki cihazların gerçek zamanlı durumuna erişim sağlayan bir araçtır. CMPivot, hedef koleksiyondaki şu anda bağlı olan tüm cihazlarda bir sorgu çalıştırır ve sonuçları döndürür.

Bazen CMPivot sorunlarını gidermeniz gerekebilir. Örneğin, istemciden CMPivot'a bir durum iletisi bozulursa, site sunucusu iletiyi işleyemez. Bu makale, CMPivot için bilgi akışını anlamanıza yardımcı olur.

Sürüm 1902 ve sonraki sürümlerde CMPivot sorunlarını giderme

Configuration Manager 1902 ve sonraki sürümlerinde, cmpivot'u bir hiyerarşideki merkezi yönetim sitesinden (CAS) çalıştırabilirsiniz. Birincil site istemciyle iletişimi işlemeye devam eder.

CAS'den CMPivot çalıştırdığınızda, birincil siteyle iletişim kurmak için yüksek hızlı ileti abonelik kanalını kullanır. CMPivot siteler arasında standart SQL Server çoğaltması kullanmaz. SQL Server örneğiniz veya SMS sağlayıcınız uzaksa veya BIR SQL Server AlwaysOn kullanılabilirlik grubu kullanıyorsanız, CMPivot için bir "çift atlama senaryonuz" olur. "Çift atlama senaryosu" için kısıtlanmış temsil tanımlama hakkında bilgi için bkz. 1902 sürümünden itibaren CMPivot.

Önemli

CMPivot sorunlarını giderirken, daha fazla bilgi edinmek için yönetim noktalarınızda (MP'ler) ve site sunucusunun SMS_MESSAGE_PROCESSING_ENGINE ayrıntılı günlük kaydını etkinleştirin. Ayrıca, istemcinin çıkışı 80 KB'tan büyükse MP'de ve site sunucusunun SMS_STATE_SYSTEM bileşeninde ayrıntılı günlük kaydını etkinleştirin. Ayrıntılı günlüğü etkinleştirme hakkında bilgi için bkz . Site sunucusu günlük seçenekleri.

Site sunucusundan bilgi alma

Varsayılan olarak, site sunucusu günlük dosyaları konumunda C:\Program Files\Microsoft Configuration Manager\logsbulunur. Varsayılan olmayan bir yükleme dizini veya SMS Sağlayıcısı gibi boşaltılan öğeleri başka bir sunucuya belirttiyseniz bu konum farklı olabilir. CAS'den CMPivot çalıştırırsanız, günlükler birincil site sunucusundadır.

smsprov.log Şu satırları arayın:

  • Configuration Manager sürüm 1906:

    Auditing: User <username> initiated client operation 145 to collection <CollectionId>.
    
  • Configuration Manager sürüm 1902:

    Type parameter is 135.
    Auditing: User <username> ran script 7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14 with hash dc6c2ad05f1bfda88d880c54121c8b5cea6a394282425a88dd4d8714547dc4a2 on collection <CollectionId>.
    

7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14 CMPivot için Script-Guid. Bu GUID'i CMPivot denetim durumu iletilerinde de görebilirsiniz.

Ardından, CMPivot penceresinde kimliği bulun. Bu kimlik değeridir ClientOperationID.

ClientOperationID vurgulanmış CMPivot penceresi, sürüm 1902

clientAction tablosundan öğesini TaskID bulun. , TaskID ClientAction tablosundaki öğesine karşılık gelir UniqueID .

select * from ClientAction where ClientOperationId=<id>

içinde BgbServer.log, SQL Server'dan TaskID topladığınız öğesini arayın ve öğesini PushIDnot edin. TaskID etiketlenmiştirTaskGUID. Örneğin:

Starting to send push task (PushID: 9 TaskID: 12 TaskGUID: 9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0 TaskType: 15 TaskParam: PFNjcmlwdENvbnRlbnQgU2NyaXB0R3VpZD0nN0RDNkI2RjEtRTdGNi00M0MxL (truncated log entry)
Finished sending push task (PushID: 9 TaskID: 12) to 2 clients

İstemci günlükleri

Site sunucusundan bilgileri aldıktan sonra istemci günlüklerini denetleyin. Varsayılan olarak, istemci günlükleri konumunda C:\Windows\CCM\Logsbulunur.

içinde CcmNotificationAgent.log, aşağıdaki satırlara benzeyen günlük girdilerini arayın:

Receive task from server with pushid=9, taskid=12, taskguid=9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0, tasktype=15 and taskParam=PFNjcmlwdEhhc2ggU2NyaXB0SGF (truncated log entry)
Send Task response message <BgbResponseMessage TimeStamp="2019-09-13T17:29:09Z"><PushID>5</PushID><TaskID>4</TaskID><ReturnCode>1</ReturnCode></BgbResponseMessage> successfuly.

öğesini TaskIDdenetleyinScripts.log. Aşağıdaki örnekte şunu görürsünüz Task ID{9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0}:

Sending script state message (fast): {9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0}
Result are sent for ScriptGuid: 7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14 and TaskID: {9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0}

Not

içinde Scripts.log"(hızlı)" ifadesini görmüyorsanız, veriler büyük olasılıkla 80 KB'ın üzerindedir. Bu durumda, bilgiler site sunucusuna durum iletisi olarak gönderilir. İstemcinin StateMessage.log ve site sunucusunun Statesys.logkullanın.

Site sunucusundaki iletileri gözden geçirme

Yönetim noktasında ayrıntılı günlük etkinleştirildiğinde , gelen istemci iletilerinin nasıl işlenmiş olduğunu görebilirsiniz. içinde MP_RelayMsgMgr.logöğesini arayın TaskID.

MP_RelayMsgMgr.log Örnekte, istemcinin kimliğini (GUID:83F67728-2E6D-4E4F-8075-ED035C31B783) ve öğesini Task ID {9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0}görebilirsiniz. İleti işleme altyapısına gönderilmeden önce istemcinin yanıtına bir ileti kimliği atanır:

MessageKey: GUID:83F67728-2E6D-4E4F-8075-ED035C31B783{9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0}
Create message succeeded for message id 22f00adf-181e-4bad-b35e-d18912f39f89
Add message payload succeeded for message id 22f00adf-181e-4bad-b35e-d18912f39f89
Put message succeeded for message id 22f00adf-181e-4bad-b35e-d18912f39f89
CRelayMsgMgrHandler::HandleMessage(): ExecuteTask() succeeded

üzerinde SMS_MESSAGE_PROCESSING_ENGINE.logayrıntılı günlük etkinleştirildiğinde istemci sonuçları işlenir. içinden MP_RelayMsgMgr.logbulduğunuz ileti kimliğini kullanın. İşleme günlüğü girişleri aşağıdaki örneğe benzer:

Processing 2 messages with type Instant and IDs 22f00adf-181e-4bad-b35e-d18912f39f89[19], 434d80ae-09d4-4d84-aebf-28a4a29a9852[20]...
Processed 2 messages with type Instant. Failed to process 0 messages. All message IDs 22f00adf-181e-4bad-b35e-d18912f39f89[19], 434d80ae-09d4-4d84-aebf-28a4a29a9852[20]

İpucu

İşleme sırasında bir özel durum alırsanız, aşağıdaki SQL sorgusunu çalıştırıp Özel Durum sütununa bakarak bunu gözden geçirebilirsiniz. İleti işlendikten sonra artık tabloda olmayacaktır MPE_RequestMessages_Instant .

select * from MPE_RequestMessages_Instant where MessageID=<ID from SMS_MESSAGE_PROCESSING_ENGINE.log>

içinde BgbServer.log, bildirilen veya başarısız olan istemci sayısını görmek için PushID öğesini arayın.

Generated BGB task status report c:\ConfigMgr\inboxes\bgb.box\Bgb5c1db.BTS at 09/16/2019 16:46:39. (PushID: 9 ReportedClients: 2 FailedClients: 0)

kullanarak TaskIDSQL Server'dan CMPivot izleme görünümünü denetleyin.

select * from vSMS_CMPivotStatus where TaskID='{9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0}'

Sürüm 1902'de sorun giderme için CMPivot SQL sorguları

1810 ve önceki sürümlerde CMPivot sorunlarını giderme

Configuration Manager 1810 ve önceki sürümlerinde, site sunucunuz istemciyle iletişimi işler.

Site sunucusundan bilgi alma

Varsayılan olarak, site sunucusu günlük dosyaları konumunda C:\Program Files\Microsoft Configuration Manager\logsbulunur. Varsayılan olmayan bir yükleme dizini veya SMS Sağlayıcısı gibi boşaltılan öğeleri başka bir sunucuya belirttiyseniz bu konum farklı olabilir.

smsprov.log Şu satırı arayın:

Auditing: User <username> initiated client operation 135 to collection <CollectionId>.

KIMLIĞI CMPivot penceresinde bulun. Bu kimlik değeridir ClientOperationID.

ClientOperationID vurgulanmış CMPivot penceresi

clientAction tablosundan öğesini TaskID bulun. , TaskID ClientAction tablosundaki öğesine karşılık gelir UniqueID .

select * from ClientAction where ClientOperationId=<id>

içinde BgbServer.log, SQL'den TaskID topladığınız öğesini arayın. Etiketli TaskGUID. Örneğin:

Starting to send push task (PushID: 260 TaskID: 258 TaskGUID: F8C7C37F-B42B-4C0A-B050-2BB44DF1098A TaskType: 15
TaskParam: PFNjcmlwdEhhc2ggU2NyaXB0SGF...truncated...to 5 clients with throttling (strategy: 1 param: 42)
Finished sending push task (PushID: 260 TaskID: 258) to 5 clients

İstemci günlükleri

Site sunucusundan bilgileri aldıktan sonra istemci günlüklerini denetleyin. Varsayılan olarak, istemci günlükleri konumunda C:\Windows\CCM\Logsbulunur.

içinde CcmNotificationAgent.log, aşağıdaki girişe benzer günlükleri arayın:

Error! Bookmark not defined.+PFNjcmlwdEhhc2ggU2NyaXB0SGFzaEFsZz0nU0hBMjU2Jz42YzZmNDY0OGYzZjU3M2MyNTQyNWZiNT
g2ZDVjYTIwNzRjNmViZmQ1NTg5MDZlMWI5NDRmYTEzNmFiMDE0ZGNjPC9TY3JpcHRIYXNoPjxTY3Jp (truncated log entry)

Scripts.log öğesini arayınTaskID. Aşağıdaki örnekte şunu görüyoruz Task ID {F8C7C37F-B42B-4C0A-B050-2BB44DF1098A}:

Sending script state message: 7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14
State message: Task Id {F8C7C37F-B42B-4C0A-B050-2BB44DF1098A}

öğesine StateMessage.logbakın. Aşağıdaki örnekte, öğesinin yanındaki <Param>iletinin alt kısmına yakın olduğunu TaskID görürsünüz:

StateMessage body: <?xml version="1.0" encoding="UTF-16"?>
<Report><ReportHeader><Identification><Machine><ClientInstalled>1</ClientInstalled><ClientType>1
</ClientType><ClientID>GUID:DBAC52C9-57E6-47D7-A8D6-E0A5A64B57E6</ClientID><ClientVersion>5.00.8670.1000</ClientVersion>
<NetBIOSName>R613924</NetBIOSName><CodePage>437</CodePage>
<SystemDefaultLCID>1033</SystemDefaultLCID><Priority>0</Priority></Machine></Identification>
<ReportDetails><ReportContent>State Message Data</ReportContent><ReportType>Full</ReportType>
<Date>20180703184447.673000+000</Date><Version>1.0</Version><Format>1.0</Format>
</ReportDetails></ReportHeader><ReportBody><StateMessage MessageTime="20180703184447.517000+000"><Topic ID="7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14" Type="9003" IDType="0" User="" UserSID=""/><State ID="1" Criticality="0"/>
<StateDetails Type="1"><![CDATA["PAA/AHgAbQBsACAAdgBlAHIAcwBpAG8AbgA9ACIAMQAuADAAIgAgAGUAbgBjAG8AZABpAG4AZwA9ACIAdQB0AGYALQAxADYAIgA/AD4APAByAGUAcwB1AGwAdAAgAFIAZQBzAHUAbAB0AEMAbwBkAGUAPQAiADAAIgA+ADwAZQAgAE4AYQBtAGUAPQAiAEkAbgB0AGUAbAAoAFIAKQAgAFgAZQBvAG4AKABSACkAIABDAFAAVQAgAEUANQAtADIANgA3ADMAIAB2ADQAIABAACAAMgAuADMAMABHAEgAegAiACAATQBhAG4AdQBmAGEAYwB0AHUAcgBlAHIAPQAiAEEAbQBlAHIAaQBjAGEAbgAgAE0AZQBnAGEAdAByAGUAbgBkAHMAIABJAG4AYwAuACIAIABWAGUAcgBzAGkAbwBuAD0AIgBWAFIAVABVAEEATAAgAC0AIAA2ADAAMAAxADcAMAAyACIAIABSAGUAbABlAGEAcwBlAEQAYQB0AGUAPQAiADIAMAAxADcALQAwADYALQAwADIAIAAwADAAOgAwADAAOgAwADAAIgAgAFMAZQByAGkAYQBsAE4AdQBtAGIAZQByAD0AIgAwADAAMAAwAC0AMAAwADEAOAAtADMANgA4ADIALQA0ADcAMAA4AC0ANwA2ADQAMAAtADcANgAwADAALQAzADMAIgAgAFMATQBCAEkATwBTAEIASQBPAFMAVgBlAHIAcwBpAG8AbgA9ACIAMAA5ADAAMAAwADcAIAAiACAALwA+ADwALwByAGUAcwB1AGwAdAA+AA=="~~]]></StateDetails><UserParameters Flags="0" Count="2">
<Param>{F8C7C37F-B42B-4C0A-B050-2BB44DF1098A}</Param><Param>0</Param></UserParameters></StateMessage></ReportBody></Report>

Successfully forwarded State Messages to the MP StateMessage 7/3/2018 11:44:47 AM 5036 (0x13AC)

Site sunucusundaki iletileri gözden geçirme

İletinin alınıp alınmadığını ve işlenip işlenmediğini görmek için açın statesys.log . Aşağıdaki örnekte, iletisinin alt kısmının yanında <Param>görürsünüzTaskID. Bu günlük girişlerini görmek için SMS_STATE_SYSTEM bileşeninde ayrıntılı günlük kaydını etkinleştirin.

CMessageProcessor - the cmdline to DB exec dbo.spProcessStateReport N'?<?xml version="1.0" encoding="UTF-
16"?>~~<Report><ReportHeader><Identification><Machine><ClientInstalled>1</ClientInstalled><ClientType>1
</ClientType><ClientID>GUID:DBAC52C9-57E6-47D7-A8D6-E0A5A64B57E6</ClientID><ClientVersion>5.00.8670.1000</ClientVersion>
<NetBIOSName>R613924</NetBIOSName><CodePage>437</CodePage>
<SystemDefaultLCID>1033</SystemDefaultLCID><Priority>0</Priority></Machine></Identification>
<ReportDetails><ReportContent>State Message Data</ReportContent><ReportType>Full</ReportType>
<Date>20180703184447.673000+000</Date><Version>1.0</Version><Format>1.0</Format>
</ReportDetails></ReportHeader><ReportBody><StateMessage MessageTime="20180703184447.517000+000"><Topic ID="7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14" Type="9003" IDType="0" User="" UserSID=""/><State ID="1" Criticality="0"/>
<StateDetails Type="1"><![CDATA["PAA/AHgAbQBsACAAdgBlAHIAcwBpAG8AbgA9ACIAMQAuADAAIgAgAGUAbgBjAG8AZABpAG4AZwA9ACIAdQB0AGYALQAxADYAIgA/AD4APAByAGUAcwB1AGwAdAAgAFIAZQBzAHUAbAB0AEMAbwBkAGUAPQAiADAAIgA+ADwAZQAgAE4AYQBtAGUAPQAiAEkAbgB0AGUAbAAoAFIAKQAgAFgAZQBvAG4AKABSACkAIABDAFAAVQAgAEUANQAtADIANgA3ADMAIAB2ADQAIABAACAAMgAuADMAMABHAEgAegAiACAATQBhAG4AdQBmAGEAYwB0AHUAcgBlAHIAPQAiAEEAbQBlAHIAaQBjAGEAbgAgAE0AZQBnAGEAdAByAGUAbgBkAHMAIABJAG4AYwAuACIAIABWAGUAcgBzAGkAbwBuAD0AIgBWAFIAVABVAEEATAAgAC0AIAA2ADAAMAAxADcAMAAyACIAIABSAGUAbABlAGEAcwBlAEQAYQB0AGUAPQAiADIAMAAxADcALQAwADYALQAwADIAIAAwADAAOgAwADAAOgAwADAAIgAgAFMAZQByAGkAYQBsAE4AdQBtAGIAZQByAD0AIgAwADAAMAAwAC0AMAAwADEAOAAtADMANgA4ADIALQA0ADcAMAA4AC0ANwA2ADQAMAAtADcANgAwADAALQAzADMAIgAgAFMATQBCAEkATwBTAEIASQBPAFMAVgBlAHIAcwBpAG8AbgA9ACIAMAA5ADAAMAAwADcAIAAiACAALwA+ADwALwByAGUAcwB1AGwAdAA+AA=="~~]]></StateDetails><UserParameters Flags="0" Count="2">
<Param>{F8C7C37F-B42B-4C0A-B050-2BB44DF1098A}</Param><Param>0</Param></UserParameters></StateMessage></ReportBody></Report>~~'

İleti işlenmediyse, durum iletisi gelen kutusunu işaretleyin. Varsayılan gelen kutusu konumudur C:\Program Files\Microsoft Configuration Manager\inboxes\auth\statesys.box\. Şu konumlardaki dosyaları arayın:

  • Gelen
  • Bozuk
  • İşlem

cmpivot için izleme görünümünü aşağıdaki SQL sorgusu aracılığıyla denetleyin:TaskID

select * from vSMS_CMPivotStatus where TaskID='{F8C7C37F-B42B-4C0A-B050-2BB44DF1098A}'

Not

Sürüm 1810 veya üzerini kullanan istemciler için, çıkış 80 KB'tan büyük olmadığı sürece durum mesajlaşması kullanılmaz. Bu gibi durumlarda CMPivot sorunlarını giderirken, MP'lerinizde ve site sunucusunun SMS_MESSAGE_PROCESSING_ENGINE ayrıntılı günlüğe kaydetmeyi etkinleştirdiğinizde daha fazla bilgi edinebilirsiniz. Ayrıntılı günlüğü etkinleştirme hakkında bilgi için bkz . Site sunucusu günlük seçenekleri.

Sorun gidermek için aşağıdaki günlüklere bakın:

  • MP_Relay.log
  • SMS_MESSAGE_PROCESSING_ENGINE.log

Sonraki adımlar