首页 > 解决方案 > 如何使用 TraversalSpec 跟踪新的任务状态变化

问题描述

我正在使用 pyVmomi,我创建了一个 TraversalSpec 来递归通过我想要使用属性收集器监视的对象。

我想知道如何设置 TraversalSpec 和属性收集器来监控新任务。谢谢!

标签: pythonvspherepyvmomi

解决方案


在没有 TraversalSpec 的情况下获得解决方案:

taskFilterSpec = vim.TaskFilterSpec()
task_manager = si.content.taskManager.CreateCollectorForTasks(filter=taskFilterSpec)
pc = si.content.propertyCollector

filterSpec = vmodl.query.PropertyCollector.FilterSpec()

objSpecs = []
objSpec = vmodl.query.PropertyCollector.ObjectSpec(obj=task_manager)
objSpecs.append(objSpec)
filterSpec.objectSet = objSpecs

propSet = []
motype = type(task_manager)
propSpec = vmodl.query.PropertyCollector.PropertySpec(type=motype, all=True)
propSet.append(propSpec)
filterSpec.propSet = propSet

pcFilter = pc.CreateFilter(filterSpec, True)

但我仍然想知道如何处理 TraversalSpec ..


推荐阅读