適用於 Configuration Manager 中實時數據的 CMPivot

適用於:Configuration Manager (目前的分支)

Configuration Manager 一律提供大型的集中式裝置數據存放區,供客戶用於報告用途。 網站通常會每周收集此數據。 從 1806 版開始,CMPivot 是新的控制台內公用程式,現在可讓您存取環境中裝置的實時狀態。 它會立即在目標集合中所有目前連線的裝置上執行查詢,並傳回結果。 然後在工具中篩選和分組此數據。 藉由提供來自在線用戶端的實時數據,您可以更快速地回答商務問題、疑難解答問題,以及回應安全性事件。

例如,在 降低推測性執行端通道弱點時,其中一個需求是更新系統 BIOS。 您可以使用 CMPivot 快速查詢系統 BIOS 資訊,並尋找不符合規範的用戶端。

重要

  • 某些安全性軟體可能會封鎖從 c:\windows\ccm\scriptstore 執行的腳本。 這可防止 CMPivot 查詢成功執行。 某些安全性軟體也可能在執行 CMPivot PowerShell 時產生稽核事件或警示。
  • 某些反惡意代碼軟體可能會不小心針對 Configuration Manager 執行腳本或 CMPivot 功能觸發事件。 建議您排除 %windir%\CCM\ScriptStore,讓反惡意代碼軟體允許這些功能在不受干擾的情況下執行。

必要條件

使用 CMPivot 需要下列元件:

  • 將目標裝置升級至 Configuration Manager 用戶端的最新版本。

  • 目標用戶端至少需要 PowerShell 4 版。

  • 若要收集下列實體的數據,目標用戶端需要PowerShell 5.0版:

    • 系統管理員
    • 連線
    • IPConfig
    • SMBConfig
  • CMPivot 和 Microsoft Edge 安裝程式目前使用 Microsoft 程式代碼簽署 PCA 2011 憑證簽署。 如果您將PowerShell執行原則設定為 AllSigned,則必須確定裝置信任此簽署憑證。 您可以從已安裝 Configuration Manager 主控台的電腦匯出憑證。 檢視 上的 "C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\CMPivot.exe"憑證,然後從認證路徑匯出程式代碼簽署憑證。 然後將它匯入受管理裝置上的電腦信任發行者存放區。 您可以在下列部落格中使用此程式,但請務必從認證路徑匯出程式代碼簽署憑證使用 Intune 將憑證新增至受信任的發行者

權限

CMPivot 需要下列權限:

  • 在集合上執行 CMPivot許可權
  • 清查報表的取許可權
  • SMS 文本對象的取許可權
    • 從 2107 版開始,不需要SMS 腳本
    • 從 2107 版開始,CMPivot 在主要案例中不需要 SMS 腳本 。 不過,如果系統管理服務已關閉且已移除許可權,則當系統管理服務回復時,CMPivot 將會失敗。 如果系統管理服務因為 503 (服務無法使用) 錯誤而回復,SMS 提供者仍然需要SMS 腳本的讀取許可權,如CMPivot.log所示。
  • 默認範圍
    • 從 2107 版開始,不需要預設範圍

依 Configuration Manager 版本的 CMPivot 許可權

1902 和更早版本 版本 1906 到 2103 2107 或更新版本
在集合上執行腳本許可權 在集合上執行 CMPivot許可權 在集合上執行 CMPivot許可權
清查報表的取許可權 清查報表的取許可權 清查報表的取許可權
SMS 文本的讀取許可權 SMS 文本的讀取許可權 N/A

如果系統管理服務因為 503 (服務無法使用) 錯誤而回復 SMS 腳本,則 SMS 提供者仍然需要SMS 腳本的讀取許可權,如CMPivot.log中所示。
默認範圍權 默認範圍權 不適用

