def get_record(record_id, index=None): """ Fetch a given record from ES. :param record_id: [int] ES record id :param index: [string] name of the index. If None a default is used :return: [dict] Fetched record """ try: search = RecordsSearch(using=es, index=index).source(includes="*") result = search.get_record(record_id).execute() if result.hits.total.value > 0: return result.hits[0].to_dict() else: return None except TransportError: return None