Řešení potíží s CMPivotem
CMPivot je nástroj, který poskytuje přístup ke stavu zařízení ve vašem prostředí v reálném čase. CMPivot spustí dotaz na všechna aktuálně připojená zařízení v cílové kolekci a vrátí výsledky.
Někdy může být potřeba vyřešit potíže s nástrojem CMPivot. Pokud je například poškozena stavová zpráva z klienta do nástroje CMPivot, server lokality nemůže zprávu zpracovat. Tento článek vám pomůže pochopit tok informací pro CMPivot.
Řešení potíží s CMPivotem ve verzi 1902 a novější
V nástroji Configuration Manager verze 1902 a novějších můžete spustit CMPivot z lokality centrální správy (CAS) v hierarchii. Primární lokalita stále zpracovává komunikaci s klientem.
Když spustíte CMPivot z CAS, používá kanál vysokorychlostního odběru zpráv ke komunikaci s primární lokalitou. CMPivot nepoužívá standardní replikaci SQL Serveru mezi lokalitami. Pokud je vaše instance SQL Serveru nebo váš poskytovatel serveru SMS vzdálený nebo pokud používáte skupinu dostupnosti AlwaysOn sql Serveru, budete mít pro CMPivot scénář dvojitého směrování. Informace o tom, jak definovat omezené delegování pro scénář s dvojitým směrováním, najdete v tématu CMPivot od verze 1902.
Důležité
Při řešení potíží s CMPivotem povolte podrobné protokolování bodů správy (MPs) a na SMS_MESSAGE_PROCESSING_ENGINE serveru lokality, abyste získali další informace. Pokud je výstup klienta větší než 80 kB, povolte podrobné protokolování v sadě MANAGEMENT a SMS_STATE_SYSTEM součásti serveru lokality. Informace o tom, jak povolit podrobné protokolování, najdete v tématu Možnosti protokolování serveru lokality.
Získání informací ze serveru lokality
Ve výchozím nastavení jsou soubory protokolu serveru lokality umístěny v C:\Program Files\Microsoft Configuration Manager\logs
. Toto umístění se může lišit, pokud jste zadali jiný než výchozí instalační adresář nebo přesměrovali položky, jako je poskytovatel serveru SMS, na jiný server. Pokud spustíte CMPivot z CAS, protokoly se nacházejí na serveru primární lokality.
smsprov.log
Hledejte tyto řádky:
Configuration Manager verze 1906:
Auditing: User <username> initiated client operation 145 to collection <CollectionId>.
Configuration Manager verze 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
je Script-Guid pro CMPivot. Tento identifikátor GUID můžete zobrazit také ve stavových zprávách auditu CMPivot.
Dále vyhledejte ID v okně CMPivot. Toto ID je ClientOperationID
.
TaskID
V tabulce ClientAction vyhledejte . Hodnota TaskID
odpovídá hodnotě UniqueID
v tabulce ClientAction.
select * from ClientAction where ClientOperationId=<id>
V BgbServer.log
nástroji vyhledejte hodnoty, které TaskID
jste získali z SQL Serveru, a poznamenejte si .PushID
Má TaskID
označení TaskGUID
. Příklady:
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
Protokoly klientů
Jakmile budete mít informace ze serveru lokality, zkontrolujte protokoly klienta. Ve výchozím nastavení se protokoly klientů nacházejí v C:\Windows\CCM\Logs
.
V CcmNotificationAgent.log
souboru vyhledejte položky protokolu, které vypadají jako na následujících řádcích:
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.
Vyhledejte Scripts.log
.TaskID
V následujícím příkladu vidíte 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}
Poznámka
Pokud v Scripts.log
souboru nevidíte "(fast)" ( "(fast)", pak jsou data pravděpodobně větší než 80 kB. V tomto případě se informace odesílají na server lokality jako stavová zpráva. Použijte klienty StateMessage.log
a server Statesys.log
lokality .
Kontrola zpráv na serveru lokality
Když je v bodě správy povolené podrobné protokolování , uvidíte, jak se zpracovávají příchozí klientské zprávy. V MP_RelayMsgMgr.log
souboru vyhledejte .TaskID
V příkladu MP_RelayMsgMgr.log
vidíte ID (GUID:83F67728-2E6D-4E4F-8075-ED035C31B783)
klienta a Task ID {9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0}
. K odpovědi klienta se před odesláním do modulu pro zpracování zpráv přiřadí ID zprávy:
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
Pokud je ve službě SMS_MESSAGE_PROCESSING_ENGINE.log
povolené podrobné protokolování , výsledky klienta se zpracují. Použijte ID zprávy, které jste našli v .MP_RelayMsgMgr.log
Položky protokolu zpracování jsou podobné následujícímu příkladu:
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]
Tip
Pokud během zpracování dojde k výjimce, můžete ji zkontrolovat spuštěním následujícího dotazu SQL a zobrazením sloupce Výjimka. Po zpracování už zpráva nebude v tabulce MPE_RequestMessages_Instant
.
select * from MPE_RequestMessages_Instant where MessageID=<ID from SMS_MESSAGE_PROCESSING_ENGINE.log>
V BgbServer.log
souboru vyhledejte PushID
počet klientů, kteří nahlásili nebo selhali.
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)
Zkontrolujte zobrazení monitorování pro CMPivot z SQL Serveru pomocí TaskID
.
select * from vSMS_CMPivotStatus where TaskID='{9A4E59D2-2F5B-4067-A9FA-B99602A3A4A0}'
Řešení potíží s CMPivotem ve verzi 1810 a starších verzích
V nástroji Configuration Manager verze 1810 a starší zpracovává komunikaci s klientem server lokality.
Získání informací ze serveru lokality
Ve výchozím nastavení jsou soubory protokolu serveru lokality umístěny v C:\Program Files\Microsoft Configuration Manager\logs
. Toto umístění se může lišit, pokud jste zadali jiný než výchozí instalační adresář nebo přesměrovali položky, jako je poskytovatel serveru SMS, na jiný server.
smsprov.log
Vyhledejte tento řádek:
Auditing: User <username> initiated client operation 135 to collection <CollectionId>.
Vyhledejte ID v okně CMPivot. Toto ID je ClientOperationID
.
TaskID
V tabulce ClientAction vyhledejte . Hodnota TaskID
odpovídá hodnotě UniqueID
v tabulce ClientAction.
select * from ClientAction where ClientOperationId=<id>
V BgbServer.log
souboru vyhledejte informace, které TaskID
jste získali z SQL. Má označení TaskGUID
. Příklady:
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
Protokoly klientů
Jakmile budete mít informace ze serveru lokality, zkontrolujte protokoly klienta. Ve výchozím nastavení se protokoly klientů nacházejí v C:\Windows\CCM\Logs
.
V CcmNotificationAgent.log
nástroji vyhledejte protokoly, které se podobají následující položce:
Error! Bookmark not defined.+PFNjcmlwdEhhc2ggU2NyaXB0SGFzaEFsZz0nU0hBMjU2Jz42YzZmNDY0OGYzZjU3M2MyNTQyNWZiNT
g2ZDVjYTIwNzRjNmViZmQ1NTg5MDZlMWI5NDRmYTEzNmFiMDE0ZGNjPC9TY3JpcHRIYXNoPjxTY3Jp (truncated log entry)
Vyhledejte v Scripts.log
souboru TaskID
. V následujícím příkladu vidíme 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}
Podívejte se do StateMessage.log
. V následujícím příkladu vidíte, že TaskID
se nachází v dolní části zprávy vedle <Param>
položky :
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)
Kontrola zpráv na serveru lokality
Otevřete statesys.log
a podívejte se, jestli je zpráva přijata a zpracována. V následujícím příkladu vidíte TaskID
v dolní části zprávy vedle <Param>
položky . Povolte podrobné protokolování na komponentě SMS_STATE_SYSTEM, aby se tyto položky protokolu zobrazily.
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>~~'
Pokud se zpráva nezpracovala, zkontrolujte doručenou poštu stavových zpráv. Výchozí umístění doručené pošty je C:\Program Files\Microsoft Configuration Manager\inboxes\auth\statesys.box\
. Vyhledejte soubory v těchto umístěních:
- Příchozí
- Znehodnocený
- Proces
Zkontrolujte zobrazení monitorování pro CMPivot pomocí následujícího dotazu SQL pomocí TaskID
:
select * from vSMS_CMPivotStatus where TaskID='{F8C7C37F-B42B-4C0A-B050-2BB44DF1098A}'
Poznámka
Pro klienty, kteří používají verzi 1810 nebo vyšší, se zasílání zpráv o stavu nepoužívá, pokud není výstup větší než 80 kB. Při řešení potíží s CMPivotem v těchto případech můžete získat další informace, když povolíte podrobné protokolování na vašich serverech a SMS_MESSAGE_PROCESSING_ENGINE serveru lokality. Informace o tom, jak povolit podrobné protokolování, najdete v tématu Možnosti protokolování serveru lokality.
Pokud chcete řešit potíže, projděte si následující protokoly:
MP_Relay.log
SMS_MESSAGE_PROCESSING_ENGINE.log