Skip to content

Registration API

Event Registration

Pipeline to register CHIME/FRB event callback data.

EventRegistrar

Bases: object

Class for data product registration.

__init__

Python
__init__(raw_intensity_base_path='/data/chime/intensity/raw', raw_baseband_base_path='/data/chime/baseband/raw', root_path='/', test_mode=False, site=SITE, verbose=False)

Eventregistrar registers CHIME/FRB's intensity and baseband data.

add_unregistered_event

Python
add_unregistered_event(event_number, data_type, date_captured, action_picker_dataset, reason)

Add a new event to the unregistered events collection for tracking.

delete_unregistered_event

Python
delete_unregistered_event(event_number, data_type)

Delete unregistered event from the tracking database.

dump_payloads

Python
dump_payloads(date, intensity, baseband)

Dump event file registration payloads to local JSON file.

Parameters

date : datetime.datetime Date of the event data. intensity : Dict[int, Any] Intensity event file registration payloads, mapped to event number. baseband : Dict[int, Any] Baseband event file registration payloads, mapped to event number.

Returns

bool True, if file write was successful.

get_event_directories

Python
get_event_directories(dt)

Get directory structure for intensity and baseband events for a given day.

Parameters

dt : datetime.datetime Date from which to construct the directory structure. Assumes event data are stored in /YYYY/MM/DD/.

Returns

Tuple[str, str] Full paths to intensity and baseband event data, respectively.

get_event_files

Python
get_event_files(paths)

Get a list of all event files for all events.

Parameters

paths : List[str] List of paths to event folders.

Returns

Dict[int, List[str]] Mapping of event number to all event files for that event.

get_event_paths

Python
get_event_paths(path)

Get all event folder paths.

Parameters

path : str Full path to the event folder.

Returns

Dict[int, str] Paths to event folders, mapped to event number.

get_md5sum

Python
get_md5sum(file)

Try to read the MD5SUM for a file from the MD5SUMS file.

Parameters

file : str Event file full path.

Returns

str MD5SUM value if it is found, else None.

get_registration_payloads

Python
get_registration_payloads(files)

Get a list of all file payloads ready for registration.

Parameters

files : Dict[int, List[str]] List of all file full paths for all events, mapped to event number.

Returns

Dict[int, List[Dict[str, Any]]] List of payloads complete with all required registration fields, mapped to event number.

query_action_picker_dataset

Python
query_action_picker_dataset(event_numbers, data_type)

Query the L4 action picker database to get the dataset name.

query_last_completed_date

Python
query_last_completed_date()

Get the last completed date from the tracking db.

query_tsar_verification

Python
query_tsar_verification(event_number)

Fetch tsar verification from frb-master's verifications.

query_unregistered_events

Python
query_unregistered_events()

Query previously unregiistered events from the tracking database.

register_date

Python
register_date(date, dry_run=True)

Register events for the given date.

register_event

Python
register_event(event_number, data_type, files, attach_to_dataset)

Register event into the datatrail database.

register_payloads

Python
register_payloads(date, intensity_file_payloads, baseband_file_payloads, intensity_action_dataset, baseband_action_dataset, dry_run)

Helper function to register payloads for a gien list of events.

register_unregistered_events

Python
register_unregistered_events(dry_run=True)

Register backlog of unregistered into datatrail.

run

Python
run(dry_run=True, run_until=None, register_single_date=None)

Run the registration system.

update_last_successful_date

Python
update_last_successful_date(t)

Update the last completed date after registering all events.

validate_filename

Python
validate_filename(filename)

Validate that the file name is an intensity or baseband file name.

Parameters

filename : str File name to check.

Returns

bool True only if the file name is recognized.