当我在管理控制台中对应用程序进行更改时,我看到此修订号增加了:
如果我点击“内容状态”,我可以看到应用程序的“源版本”,但没有“修订版本”。
在部署了该应用程序的客户端上,我可以看到同一应用程序的以下条目AppEnforce.log
:
“正在为用户执行应用部署类型 XXXXXXXXXXXXX 0.2.1(ScopeId_F51CE1C8-9E1E-4412-8DC0-8870C8D09B93/DeploymentType_7ce08ce1-ddb5-4861-b5eb-d03752c142cb,修订版 22)的检测。”
这一切让我产生以下疑问:
控制台中的“Revision”到底是指什么?它与 中的条目含义相同吗
AppEnforce.log
?是否必须更新分布式内容以便新的“修订”从站点服务器传播到客户端?
SCCM 执行哪些工作来将控制台中的“修订”更改传播到客户端?我可以在服务器日志文件中看到这项工作的成果吗?
AppEnforce.log
为什么有时即使过了很长时间,出现的“修订”仍比控制台中显示的“修订”晚一个增量?
答案1
这就是我从日志中拼凑起来的全部内容。我使用 CMTrace 合并以下日志:AppDiscovery、AppEnforce、AppIntentEval、CAS、ContentTransferManager、DataTransferService
- 在 SCCM 控制台中,“修订”表示 SCCM 内的应用程序修订。AppEnforce日志是应用程序部署类型,我不认为这些应该必然一致,尽管在更简单的应用程序中它们可能一致。
- 内容有效性是独立评估的。如果您强制重新分发内容,我希望内容的修订版本会增加。如果选中“自动更新内容”并确定内容已在服务器上更新,情况也是如此。
- 我认为所有工作都是由客户完成的。 AppIntentEval表明该申请适用,并且应用程序发现确定将使用哪个 ContentID/Revision。这将使客户端轮询服务器以获取信息,而不一定从服务器推送信息。
- 因为 SCCM 需要很长时间才能完成任务?恐怕我无法胜任地回答这个问题。启动客户端任务可能会导致这些评估结果重新回到正轨。
要记住的事情:
AppEnforce.log 并非全部。部署类型修订似乎与应用程序修订不同,后者又与内容修订不同。
查看 AppIntentEval.log。您会看到ScopeId_xxx/DeploymentType_xxx/(revision)
。您还会看到ScopeId_xxx/Application_xxx/(revision)
。这些不是同一个实体。
我认为您的问题的一部分是:“如果修订已过期,客户端如何确定其缓存中的内容仍然有效?” 内容访问日志显示条目,例如"All references to Content Content_xxx in cache have been removed. Content will be Tombstoned.
我怀疑这种机制是如何确定有效性的。