关于对EC2相关信息的查询,我们可以通过EC2.Client.describe_instances(**kwargs)这个API实现
然后将其信息,整理输出到Excel表格,形成CMDB资源信息表格
但笔者在代码完成后,遇到有的实例无法输出如 PrivateIpAddress 等相关的信息
最后通过debug调试才发现,非常巧合的一件事,就是那个实例在代码的执行阶段被终止/删除了
因此在对其json输出的字典中,获取如 PrivateIpAddress 信息时,就会有异常,代码在实现时,是理解的每一个实例都会有PrivateIpAddress这个字段的
所以代码异常的最根本的原因就是那台实例的状态为 terminated ,在Console web界面上显示的是 Terminated
然后笔者去查询了一下,关于实例的State状态与Code的说明,如下: