Principy klientských komponent nasazení aplikací
Platí pro: Configuration Manager (Current Branch)
Operace vyhodnocení a vynucování nasazení aplikace zajišťují komponenty agenta DCM a agenta CI v klientovi. Tento článek vysvětluje, jak funguje typická úloha DCM a agenta CI.
DCM Agent
Agent DCM je klientská komponenta vysoké úrovně zodpovědná za vyhodnocení položek konfigurace, které zahrnuje aplikace. Při aktivaci nebo vynucení nasazení se vytvoří úloha agenta DCM, která přečte zásady přiřazení a určí akce, které je potřeba provést. Tuto aktivitu je možné sledovat v souboru DCMAgent.log na klientovi pomocí ID úlohy agenta DCM, které lze identifikovat vyhledáním jedinečného ID aplikace.
Nasazení zařízení
V případě povinných nasazení se v souboru DCMAgent.log zobrazí příslušné akce. Tyto akce se můžou lišit v závislosti na tom, jestli už vypršel konečný termín nasazení.
# 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
V části Dostupná nasazení ukazuje dcmAgent.log, že nasazení
is not mandatory
. U těchto nasazení se vyhodnocení aplikace provede, ale vynucování se přeskočí, pokud uživatel instalaci nezahají.# 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}
Uživatelská nasazení
V případě povinných nasazení se v souboru DCMAgent.log zobrazí příslušné akce. Tyto akce se můžou lišit v závislosti na tom, jestli už vypršel konečný termín nasazení.
# 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
V případě dostupných nasazení se úlohy agenta DCM vytvářejí pro vyhodnocení a vynucení, když instalaci aplikace inicializoval uživatel.
# 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
Agent CI je klientská komponenta zodpovědná za vyhodnocení a nápravu položek konfigurace. Agent DCM přečte zásady přiřazení a vytvoří pro komponentu agenta CI úlohu, která provede požadované akce. DCMAgent.log zaznamenává ID úlohy agenta CI, což je užitečné pro sledování aktivity agenta CI v souboru CIAgent.log na klientovi.
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
Typická úloha agenta CI prochází několika fázemi, které lze identifikovat filtrováním SOUBORU CIAgent.log v ID úlohy agenta CI a následným vyhledáním TransitionState
. Mezi klíčové fáze úlohy agenta CI nasazení aplikace patří:
Stahují se instance
- Během této fáze se stáhnou metadata aplikace potřebná k vyhodnocení aplikace. Metadata zahrnují metodu detekce, pravidla požadavků, globální podmínky atd. Tuto aktivitu je možné sledovat v CIDownloader.log a DataTransferService.log. U dostupných nasazení tento proces probíhá během prvního vyhodnocení aplikace. V případě povinných nasazení však tento proces probíhá okamžitě po stažení zásady.
VyvoláníSdmMethod
- Během této fáze se metoda detekce aplikace používá ke kontrole, jestli je aplikace nainstalována a zda je určen požadovaný stav. Tuto aktivitu je možné sledovat v souborech AppDiscovery.log a AppIntentEval.log. Další informace o této fázi najdete v tématu Vyhodnocení aplikací.
StateDownloadingContents
- Během této fáze se v případě potřeby stáhne obsah aplikace. Tuto aktivitu je možné sledovat v souborech CAS.log, ContentTransferManager.log, LocationServices.log a DataTransferService.log. Další informace o této fázi najdete v tématu Stažení aplikace.
Instance StateEnforcing
- Během této fáze se zahájí instalace aplikace. Tuto aktivitu je možné sledovat v souboru AppEnforce.log. Další informace o této fázi najdete v tématu Instalace aplikace.
StateEnforcementReporting
- Během této fáze se zaznamená stav instalace aplikace pro hlášení do bodu správy. Tuto aktivitu je možné sledovat v souboru StateMessage.log.
I když úloha agenta CI prochází všemi fázemi, přeskočí fázi, pokud není nutná. Například u dostupných nasazení se fáze StateDownloadingContents a StateEnforcingCi přeskočí, dokud se uživatel nepokusí nainstalovat aplikaci z Centra softwaru. U povinných nasazení však fáze StateDownloadingContents stáhne obsah aplikace (v případě potřeby) při aktivaci přiřazení, ale fáze StateEnforcingCIs se přeskočí, pokud je konečný termín v budoucnosti. Toto chování lze pozorovat v protokolu CIAgent.log filtrováním PODLE ID úlohy agenta CI a vyhledáním Skipping policy
.
{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.