Skip to content

Commit fbf2f92

Browse files
committed
fix: Add ssm exception for collect.
Signed-off-by: mz-ko <[email protected]>
1 parent e374e5b commit fbf2f92

File tree

1 file changed

+35
-29
lines changed

1 file changed

+35
-29
lines changed

src/plugin/connector/ec2/instance_connector.py

Lines changed: 35 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
from spaceone.core.error import ERROR_REQUIRED_PARAMETER
33

44
from plugin.conf.cloud_service_conf import *
5-
from plugin.connector.base import ResourceConnector
5+
from plugin.connector.base import ResourceConnector, _LOGGER
66

77

88
class InstanceConnector(ResourceConnector):
@@ -224,35 +224,41 @@ def _generate_query(is_paginate=False, **query):
224224
def describe_instance_information(self, instances, **query) -> dict:
225225
instance_information = {}
226226

227-
for i in range(0, len(instances), 100):
228-
instances_chunk = instances[i : i + 100]
229-
query = self._generate_query(is_paginate=True, **query)
230-
query.update(
231-
{
232-
"Filters": [
233-
{
234-
"Key": "InstanceIds",
235-
"Values": self._get_instance_ids_from_instance(
236-
instances_chunk
237-
),
238-
},
239-
]
240-
}
241-
)
242-
paginator = self.ssm_client.get_paginator("describe_instance_information")
243-
response_iterator = paginator.paginate(**query)
244-
245-
for data in response_iterator:
246-
for instance in data.get("InstanceInformationList", []):
247-
instance_information.update(
248-
{
249-
instance.get("InstanceId"): {
250-
"platform_type": instance.get("PlatformType"),
251-
"platform_name": instance.get("PlatformName"),
252-
"platform_version": instance.get("PlatformVersion"),
227+
try:
228+
for i in range(0, len(instances), 100):
229+
instances_chunk = instances[i : i + 100]
230+
query = self._generate_query(is_paginate=True, **query)
231+
query.update(
232+
{
233+
"Filters": [
234+
{
235+
"Key": "InstanceIds",
236+
"Values": self._get_instance_ids_from_instance(
237+
instances_chunk
238+
),
239+
},
240+
]
241+
}
242+
)
243+
paginator = self.ssm_client.get_paginator(
244+
"describe_instance_information"
245+
)
246+
response_iterator = paginator.paginate(**query)
247+
248+
for data in response_iterator:
249+
for instance in data.get("InstanceInformationList", []):
250+
instance_information.update(
251+
{
252+
instance.get("InstanceId"): {
253+
"platform_type": instance.get("PlatformType"),
254+
"platform_name": instance.get("PlatformName"),
255+
"platform_version": instance.get("PlatformVersion"),
256+
}
253257
}
254-
}
255-
)
258+
)
259+
except Exception as e:
260+
_LOGGER.error(f"[instance_information] {e}")
261+
instance_information = {}
256262

257263
return instance_information
258264

0 commit comments

Comments
 (0)