Очень поздно к этому посту, но я недавно столкнулся с этим. Я предполагаю, что вы сравниваете даты вручную/на глаз с программным сравнением объектов datetime. Или вы отлаживаете и просто хотите увидеть дату/время в объектах json в удобочитаемом формате.
Я обнаружил, что преобразователь в aws ага образцы работают очень хорошо.
def myconverter(json_object):
if isinstance(json_object, datetime.datetime):
return json_object.__str__()
Оттуда вы можете просто передать исходное событие/сообщение из boto в json.dump и вернуть преобразованную строку json.
In [34]: print(json_msg)
{'arn': 'arn:aws:service:region::X', 'service': 'SERVICE', 'eventTypeCode': 'SOME_CODE', 'eventTypeCategory': 'CAT', 'eventScopeCode': 'SCOPE', 'region': 'us-east-1', 'startTime': datetime.datetime(YYYY, MM, DD, HH, MM, tzinfo=tzlocal()), 'endTime': datetime.datetime(YYYY, MM, DD, HH, MM, tzinfo=tzlocal()), 'lastUpdatedTime': datetime.datetime(YYYY, MM, DD, HH, MM, SS, tzinfo=tzlocal()), 'statusCode': 'CODE' }
In [35]: json_msg = json.dumps(json_event, default=myconverter)
In [36]: print(json_event)
{'arn': 'arn:aws:service:region::X', 'service': 'SERVICE', 'eventTypeCode': 'SOME_CODE', 'eventTypeCategory': 'CAT', 'eventScopeCode': 'SCOPE', 'region': 'us-east-1', 'startTime': "YYYY-MM-DD HH:MM:SS-OH:OS", 'endTime': "YYYY-MM-DD HH:MM:SS-OH:OS", 'lastUpdatedTime': "YYYY-MM-DD HH:MM:SS-OH:OS" , 'statusCode': 'CODE' }
person
Lookcrabs
schedule
19.05.2021