DiamondLightSource / DiamondLightSource/numtracker
Numtracker should provide a helpful error message when the instrument session is bad
- Dominant language
- Rust
- Stars
- 1
- Forks
- 2
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 6
Description
Currently, if an instrument session is typed incorrectly, a very unhelpful error message is given. A few scenarios were tried, including:
- An incorrectly formatted session id (`cm1234-1`): `RuntimeError: Numtracker error: [{'message': 'Authentication failed', 'locations': [{'line': 3, 'column': 5}], 'path': ['scan']}]`
- A correctly formatted but non-existent session id (`cm12345-1`): `RuntimeError: Numtracker error: [{'message': 'Authentication failed', 'locations': [{'line': 3, 'column': 5}], 'path': ['scan']}]`
- An correctly formatted but non-existant session id with the correct proposal number and session number, but incorrect prefix (`sm44191-3`):
- With no file-writing detector: A "successful" task run, with failure to write a nexus file - `{"timestamp":"2026-06-15T08:14:56.496","level":"ERROR","thread":"pool-1-thread-4","logger":"uk.ac.diamond.daq.services.BlueskyNexusFileWriterService","message":"Unable to find File for ScanID 3b700b88-21dd-420d-89e2-281c2ba28d93","context":"default","beamline":"b01-1","application_name":"Document to Nexus Converter"}`
- With a file writing detector: A "failed" task run, with the file-writing detector throwing an error - `.wait_with_error_message at 0x7f8e7808d740>, errored: FileNotFoundError("Path /dls/b01-1/data/2026/sm44191-3/spool/ doesn't exist or not writable!")>`
With respect to the first two errors, it would be good if some indication were given as to what was wrong - i.e. something along the lines of "Instrument session / visit was not recognised"
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.