3.9. 处理错误
在遇到错误的情况下,软件开发套件使用例外来突出显示它们。除了 Python 解释器本身定义的例外类型外,软件开发套件还定义了异常类型。这些例外位于
ovirtsdk.infrastructure.errors
模块中:
- ConnectionError
- 发生传输层错误时引发。
- DisconnectedError
- 在明确断开连接后尝试使用 SDK 时引发。
- ImmutableError
- 在启动 SDK 时引发,同时同一域下已存在 SDK 实例。适用于 SDK 版本 3.2 或更高版本。
- NoCertificatesError
- 在不提供 CA 时引发,并且 --insecure 为 'False'。
- RequestError
- 出现任何类型的 oVirt 服务器错误。
- UnsecuredConnectionAttemptError
- 在服务器运行 HTTPS 时引发 HTTP 协议。
- MissingParametersError
- 当您试图在不提供 id 或 name 的情况下使用 get ()方法时,会引发。
这些例外可能会捕获,并像任何其他 Python 异常一样处理:
例 3.9. 捕获 ConnectionError
Exception
from ovirtsdk.api import API from ovirtsdk.xml import params try: api = API(url="https://HOST", user="USER, pass="PASS, ca_file="/etc/pki/ovirt-engine/ca.pem") except ConnectionError, err: print "Connection failed: %s" % err