Förstå klientkomponenter för programdistribution
Gäller för: Konfigurationshanteraren (current branch)
Utvärderings- och tvingande åtgärder för programdistribution hanteras av dcm-agent- och CI Agent-komponenterna på klienten. Den här artikeln förklarar hur ett typiskt DCM- och CI Agent-jobb fungerar.
DCM-agent
DCM-agenten är den övergripande klientkomponent som ansvarar för utvärdering av konfigurationsobjekt, vilket omfattar program. När en distribution aktiveras eller framtvingas skapas ett DCM-agentjobb som läser tilldelningsprincipen och avgör vilka åtgärder som behöver utföras. Den här aktiviteten kan spåras i DCMAgent.log på klienten med hjälp av DCM-agentens jobb-ID, som kan identifieras genom att söka efter det unika ID:t för programmet.
Enhetsdistributioner
För nödvändiga distributioner visar DCMAgent.log tillämpliga åtgärder. Dessa åtgärder kan variera beroende på om distributionens tidsgräns redan har passerat.
# Evaluation Job example: DCMAgentJob({A9E850E2-91B0-4122-94FD-D14EDF925AF7}): CDCMAgentJob::PopulateCIsFromAssignment - CI policy Id:ScopeId_B63CEBE7-8A69-4FBE-994F-5AD0A8488D27/RequiredApplication_fc76ef0a-3ab0-4110-8cce-1addc36d0225 version:3 with actions: Evaluation, Content Download # Enforcement Job example: DCMAgentJob({4C8A9F6E-390B-450E-B505-B5698DB68EDD}): CDCMAgentJob::PopulateCIsFromAssignment - CI policy Id:ScopeId_B63CEBE7-8A69-4FBE-994F-5AD0A8488D27/RequiredApplication_fc76ef0a-3ab0-4110-8cce-1addc36d0225 version:3 with actions: Evaluation, Install, Uninstall, Update, Look-ahead Install, Look-ahead Uninstall, Look-ahead Update
För Tillgängliga distributioner visar DCMAgent.log att distributionen
is not mandatory
. För dessa distributioner görs programutvärderingen, men tillämpningen hoppas över om inte användaren initierade installationen.# Evaluation Job example: DCMAgentJob({E353BF94-D7ED-4ADD-AF0F-9273F6A67FC1}): CDCMAgentJob::PopulateCIsFromAssignment - [SCAN] CI policy Id :ScopeId_B63CEBE7-8A69-4FBE-994F-5AD0A8488D27/RequiredApplication_fc76ef0a-3ab0-4110-8cce-1addc36d0225 version:3 - Assignment:{3AC57DFE-3F87-4C59-930B-B9F57CB41B91} is not mandatory. # Enforcement Job (user initiated) example: Request to enforce application ConfigMgr Toolkit(ScopeId_B63CEBE7-8A69-4FBE-994F-5AD0A8488D27/Application_fc76ef0a-3ab0-4110-8cce-1addc36d0225.3) immediately for target: machine with action(s): Evaluation, Install, Update CDCMAgentJobMgr::CreateInteractiveJob - Queuing new job: {D331249E-F7DE-481B-A497-8E8B5E7B91C3}
Användardistributioner
För nödvändiga distributioner visar DCMAgent.log tillämpliga åtgärder. Dessa åtgärder kan variera beroende på om distributionens tidsgräns redan har passerat.
# Evaluation Job example: DCMAgentJob({65D9688D-1781-4DA3-B07A-193D481251C6}): CDCMAgentJob::PopulateCIsFromAssignment - CI policy Id:ScopeId_C8F7EAE6-DBA8-4970-B3FF-47ED706868DE/RequiredApplication_6b39398b-fd20-47ca-bd68-074274509f98 version:2 with actions: Evaluation, Content Download # Enforcement Job example: DCMAgentJob({2B0DA272-FC65-4F31-9557-C4D840D650F1}): CDCMAgentJob::PopulateCIsFromAssignment - CI policy Id:ScopeId_C8F7EAE6-DBA8-4970-B3FF-47ED706868DE/RequiredApplication_6b39398b-fd20-47ca-bd68-074274509f98 version:2 with actions: Evaluation, Install, Uninstall, Update, Look-ahead Install, Look-ahead Uninstall, Look-ahead Update
För Tillgängliga distributioner skapas DCM-agentjobb för utvärdering och tillämpning när programinstallationen initieras av användaren.
# Evaluation Job example: DCMAgentJob({FBB44C84-DB06-41F7-8DC1-D9BA368F0C20}): CDCMAgentJob::PopulateCIsFromAssignment - [SCAN] CI policy Id :ScopeId_C8F7EAE6-DBA8-4970-B3FF-47ED706868DE/RequiredApplication_6b39398b-fd20-47ca-bd68-074274509f98 version:2 - Assignment:{7EA17128-EB4F-448A-88A7-B865E7DA228C} is not mandatory. # Enforcement Job example: CAppMgmtSDK::EnforceAppPolicy ScopeId_C8F7EAE6-DBA8-4970-B3FF-47ED706868DE/RequiredApplication_6b39398b-fd20-47ca-bd68-074274509f98. CDCMAgentJobMgr::CreateInteractiveJob - Queuing new job: {7936D7F3-24B0-401D-BADD-59EB5B49C2C2}
CI-agent
CI Agent är klientkomponenten som ansvarar för utvärdering och reparation av konfigurationsobjekt. DCM-agenten läser tilldelningsprincipen och skapar ett jobb för CI Agent-komponenten för att utföra de begärda åtgärderna. DCMAgent.log registrerar ci-agentens jobb-ID, vilket är användbart för att spåra CI Agent-aktiviteten i CIAgent.log på klienten.
DCMAgentJob({E353BF94-D7ED-4ADD-AF0F-9273F6A67FC1}): CDCMAgent::InitiateCIAgentJob - Starting CI Agent Job {57AF6FA1-3482-4469-9881-A63F41D18406} for target: machine. Refer to this CI agent job ID in ciagent.log for more details
Ett typiskt CI Agent-jobb genomgår flera faser, som kan identifieras genom att filtrera CIAgent.log på CI Agent-jobb-ID:t och sedan leta TransitionState
efter . Några av nyckelfaserna för ett CI Agent-jobb för programdistribution är:
Ladda nedCIs
- Under den här fasen laddas programmetadata som krävs för att utvärdera programmet ned. Metadata omfattar identifieringsmetod, kravregler, globala villkor osv. Den här aktiviteten kan spåras i CIDownloader.log och DataTransferService.log. För Tillgängliga distributioner sker den här processen under den första utvärderingen av programmet. För Nödvändiga distributioner sker dock den här processen omedelbart efter att principen har laddats ned.
AnropaRSdmMethod
- Under den här fasen används programidentifieringsmetoden för att kontrollera om programmet är installerat och önskat tillstånd bestäms. Den här aktiviteten kan spåras i AppDiscovery.log och AppIntentEval.log. Mer information om den här fasen finns i Programutvärdering.
StateDownloadingContents
- Under den här fasen laddas programinnehållet ned om det behövs. Den här aktiviteten kan spåras i CAS.log, ContentTransferManager.log, LocationServices.log och DataTransferService.log. Mer information om den här fasen finns i Programnedladdning.
StateEnforcingCIs
- Under den här fasen initieras programinstallationen. Den här aktiviteten kan spåras i AppEnforce.log. Mer information om den här fasen finns i Programinstallation.
StateEnforcementReporting
- Under den här fasen registreras programinstallationstillståndet för rapportering till hanteringsplatsen. Den här aktiviteten kan spåras i StateMessage.log.
Även om CI Agent-jobbet går igenom alla faser hoppar det över fasen om det inte behövs. För tillgängliga distributioner hoppas till exempel StateDownloadingContents- och StateEnforcingCIs-faserna över tills användaren försöker installera programmet från Software Center. För nödvändiga distributioner hämtar dock StateDownloadingContents-fasen programinnehåll (om det behövs) när tilldelningen aktiveras, men fasen StateEnforcingCIs hoppas över om tidsgränsen är i framtiden. Det här beteendet kan observeras i CIAgent.log genom att filtrera på CI Agent-jobb-ID:t och leta Skipping policy
efter .
{57AF6FA1-3482-4469-9881-A63F41D18406} - Skipping policy CI <CI Unique ID> and all dependents for ContentDownload task since CI action was not requested.
{57AF6FA1-3482-4469-9881-A63F41D18406} - Skipping policy CI <CI Unique ID> and all dependents for Enforce task since CI action was not requested.