疑難排解 Neurons 機器人

PowerShell 指令碼動作中的主控台輸出限制

問題: 儘管指令碼在用戶端電腦上成功執行,執行 PowerShell 指令碼動作時仍發生錯誤。

原因: 在 Ivanti Neurons for UEM 中使用 PowerShell 指令碼動作時,通常會使用 Write-Host cmdlet 將資料輸出到主控台。 此資訊會儲存在動作歷程記錄中。 但是,可用於這些主控台訊息的快取空間有限。 如果超出快取限制,即使 PowerShell 指令碼繼續在用戶端電腦上成功執行,動作也可能會報告錯誤。

解析度

為了避免 PowerShell 指令碼動作中出現與快取相關的錯誤,請關注以下事項:

  • 注意快取限制

    • 工作流程會以最多 250 個裝置的區塊來處理裝置。

    • 每個階段最多允許 10 MB 的結果。

    • 對於整套 250 部裝置,每部裝置的最大輸出為 40 KB (10 MB / 250 部裝置)。

    • 如果僅處理一部裝置,則它可以使用完整 10 MB 分配。

  • 最佳化指令碼

    • 限制 Write-Host 命令的使用,僅限於基本資訊。

    • 考慮使用其他記錄方式進行詳細資訊輸出。

    • 總結結果,而非輸出大量資料。

  • 測試指令碼

    • 先在少量裝置上執行指令碼,以確保其不超過快取限制。

    • 監控動作歷程記錄,並依需要調整指令碼。

  • 使用其他報告方式

    • 針對大型資料集,請考慮將結果寫入用戶端電腦上的檔案中,並使用單獨的方式來收集和分析此資料。

遵循這些指南有助於最大限度地降低 PowerShell 指令碼動作中出現快取相關錯誤的風險,同時仍收集必要資訊。