限制

  • CMPivot 只會傳回連線到目前網站的客戶端數據,除非是從管理中心網站 (CAS) 執行。
    • 如果集合包含來自另一個網站的裝置,CMPivot 結果只會來自目前網站中的裝置,除非從 CAS 執行 CMPivot。
    • 在某些環境中,CMPivot 需要額外的許可權,才能在 CAS 上執行。 如需詳細資訊,請參閱 1902 版的 CMPivot 變更
  • 您無法自定義實體屬性、結果的數據行,或裝置上的動作。
  • 在執行 Configuration Manager 主控台的電腦上,只能同時執行一個 CMPivot 實例。
  • 在 CMPivot 獨立部署中,您無法存取儲存在社群中樞的 CMPivot 查詢。
  • 使用具有多重要素驗證的單一登錄時,使用 Configuration Manager 2103 和更早版本時,您可能無法從 CMPivot 登入社群中樞。

啟動 CMPivot

  1. 在 Configuration Manager 控制台中,連線到主要月臺或 CAS。 移至 [ 資產與兼容性 ] 工作區,然後選取 [ 裝置集合] 節點 。 選取目標集合,然後選取功能 區中的 [啟動 CMPivot ] 以啟動工具。 如果您沒有看到此選項,請檢查下列設定:

    • 向網站管理員確認您的帳戶具有必要的許可權。 如需詳細資訊,請參閱必要條件
  2. 介面提供有關使用工具的進一步資訊。

    • 在頂端手動輸入查詢字串,或選取內建檔中的連結。

    • 選取其中一個 實體 ,將其新增至查詢字串。

    • 數據表運算子匯總函式和純量函式的連結會在網頁瀏覽器中開啟語言參考檔。 CMPivot 會使用 Kusto 查詢語言 (KQL)

  3. 讓 CMPivot 視窗保持開啟,以檢視來自客戶端的結果。 當您關閉 CMPivot 視窗時,工作階段已完成。

    • 如果查詢已傳送,則用戶端仍會將狀態消息回應傳送至伺服器。

如何使用 CMPivot

CMPivot 視窗範例

