import json from datetime import datetime, date import decimal def get_kinesis_event(data, table): # This is maxwell's output event format. # this should be same for every table event_format = { "database": "art_relations", "table": table, "type": "update", "ts": datetime.timestamp(datetime.now()), "xid": "", # not sure what should be the value for this "commit": "true", "data": { }, "old": { "date_updated": datetime.now().strftime('%Y-%m-%d %H:%M:%S') } } event_format['data']=cleanup_data(data) return event_format def cleanup_data(data): for k, v in data.items(): if v is None: data[k] = "" if isinstance(v, (datetime, date)): data[k] = v.strftime('%Y-%m-%d %H:%M:%S') if isinstance(v, (decimal.Decimal)): data[k] = float(v) return data