CMPivot 視窗包含下列元素:

  1. CMPivot 目前的目標集合位於頂端的標題列,以及視窗底部的狀態列。 例如,上述螢幕快照中的「PM_Team_Machines」。

  2. 左側窗格會列出用戶端上可用的 實體 。 有些實體依賴 WMI,有些則使用 PowerShell 從用戶端取得數據。

    • 以滑鼠右鍵按兩下列動作:

      • 插入:將實體新增至目前數據指標位置的查詢。 查詢不會自動執行。 當您按兩下實體時,此動作是預設值。 建置查詢時,請使用此動作。

      • 查詢全部:執行此實體的查詢,包括所有屬性。 使用此動作快速查詢單一實體。

      • 依裝置查詢:執行此實體的查詢,並將結果分組。 例如,Disk | summarize dcount( Device ) by Name

    • 展開實體,以查看每個實體可用的特定屬性。 按兩下屬性,將其新增至目前資料指標位置的查詢。

  3. [ 首頁] 索引標籤會顯示 CMPivot 的一般資訊,包括範例查詢和支援文件的連結。

  4. [ 查詢] 索引 卷標會顯示查詢窗格、結果窗格和狀態列。 在上述螢幕快照範例中已選取 [查詢] 索引卷標。

  5. 查詢窗格是您在集合中建置或輸入要在用戶端上執行查詢的位置。

    • 根據預設,此窗格會使用 IntelliSense。 例如,如果您開始輸入 D,IntelliSense 會建議以該字母開頭的所有實體。 選取選項,然後按 Tab 鍵來插入它。 輸入管道字元和空格 | ,然後 IntelliSense 會建議所有數據表運算符。 插入 summarize 並輸入空格,而 IntelliSense 會建議所有聚合函數。 如需這些運算子和函式的詳細資訊,請選取 CMPivot 中的 [ 常用 ] 索引標籤。

    • 查詢窗格也提供下列選項:

      • 執行查詢。

        • 若要在用戶端上重新執行目前的 CMPivot 查詢,請在按下 [執行] 時按 Ctrl
      • 在查詢的歷程記錄清單中向前移動。

      • 建立直接成員資格集合。

      • 將查詢結果匯出至 CSV 或剪貼簿。

  6. 結果窗格會顯示作用中用戶端針對查詢所傳回的數據。

    • 可用的數據行會根據實體和查詢而有所不同。

    • 結果數據表或圖表中數據的色彩飽和度會指出數據是即時還是來自儲存在月臺資料庫中的最後一個硬體清查掃描。 例如,黑色是來自在線客戶端的實時數據,而灰色則是快取的數據。

    • 選取資料行名稱,依該屬性排序結果。

    • 以滑鼠右鍵按下任何資料行名稱,以該數據行中的相同資訊將結果分組,或排序結果。

    • 以滑鼠右鍵按兩下鍵名稱,在裝置上採取下列其他動作:

    • 以滑鼠右鍵按下列其他動作:

      • 複製:將儲存格的文字複製到剪貼簿。

      • 顯示具有下列專案的裝置:查詢此屬性具有此值的裝置。 例如,從查詢的結果中 OS ,在 [版本] 數據列的儲存格上選取此選項: OS | summarize countif( (Version == '10.0.17134') ) by Device | where (countif_ > 0)

      • 顯示沒有的裝置:查詢此屬性沒有此值的裝置。 例如,從查詢的結果中 OS ,在 [版本] 數據列的儲存格上選取此選項: OS | summarize countif( (Version == '10.0.17134') ) by Device | where (countif_ == 0) | project Device

      • Bing it:使用此值作為查詢字串,將預設網頁瀏覽器啟動至 https://www.bing.com

    • 選取任何超連結文字,以樞紐分析該特定信息的檢視。

    • 結果窗格不會顯示超過 20,000 個數據列。 調整查詢以進一步篩選數據,或在較小的集合上重新啟動 CMPivot。

  7. 狀態列會顯示從左至右) (的下列資訊:

    • 目標集合的目前查詢狀態。 此狀態包括:

      • 完成查詢的作用中用戶端數目 (3 個)

      • 客戶端總數 (5)

      • 離線客戶端數目 (2)

      • 傳回失敗 (0)

        例如:Query completed on 3 of 5 clients (2 clients offline and 0 failure)

    • 用戶端作業的識別碼。 例如:id(16780221)

    • 目前的集合。 例如:PM_Team_Machines

    • 結果窗格中的數據列總數。 例如,1 objects

提示

從 2107 版開始,使用 [ 再次查詢裝置 ] 按鈕或 Ctrl + F5 強制用戶端再次擷取查詢的數據。 當您預期自上次查詢之後,例如在疑難解答期間,裝置上的數據會變更時, 再次使用查詢裝置 會很有用。 在傳回初始結果之後再次選取 [執行 查詢 ],只會剖析已從用戶端擷取的數據 CMPivot。

[再次查詢裝置] 按鈕的螢幕快照,其中顯示 Ctrl + F5 是強制用戶端再次擷取數據的快捷方式工具提示。

從 CMPivot 將查詢發佈至社群中樞

(適用於 2107 版或更新版本)

從 2107 版開始,您可以直接從 CMPivot 視窗將 CMPivot 查詢發佈至社群中樞。 直接透過 CMPivot 提交查詢可讓您更輕鬆地參與社群中樞。

您需要下列 CMPivot 需求,以及參與社群中樞的需求:

  1. 移至 [ 資產與兼容性 ] 工作區,然後選取 [ 裝置集合] 節點

  2. 選取目標集合、目標裝置或裝置群組,然後選取功能 區中的 [啟動 CMPivot ] 以啟動工具。

  3. 從 CMPivot 視窗中,選取功能表上的社群中樞圖示。

    社群中樞圖示

  4. 取 [登入],然後登入 GitHub。

  5. 建立 CMPivot 查詢,然後選取 [ 執行查詢 ] 以確認其如預期般運作。

    • 選擇性地選取資料夾圖示,以存取您的最愛清單,以使用您已建立的查詢。
  6. 當您準備好提交查詢時,請選取 CMPivot [社群中樞] 視窗頂端的 [ 發佈 ] 連結。

    CMPivot 中 [社群中樞] 視窗的螢幕快照,其中顯示 [發佈] 索引卷標

  7. 為您的查詢提供 [名稱 ] 和 [ 描述],然後選取 [ 發佈 ] 按鈕,將查詢傳送至社群中樞。

  8. 參與完成後,您隨時都可以從 [ ] 索引標籤取查詢。

  9. 若要檢視 PR) (GitHub 提取要求,請移至 https://github.com/Microsoft/configmgr-hub/pulls。 您也可以從社群中樞節點中的 [您的中樞] 頁面存取 PR 連結。

    • PR 不應直接提交至 GitHub 存放庫。

注意

  • 目前,當您透過 CMPivot 發佈查詢時,您無法在發布後加以編輯或刪除。
  • 只有當您從 Configuration Manager 主控台執行社群中樞時,才能在 CMPivot 中使用。 獨立 CMPivot 無法使用社群中樞。

CMPivot 的範例案例

下列各節提供如何在環境中使用 CMPivot 的範例:

範例 1:停止執行中的服務

您的安全性系統管理員要求您儘快在會計部門的所有裝置上停止和停用計算機瀏覽器服務。 您會在會計中所有裝置的集合上啟動 CMPivot,然後選取 [服務實體上的全部查詢]。

Service

結果出現時,您會以滑鼠右鍵按兩下 [ 名稱 ] 資料行,然後選取 [群組依據]

Service | summarize dcount( Device ) by Name

Browser 服務的數據列中,您會選取 [dcount_ ] 資料行中的超鏈接號碼。

Service | where (Name == 'Browser') | summarize count() by Device

多重選取所有裝置,以滑鼠右鍵按下選取專案,然後選擇 [ 執行腳本]。 此動作會啟動 [執行腳本精靈],您可從該精靈執行現有的腳本來停止和停用服務。 使用 CMPivot,您可以快速回應所有使用中電腦的安全性事件,並在 [執行腳本精靈] 中檢視結果。 接著,您會接著建立設定基準,以在集合中的其他計算機在未來變成作用中時進行補救。

Browser 服務和執行腳本動作的 CMPivot 範例

範例 2:主動解決應用程式失敗

若要主動進行作業維護,您每周會針對您管理的伺服器集合執行 CMPivot,然後選取 [在 AppCrash 實體上全部查詢]。 以滑鼠右鍵按兩下 [FileName] 資料 行,然後選 取 [升序]。 一部裝置會針對每天約 03:00 時間戳的 sqlsqm.exe 傳回七個結果。 您可以選取其中一個數據列中的檔名,以滑鼠右鍵按兩下它,然後選取 [Bing]。 瀏覽網頁瀏覽器中的搜尋結果時,您會找到此問題的Microsoft支援文章,並提供詳細資訊和解決方法。

範例 3:BIOS 版本

若要 降低推測性執行端通道弱點,其中一個需求是更新系統 BIOS。 您會從 BIOS 實體的查詢開始。 然後,依 Version 屬性分。 然後以滑鼠右鍵按下特定值,例如 “LENOVO - 1140”,然後選取 [顯示裝置]

Bios | summarize countif( (Version == 'LENOVO - 1140') ) by Device | where (countif_ > 0)

範例 4:可用磁碟空間

您需要暫時將大型檔案儲存在網路文件伺服器上,但不確定哪一個檔案有足夠的容量。 針對文件伺服器集合啟動 CMPivot,並查詢 Disk 實體。 變更 CMPivot 的查詢,以快速傳回具有即時記憶體資料的作用中伺服器清單:

Disk | where (Description == 'Local Fixed Disk') | where isnotnull( FreeSpace ) | order by FreeSpace asc

CMPivot 獨立

您可以使用 CMPivot 作為獨立應用程式。 CMPivot 獨立版僅提供英文版。 在 Configuration Manager 主控台外部執行 CMPivot,以檢視環境中裝置的實時狀態。 這項變更可讓您在裝置上使用 CMPivot,而不需要先安裝控制台。

您可以與其他角色共用 CMPivot 的功能,例如技術服務人員或安全性系統管理員,這些人員的電腦上沒有安裝控制台。 這些其他角色可以使用 CMPivot 來查詢 Configuration Manager 以及他們傳統上使用的其他工具。 藉由共用這項豐富的管理數據,您可以共同合作,主動解決跨角色的商務問題。

安裝 CMPivot 獨立

  1. 設定執行 CMPivot 所需的許可權。 如需詳細資訊,請參閱 必要條件。 如果許可權適合使用者,您也可以使用安全性系統 管理員角色

  2. 在下列路徑中尋找 CMPivot 應用程式安裝程式: <site install path>\tools\CMPivot\CMPivot.msi。 您可以從該路徑執行它,或將它複製到另一個位置。

  3. 當您執行 CMPivot 獨立應用程式時,系統會要求您連線到網站。 指定管理中心或主要站台伺服器的完整功能變數名稱或電腦名稱。

    • 每次開啟 CMPivot 獨立時,系統都會提示您連線到站臺伺服器。
  4. 流覽至您要執行 CMPivot 的集合,然後執行查詢。

    流覽至您要針對其執行查詢的集合

注意

  • CMPivot 獨立版無法使用滑鼠右鍵的動作,例如執行 腳本資源總管和 Web 搜尋。 CMPivot 獨立版的主要用途是從 Configuration Manager 基礎結構獨立查詢。 為了協助安全性系統管理員,CMPivot 獨立部署包含連線到 Microsoft Defender 資訊安全中心 的能力。
  • 您可以 使用 CMPivot 獨立執行本機裝置查詢評估

CMPivot 內部

CMPivot 會使用「快速通道」Configuration Manager 將查詢傳送給用戶端。 其他功能也會使用此從伺服器到用戶端的通道,例如用戶端通知動作、客戶端狀態和 Endpoint Protection。 用戶端會透過類似的快速狀態消息系統傳回結果。 狀態消息會暫時儲存在資料庫中。 如需用於用戶端通知之埠的詳細資訊,請參 閱埠一 文。

查詢和結果全都只是文字。 實體 InstallSoftwareProcess 會傳回一些最大的結果集。 在效能測試期間,來自一個用戶端針對這些查詢的最大狀態消息檔大小小於 1 KB。 調整為具有 50,000 個使用中用戶端的大型環境,此一次性查詢會在整個網路產生少於 50 MB 的數據。 歡迎頁面上加上底線的所有專案,會傳回每個用戶端少於 1 KB 的資訊。

CMPivot 加底線實體範例

從 Configuration Manager 1810 開始,CMPivot 可以查詢硬體清查數據,包括擴充的硬體清查類別。 這些新實體 (歡迎頁面上未加上底線的實體) 可能會傳回更大的數據集,視為指定硬體清查屬性定義的數據量而定。 例如,“InstalledExecutable” 實體可能會傳回每個用戶端多個 MB 的數據,視您查詢的特定數據而定。 使用 CMPivot 從較大的集合傳回較大的硬體清查數據集時,請留意系統上的效能和延展性。

查詢會在一小時後逾時。 例如,集合有500部裝置,且目前有450個用戶端在在線。 這些作用中的裝置會收到查詢,並幾乎立即傳回結果。 如果您讓 CMPivot 視窗保持開啟,當其他 50 個客戶端上線時,它們也會收到查詢並傳回結果。

記錄檔

CMPivot 互動會記錄到下列記錄檔:

伺服器端:

  • SmsProv.log
  • BgbServer.log
  • StateSys.log

用戶端:

  • CcmNotificationAgent.log
  • Scripts.log
  • StateMessage.log

如需詳細資訊,請參閱 記錄檔疑難解答 CMPivot

後續步驟